nimbus (1.2.4) | 2018-01-25 20:02 |
nimbus-sample (1.2.4) | 2018-01-26 17:06 |
jp.ossc.nimbus.service.publish.GroupClientConnectionFactoryServiceは、物理的に複数の接続を論理的には1つの接続に集約させて受信を簡易化させるClientConnectionFactory実装サービスです。
このサービスは、物理的な通信を司るClientConnectionFactory実装サービスを複数使用して、それぞれのClientConnectionを取得し、それらをまとめてラップしたClientConnectionを提供するサービスです。そのため、このサービスとは別に、実体となるClientConnectionFactory実装サービスが複数必要となります。
このサービスは、受信側サーバに定義します。
そのため、受信側のアプリケーションは、このサービスを取得して、ClientConnectionFactoryとして使用できます。
このサービスは、複合的なサービスで、以下のサービスを下位サービスとして使用します。
下位サービスインタフェース | 用途 |
jp.ossc.nimbus.service.publish.ClientConnectionFactory | 物理的な通信を司るClientConnectionFactoryとして使用する。 |
jp.ossc.nimbus.service.repository.Repository | JNDIサーバからClientConnectionFactoryのリモートオブジェクトをlookupするために使用する。 |
以下に簡単なサービス定義を示します。
- <?xml version="1.0" encoding="Shift_JIS"?>
- <!DOCTYPE server PUBLIC
- "-//Nimbus//DTD Nimbus 1.0//JA"
- "http://nimbus.sourceforge.jp/dtd/nimbus-service_1_0.dtd">
- <server>
- <manager>
- <!-- グループコネクションファクトリサービス -->
- <service name="ConnectionFactory"
- code="jp.ossc.nimbus.service.publish.GroupClientConnectionFactoryService">
- <!-- クライアントコネクションファクトリをlookupするRMIサーバリポジトリサービスを設定する -->
- <attribute name="JndiRepositoryServiceName">#RMIRepository</attribute>
- <!-- サブジェクト hoge への配信を行うコネクションファクトリを設定する -->
- <invoke name="addSubjectMapping">
- <argument>
- <object code="jp.ossc.nimbus.service.publish.GroupClientConnectionFactoryService$SubjectMapping">
- <!-- 関連付けるサブジェクトを設定する -->
- <attribute name="Subject">hoge</attribute>
- <!-- クライアントコネクションファクトリを設定する -->
- <attribute name="ClientConnectionFactoryJndiName">publish/ClientConnectionFactory1</attribute>
- </object>
- </argument>
- </invoke>
- <!-- サブジェクト fuga への配信を行うコネクションファクトリを設定する -->
- <invoke name="addSubjectMapping">
- <argument>
- <object code="jp.ossc.nimbus.service.publish.GroupClientConnectionFactoryService$SubjectMapping">
- <!-- 関連付けるサブジェクトを設定する -->
- <attribute name="Subject">fuga</attribute>
- <!-- クライアントコネクションファクトリを設定する -->
- <attribute name="ClientConnectionFactoryJndiName">publish/ClientConnectionFactory2</attribute>
- </object>
- </argument>
- </invoke>
- <depends>RMIRepository</depends>
- </service>
- <!-- RMIサーバからlookupするリポジトリサービス -->
- <service name="RMIRepository"
- code="jp.ossc.nimbus.service.repository.RMIRepositoryService">
- <attribute name="HostName">192.168.1.15</attribute>
- <attribute name="Port">1099</attribute>
- </service>
- </manager>
- </server>