クラス AbstractRoutingConnectionFactory
- 実装されているすべてのインターフェース:
ConnectionFactory,InitializingBean
create() 呼び出しをさまざまなターゲットファクトリの 1 つにルーティングする抽象 ConnectionFactory 実装。後者は通常 (必ずではありませんが)、サブスクライバーのコンテキストから決定されます。 デフォルトのターゲット ConnectionFactory をフォールバックとして構成できます。
getMetadata() の呼び出しは、構成されている場合、default ConnectionFactory にルーティングされます。
- 導入:
- 5.3
- 作成者:
- Mark Paluch, Jens Schauder
- 関連事項:
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明voidinitialize()へのデリゲート。reactor.core.publisher.Mono<Connection>create()protected abstract reactor.core.publisher.Mono<ObjectSE>現在の検索キーを決定します。protected reactor.core.publisher.Mono<ConnectionFactory>現在のターゲットConnectionFactoryを取得します。void構成されたターゲット ConnectionFactories を解決することで、このAbstractRoutingConnectionFactoryの内部状態を初期化します。protected ConnectionFactoryresolveSpecifiedConnectionFactory(ObjectSE connectionFactory) 指定された接続ファクトリオブジェクトをConnectionFactoryインスタンスに解決します。protected ObjectSEresolveSpecifiedLookupKey(ObjectSE lookupKey) targetConnectionFactoriesマップで指定されているように、指定されたルックアップキーオブジェクトを、current lookup keyとのマッチングに使用される実際のルックアップキーに解決します。voidsetConnectionFactoryLookup(ConnectionFactoryLookup connectionFactoryLookup) targetConnectionFactoriesマップの接続ファクトリ名ストリングの解決に使用するConnectionFactoryLookup実装を設定します。voidsetDefaultTargetConnectionFactory(ObjectSE defaultTargetConnectionFactory) デフォルトのターゲットConnectionFactoryを指定します(存在する場合)。voidsetLenientFallback(boolean lenientFallback) 現在のルックアップキーに対して特定のConnectionFactoryが見つからなかった場合、デフォルトのConnectionFactoryに寛大なフォールバックを適用するかどうかを指定します。voidsetTargetConnectionFactories(MapSE<?, ?> targetConnectionFactories) キーとしてルックアップキーを使用して、ターゲットConnectionFactoriesのマップを指定します。
コンストラクターの詳細
AbstractRoutingConnectionFactory
public AbstractRoutingConnectionFactory()
メソッドの詳細
setTargetConnectionFactories
キーとしてルックアップキーを使用して、ターゲットConnectionFactoriesのマップを指定します。マップされた値は、対応するConnectionFactoryインスタンスまたは接続ファクトリ名ストリング(ConnectionFactoryLookupを介して解決される)のいずれかです。キーは任意の型にすることができます。このクラスは、汎用ルックアッププロセスのみを実装します。具体的なキー表現は、
resolveSpecifiedLookupKey(Object)およびdetermineCurrentLookupKey()によって処理されます。setDefaultTargetConnectionFactory
デフォルトのターゲットConnectionFactoryを指定します(存在する場合)。マップされた値は、対応する
ConnectionFactoryインスタンスまたは接続ファクトリ名StringSE(ConnectionFactoryLookupを介して解決される)のいずれかです。キー設定された
targetConnectionFactoriesのいずれもcurrent lookup keyと一致しない場合、このConnectionFactoryがターゲットとして使用されます。setLenientFallback
public void setLenientFallback(boolean lenientFallback) 現在のルックアップキーに対して特定のConnectionFactoryが見つからなかった場合、デフォルトのConnectionFactoryに寛大なフォールバックを適用するかどうかを指定します。デフォルトは
trueで、ターゲットConnectionFactoryマップに対応するエントリがないルックアップキーを受け入れます。その場合は、デフォルトのConnectionFactoryにフォールバックするだけです。ルックアップキーが発行されていない場合にのみフォールバックを適用する場合は、このフラグを
falseに切り替えます。ConnectionFactoryエントリのないルックアップキーは、IllegalStateExceptionSE につながります。setConnectionFactoryLookup
targetConnectionFactoriesマップの接続ファクトリ名ストリングの解決に使用するConnectionFactoryLookup実装を設定します。afterPropertiesSet
public void afterPropertiesSet()initialize()へのデリゲート。- 次で指定:
- インターフェース
InitializingBeanのafterPropertiesSet
initialize
public void initialize()構成されたターゲット ConnectionFactories を解決することで、このAbstractRoutingConnectionFactoryの内部状態を初期化します。- 例外:
IllegalArgumentExceptionSE- ターゲット ConnectionFactories が設定されていない場合- 導入:
- 6.1
- 関連事項:
resolveSpecifiedLookupKey
targetConnectionFactoriesマップで指定されているように、指定されたルックアップキーオブジェクトを、current lookup keyとのマッチングに使用される実際のルックアップキーに解決します。デフォルトの実装は、指定されたキーをそのまま返すだけです。
- パラメーター:
lookupKey- ユーザーが指定したルックアップキーオブジェクト- 戻り値:
- 照合に必要な検索キー。
resolveSpecifiedConnectionFactory
protected ConnectionFactory resolveSpecifiedConnectionFactory(ObjectSE connectionFactory) throws IllegalArgumentExceptionSE 指定された接続ファクトリオブジェクトをConnectionFactoryインスタンスに解決します。デフォルトの実装は、
ConnectionFactoryインスタンスと接続ファクトリ名を処理します(ConnectionFactoryLookupを介して解決されます)。- パラメーター:
connectionFactory-targetConnectionFactoriesマップで指定されている接続ファクトリ値オブジェクト- 戻り値:
- 解決された
ConnectionFactory(非null) - 例外:
IllegalArgumentExceptionSE- サポートされていない値型の場合
create
- 次で指定:
- インターフェース
ConnectionFactoryのcreate
getMetadata
- 次で指定:
- インターフェース
ConnectionFactoryのgetMetadata
determineTargetConnectionFactory
現在のターゲットConnectionFactoryを取得します。current lookup keyを決定し、targetConnectionFactoriesマップで検索を実行し、必要に応じて指定されたdefault target ConnectionFactoryにフォールバックします。- 戻り値:
-
determineCurrentLookupKey()に従って現在のConnectionFactoryを発行するMono - 関連事項:
determineCurrentLookupKey
現在の検索キーを決定します。これは通常、サブスクライバコンテキストをチェックするために実装されます。任意のキーを許可します。返されるキーは、resolveSpecifiedLookupKey(java.lang.Object)メソッドによって解決されるように、保存されているルックアップキー型と一致する必要があります。- 戻り値:
- ルックアップキーを発行する
Mono。使用可能なルックアップキーがない場合、値を発行せずに完了する可能性があります