クラス AbstractRoutingConnectionFactory

java.lang.ObjectSE
org.springframework.amqp.rabbit.connection.AbstractRoutingConnectionFactory
実装済みのインターフェース一覧:
ConnectionFactory, RoutingConnectionFactory, DisposableBean, InitializingBean
既知の直属サブクラス
SimpleRoutingConnectionFactory

public abstract class AbstractRoutingConnectionFactory extends ObjectSE implements ConnectionFactory, RoutingConnectionFactory, InitializingBean, DisposableBean
ルックアップキーに基づいて、createConnection() 呼び出しをさまざまなターゲット ConnectionFactories の 1 つにルーティングする抽象 ConnectionFactory 実装。後者は、通常 (必ずしもそうとは限りませんが) スレッドにバインドされたコンテキストによって決定されます。
導入:
1.3
作成者:
Artem Bilan, Josh Chappelle, Gary Russell, Leonardo Ferreira, Ngoc Nhan
  • コンストラクターの詳細

    • AbstractRoutingConnectionFactory

      public AbstractRoutingConnectionFactory()
  • 方法の詳細

    • setTargetConnectionFactories

      public void setTargetConnectionFactories(MapSE<ObjectSE, ConnectionFactory> targetConnectionFactories)
      検索キーをキーとして、ターゲット ConnectionFactories のマップを指定します。

      キーは任意の型にすることができます。このクラスは、一般的なルックアッププロセスのみを実装します。具体的なキー表現は determineCurrentLookupKey() によって処理されます。

      パラメーター:
      targetConnectionFactories - ターゲット接続ファクトリとルックアップキー。
    • setDefaultTargetConnectionFactory

      public void setDefaultTargetConnectionFactory(ConnectionFactory defaultTargetConnectionFactory)
      デフォルトのターゲット ConnectionFactory を指定します(存在する場合)。

      この ConnectionFactory は、キー付き targetConnectionFactories のいずれも determineCurrentLookupKey() の現在のルックアップキーと一致しない場合にターゲットとして使用されます。

      パラメーター:
      defaultTargetConnectionFactory - デフォルトのターゲット接続ファクトリ。
    • setLenientFallback

      public void setLenientFallback(boolean lenientFallback)
      現在のルックアップキーに対して特定の ConnectionFactory が見つからなかった場合、デフォルトの ConnectionFactory に寛大なフォールバックを適用するかどうかを指定します。

      デフォルトは "true" で、targetConnectionFactories に対応するエントリがないルックアップキーを受け入れます。その場合、単にデフォルトの ConnectionFactory にフォールバックします。

      ルックアップキーが null の場合にのみフォールバックを適用する場合は、このフラグを "false" に切り替えます。ConnectionFactory エントリのない検索キーは、IllegalStateExceptionSE につながります。

      パラメーター:
      lenientFallback - 指定されている場合、デフォルトにフォールバックする場合は true。
      関連事項:
    • isLenientFallback

      public boolean isLenientFallback()
    • isPublisherConfirms

      public boolean isPublisherConfirms()
      インターフェースからコピーされた説明: ConnectionFactory
      パブリッシャーの確認が有効になっている場合は true を返します。
      次で指定:
      インターフェース ConnectionFactory 内の isPublisherConfirms 
      戻り値:
      publisherConfirms.
    • isPublisherReturns

      public boolean isPublisherReturns()
      インターフェースからコピーされた説明: ConnectionFactory
      パブリッシャーの return が有効になっている場合は true を返します。
      次で指定:
      インターフェース ConnectionFactory 内の isPublisherReturns 
      戻り値:
      publisherReturns.
    • afterPropertiesSet

      public void afterPropertiesSet() throws ExceptionSE
      次で指定:
      インターフェース InitializingBean 内の afterPropertiesSet 
      例外:
      ExceptionSE
    • createConnection

      public Connection createConnection() throws AmqpException
      次で指定:
      インターフェース ConnectionFactory 内の createConnection 
      例外:
      AmqpException
    • determineTargetConnectionFactory

      protected ConnectionFactory determineTargetConnectionFactory()
      現在のターゲット ConnectionFactory を取得します。current lookup key を決定し、targetConnectionFactories マップでルックアップを実行し、必要に応じて指定された defaultTargetConnectionFactory にフォールバックします。
      戻り値:
      接続ファクトリ。
      関連事項:
    • addConnectionListener

      public void addConnectionListener(ConnectionListener listener)
      次で指定:
      インターフェース ConnectionFactory 内の addConnectionListener 
    • removeConnectionListener

      public boolean removeConnectionListener(ConnectionListener listener)
      次で指定:
      インターフェース ConnectionFactory 内の removeConnectionListener 
    • clearConnectionListeners

      public void clearConnectionListeners()
      次で指定:
      インターフェース ConnectionFactory 内の clearConnectionListeners 
    • getHost

      public @Nullable StringSE getHost()
      次で指定:
      インターフェース ConnectionFactory 内の getHost 
    • getPort

      public int getPort()
      次で指定:
      インターフェース ConnectionFactory 内の getPort 
    • getVirtualHost

      public StringSE getVirtualHost()
      次で指定:
      インターフェース ConnectionFactory 内の getVirtualHost 
    • getUsername

      public StringSE getUsername()
      次で指定:
      インターフェース ConnectionFactory 内の getUsername 
    • getTargetConnectionFactory

      public @Nullable ConnectionFactory getTargetConnectionFactory(ObjectSE key)
      インターフェースからコピーされた説明: RoutingConnectionFactory
      指定されたルックアップキーにバインドされた ConnectionFactory を返します。存在しない場合は null を返します。
      次で指定:
      インターフェース RoutingConnectionFactory 内の getTargetConnectionFactory 
      パラメーター:
      key - ConnectionFactory がバインドされている検索キー
      戻り値:
      指定された検索キーにバインドされた ConnectionFactory、または存在しない場合は null
    • setConsistentConfirmsReturns

      public void setConsistentConfirmsReturns(boolean consistentConfirmsReturns)
      すべての ConnectionFactory.isPublisherConfirms() および ConnectionFactory.isPublisherReturns() が一貫した値を持つことを強制する検証を適用するかどうかを指定します。

      一貫した値とは、すべての ConnectionFactories がすべての ConnectionFactory.isPublisherConfirms() 間で同じ値を持ち、すべての ConnectionFactory.isPublisherReturns() 間で同じ値を持つ必要があることを意味します。

      いずれの場合も、ConnectionFactory.isPublisherConfirms() と ConnectionFactory.isPublisherReturns() の間の値が互いに等しい必要はないことに注意してください。

      パラメーター:
      consistentConfirmsReturns - 検証する場合は true、検証しない場合は false。
      導入:
      2.4.4
    • addTargetConnectionFactory

      protected void addTargetConnectionFactory(ObjectSE key, ConnectionFactory connectionFactory)
      指定された ConnectionFactory を追加し、指定されたルックアップキーに関連付けます。
      パラメーター:
      key - ルックアップキー。
      connectionFactory - ConnectionFactory
    • removeTargetConnectionFactory

      protected @Nullable ConnectionFactory removeTargetConnectionFactory(ObjectSE key)
      指定された検索キーに関連付けられた ConnectionFactory を削除して返します。
      パラメーター:
      key - 検索キー
      戻り値:
      削除された ConnectionFactory、またはキーに対応するものが存在しない場合は null 
    • determineCurrentLookupKey

      protected abstract @Nullable ObjectSE determineCurrentLookupKey()
      現在の検索キーを決定します。これは通常、スレッドにバインドされたコンテキストをチェックするために実装されます。
      戻り値:
      検索キー。
    • destroy

      public void destroy()
      次で指定:
      インターフェース DisposableBean 内の destroy 
    • resetConnection

      public void resetConnection()
      インターフェースからコピーされた説明: ConnectionFactory
      このファクトリによってキャッシュされている可能性のある接続をすべて閉じます。これは、新しい接続が開かれるのを妨げません。
      次で指定:
      インターフェース ConnectionFactory 内の resetConnection