クラス DelegatingConnectionFactory

java.lang.ObjectSE
org.springframework.jms.connection.DelegatingConnectionFactory
実装されているすべてのインターフェース:
jakarta.jms.ConnectionFactory, jakarta.jms.QueueConnectionFactory, jakarta.jms.TopicConnectionFactory, InitializingBean, SmartConnectionFactory

public class DelegatingConnectionFactory extends ObjectSE implements SmartConnectionFactory, jakarta.jms.QueueConnectionFactory, jakarta.jms.TopicConnectionFactory, InitializingBean
すべての呼び出しを特定のターゲット ConnectionFactory に委譲し、必要に応じて特定の create(Queue/Topic)Connection 呼び出しをターゲット ConnectionFactory に適合させる ConnectionFactory 実装 (たとえば、ActiveMQ の PooledConnectionFactory などの汎用 JMS 1.1 ConnectionFactory に対して JMS 1.0.2 API ベースのコードを実行する場合)。

Spring Framework 5 の時点で、このクラスは JMS 2.0 JMSContext 呼び出しをサポートしているため、実行時に JMS 2.0 API が存在する必要があります。それでも、アプリケーションのセットアップによって実際の JMS 2.0 呼び出しがトリガーされない限り、JMS 1.1 ドライバー(JMS 2.0 API にバインドされている)に対して実行できます。

このクラスを使用すると、サブクラスを作成できます。サブクラスは、単にターゲット ConnectionFactory に委譲すべきではないメソッド(createConnection() など)のみをオーバーライドします。

特定のターゲット ConnectionFactory をラップして、そのまま定義することもできます。"shouldStopConnections" フラグを使用して、ターゲットファクトリから取得した接続が閉じられる前に停止されるかどうかを示します。後者は、解放された接続をプールに返すだけで、プール内にある接続を停止しない一部の接続プールで必要になる場合があります。

導入:
2.0.2
作成者:
Juergen Hoeller
関連事項:
  • コンストラクターの詳細

    • DelegatingConnectionFactory

      public DelegatingConnectionFactory()
  • メソッドの詳細

    • setTargetConnectionFactory

      public void setTargetConnectionFactory(@Nullable jakarta.jms.ConnectionFactory targetConnectionFactory)
      この ConnectionFactory が委譲するターゲット ConnectionFactory を設定します。
    • getTargetConnectionFactory

      public @Nullable jakarta.jms.ConnectionFactory getTargetConnectionFactory()
      この ConnectionFactory が委譲するターゲット ConnectionFactory を返します。
    • setShouldStopConnections

      public void setShouldStopConnections(boolean shouldStopConnections)
      ターゲットファクトリから取得した接続を閉じる前に停止する( "true" )か、単に閉じる( "false" )かを指定します。プール内にある接続を停止せずに、解放された接続を単純にプールに返す接続プールでは、追加の停止呼び出しが必要になる場合があります。

      デフォルトは "false" で、単に Connections を閉じます。

      関連事項:
    • afterPropertiesSet

      public void afterPropertiesSet()
      インターフェースからコピーされた説明: InitializingBean
      すべての Bean プロパティを設定し、BeanFactoryAwareApplicationContextAware などを満たした後、包含 BeanFactory によって呼び出されます。

      このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。

      次で指定:
      インターフェース InitializingBeanafterPropertiesSet 
    • createConnection

      public jakarta.jms.Connection createConnection() throws jakarta.jms.JMSException
      次で指定:
      インターフェース jakarta.jms.ConnectionFactorycreateConnection 
      例外:
      jakarta.jms.JMSException
    • createConnection

      public jakarta.jms.Connection createConnection(StringSE username, StringSE password) throws jakarta.jms.JMSException
      次で指定:
      インターフェース jakarta.jms.ConnectionFactorycreateConnection 
      例外:
      jakarta.jms.JMSException
    • createQueueConnection

      public jakarta.jms.QueueConnection createQueueConnection() throws jakarta.jms.JMSException
      次で指定:
      インターフェース jakarta.jms.QueueConnectionFactorycreateQueueConnection 
      例外:
      jakarta.jms.JMSException
    • createQueueConnection

      public jakarta.jms.QueueConnection createQueueConnection(StringSE username, StringSE password) throws jakarta.jms.JMSException
      次で指定:
      インターフェース jakarta.jms.QueueConnectionFactorycreateQueueConnection 
      例外:
      jakarta.jms.JMSException
    • createTopicConnection

      public jakarta.jms.TopicConnection createTopicConnection() throws jakarta.jms.JMSException
      次で指定:
      インターフェース jakarta.jms.TopicConnectionFactorycreateTopicConnection 
      例外:
      jakarta.jms.JMSException
    • createTopicConnection

      public jakarta.jms.TopicConnection createTopicConnection(StringSE username, StringSE password) throws jakarta.jms.JMSException
      次で指定:
      インターフェース jakarta.jms.TopicConnectionFactorycreateTopicConnection 
      例外:
      jakarta.jms.JMSException
    • createContext

      public jakarta.jms.JMSContext createContext()
      次で指定:
      インターフェース jakarta.jms.ConnectionFactorycreateContext 
    • createContext

      public jakarta.jms.JMSContext createContext(StringSE userName, StringSE password)
      次で指定:
      インターフェース jakarta.jms.ConnectionFactorycreateContext 
    • createContext

      public jakarta.jms.JMSContext createContext(StringSE userName, StringSE password, int sessionMode)
      次で指定:
      インターフェース jakarta.jms.ConnectionFactorycreateContext 
    • createContext

      public jakarta.jms.JMSContext createContext(int sessionMode)
      次で指定:
      インターフェース jakarta.jms.ConnectionFactorycreateContext 
    • shouldStop

      public boolean shouldStop(jakarta.jms.Connection con)
      インターフェースからコピーされた説明: SmartConnectionFactory
      この ConnectionFactory から取得した接続を停止する必要がありますか?
      次で指定:
      インターフェース SmartConnectionFactoryshouldStop 
      パラメーター:
      con - 確認する接続
      戻り値:
      停止呼び出しが必要かどうか
      関連事項:
      • Connection.stop()