Flex Gateway新着情報
Governance新着情報
Monitoring API Managerすべてのモジュールは、モジュールの API の一部である型のセットを宣言できます。この型のセットは、元のモジュールの名前空間の定義を維持したままで、他のモジュールにインポートできます。
他のモジュールからの型のインポートは、多くの場合で役に立ちます。一例を挙げます。
特定の認証方法など、型内にバンドルされたロジックを再利用する。
同じプロパティの設定用に同じ API をユーザーに公開する。たとえば、同じパラメーターを同じ順序で、同じ記述で設定する場合は、異なるモジュールで同じ型を使用することで実現できます。
モジュールの型は 3 ステップで再利用できます。
pom.xml
内の連動関係を、API を使用する mule-plugin
に追加します。
<dependency>
<groupId>org.mule.connectors</groupId>
<artifactId>mule-sockets-connector</artifactId> (1)
<version>${muleSocketsConnectorVersion}</version>
<classifier>mule-plugin</classifier> (2)
</dependency>
1 | 型が宣言されているモジュール |
2 | mule-plugin 分類子を忘れずに連動関係に追加すること |
インポートする型を参照している Extension クラスで @Import
を宣言します。
@Extension(name = "HTTP")
@Import(type = TcpClientSocketProperties.class)
@Import(type = TcpServerSocketProperties.class)
public class HttpConnector {
}
パラメーター宣言で型を使用します。
@Alias("request")
public class HttpRequesterProvider implements CachedConnectionProvider<HttpExtensionClient> {
@Parameter
private TcpClientSocketProperties clientSocketProperties;
}
これによって DSL 宣言がどのように変わるかに注意してください。拡張 (この例では http
) が別の名前空間 (この例では sockets
) で宣言されたパラメーターを受け取ることができるようになりました。
<http:request-connection>
<http:client-socket-properties>
<sockets:tcp-client-socket-properties connectionTimeout="1000" keepAlive="true" receiveBufferSize="1024"/>
</http:client-socket-properties>
</http:request-connection>