Eclipse RCPについて知りたいのですが、基本的な知識はありますが、EclipseRCPの機能についてもっと知りたいと思いました。そこで、一連の要件を作成して分析し、基本フレームワークとしてEclipse RCPを使用してそれらをどのように満たすことができるかについて設計上の決定を下し、最終的にEclipseRCPでそれらを実装することを自分自身に勧めました。さて、要件が厳しすぎるか、Eclipse RCPについてまだよく理解していないので、要件を満たすための適切なソリューションを考え出すのに苦労しています。
以下は要件の要約です(詳細が不足している可能性があります。これは実際には自分自身を励ますための単なる例です)。
一部のサーバーを監視するためのEclipseRCPアプリケーションが必要でした。これらのサーバーは、最初はアプリケーションが認識しているプログラムになります(つまり、サーバーのインとアウトを正確に認識しています)。ただし、将来的には、アプリケーションは、ユーザーが監視するアプリケーションの特性が異なる任意のプログラムを指定できるようにする必要があります(つまり、既知のサーバーだけでなく、以前は知らなかった他のサーバーも)。アプリケーションには、監視する必要のあるサーバーのすべての詳細(ホスト、ポート、ユーザー名、パスワードなど)を含むXML構成ファイルも必要です。このXML構成ファイルは、JAXBを使用してエンコードおよびデコードされます。
したがって、上記の要件に基づいて、次の詳細を考え出しました。
XMLは次のようになります。
<configuration>
<components>
<serverA>
<host></host>
<port></port>
<username></username>
<password></password>
</serverA>
<serverB>
<host></host>
<port></port>
<username></username>
<password></password>
</serverB>
<!--- this will be the place for other components specified by user -->
</components>
</configuration>
アプリケーションが認識しているサーバーはどこにありますか。
ソースコードには、次のクラスの階層があります。
コンポーネント<---サーバー<---ServerA、ServerB
ServerAとServerBは、Serverの子孫であり、それぞれと要素にマップされます。
構成のポイントエントリは、ServerAのリストとServerBのリストを含むConfigurationというクラスにあります。これで、アプリケーションは認識していない他のプログラムを監視できるはずなので、XML構成ファイルも拡張可能である必要があります。したがって、Configurationクラスには、ユーザーが指定した他のコンポーネントにマップするObjectのリストも含まれます。構成ファイル。
Configuration.java
public class Configuration
{
@XmlElement
private List<ServerA> serveras;
@XmlElement
private List<ServerB> serverbs;
@XmlAnyElement
private List<Object> otherServers;
}
さて、これはあなたたちが問題に取り組むためにも行うことですか?私は、ユーザーが指定した他のプログラムをアプリケーションが監視できるようにするための要件について混乱しているだけだと思います。そもそも設定したことは知っていますが、「これはEclipse RCPの拡張ポイントを利用できるもののようです」ということを念頭に置いて設定しましたが、設定ファイルに飛び込んだので、どうすればいいのかわかりません。構成ファイルはplugin.xmlに関連していますか?
頭の中で、アプリケーションが監視する必要のあるプログラムの詳細(ホスト、ポート、ユーザー名、およびパスワード)を構成ファイルで指定する必要がありました。plugin.xmlは、アプリケーションが監視する必要のあるユーザー定義プログラムの拡張ポイントと拡張機能を指定するために使用されます。つまり、最終的に、ユーザー定義プログラムの場合、ユーザーはそれらをplugin.xmlで拡張機能として構成し、構成ファイルで他の詳細を指定する必要があるということですか?