クラス AbstractConnectionFactory
- java.lang.ObjectSE
-
- org.springframework.amqp.rabbit.connection.AbstractConnectionFactory
- 実装されたすべてのインターフェース:
com.rabbitmq.client.ShutdownListener
、EventListenerSE
、ConnectionFactory
、Aware
、BeanNameAware
、DisposableBean
、ApplicationContextAware
、ApplicationEventPublisherAware
、ApplicationListener<ContextClosedEvent>
public abstract class AbstractConnectionFactory extends ObjectSE implements ConnectionFactory, DisposableBean, BeanNameAware, ApplicationContextAware, ApplicationEventPublisherAware, ApplicationListener<ContextClosedEvent>, com.rabbitmq.client.ShutdownListener
- 作成者:
- Dave Syer, Gary Russell, Steve Powell, Artem Bilan, Will Droste
ネストされたクラスのサマリー
ネストされたクラス 修飾子と型 クラス 説明 static class
AbstractConnectionFactory.AddressShuffleMode
アドレスのシャッフルに使用されるモード。
フィールドサマリー
フィールド 修飾子と型 フィールド 説明 static int
DEFAULT_CLOSE_TIMEOUT
protected Log
logger
コンストラクターのサマリー
コンストラクター コンストラクター 説明 AbstractConnectionFactory(com.rabbitmq.client.ConnectionFactory rabbitConnectionFactory)
パブリッシャー接続ファクトリなしで、指定されたターゲット ConnectionFactory の新しい AbstractConnectionFactory を作成します。
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 非推奨のメソッド 修飾子と型 メソッド 説明 void
addChannelListener(ChannelListener listener)
void
addConnectionListener(ConnectionListener listener)
void
clearConnectionListeners()
protected Connection
createBareConnection()
void
destroy()
protected void
doSetPublisherConnectionFactory(AbstractConnectionFactory publisherConnectionFactory)
protected ApplicationContext
getApplicationContext()
protected ApplicationEventPublisher
getApplicationEventPublisher()
protected StringSE
getBeanName()
コンポーネントの Bean 名を返すか、Bean でない場合は null を返します。protected ChannelListener
getChannelListener()
チャネルを作成および閉じるときにサブクラスによって使用される複合チャネルリスナー。int
getCloseTimeout()
protected ConnectionListener
getConnectionListener()
接続を作成および閉じるときにサブクラスによって使用される複合接続リスナー。protected ConnectionNameStrategy
getConnectionNameStrategy()
protected boolean
getContextStopped()
protected StringSE
getDefaultHostName()
protected ExecutorServiceSE
getExecutorService()
StringSE
getHost()
int
getPort()
ConnectionFactory
getPublisherConnectionFactory()
パブリッシャー用に個別の接続ファクトリを返します (実装されている場合)。com.rabbitmq.client.ConnectionFactory
getRabbitConnectionFactory()
基になる Rabbit 接続ファクトリへの参照を返します。StringSE
getUsername()
基礎となる rabbit 接続ファクトリからユーザー名を返します。StringSE
getVirtualHost()
boolean
hasPublisherConnectionFactory()
void
onApplicationEvent(ContextClosedEvent event)
boolean
removeConnectionListener(ConnectionListener listener)
void
setAddresses(StringSE addresses)
クラスタリングのアドレスを設定します。void
setAddressResolver(com.rabbitmq.client.AddressResolver addressResolver)
void
setAddressShuffleMode(AbstractConnectionFactory.AddressShuffleMode addressShuffleMode)
アドレスをシャッフルするモードを設定します。void
setApplicationContext(ApplicationContext applicationContext)
void
setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher)
void
setBeanName(StringSE name)
void
setChannelListeners(ListSE<? extends ChannelListener> listeners)
void
setCloseExceptionLogger(ConditionalExceptionLogger closeExceptionLogger)
クローズ例外をログに記録するための戦略を設定します。デフォルトでは、パッシブキューの宣言が失敗したためにチャネルが閉じられた場合、デバッグレベルでログに記録されます。void
setCloseTimeout(int closeTimeout)
ブローカーからの接続クローズ操作へのレスポンスを待機する時間 (ミリ秒)。デフォルト 30000 (30 秒)。void
setConnectionListeners(ListSE<? extends ConnectionListener> listeners)
void
setConnectionNameStrategy(ConnectionNameStrategy connectionNameStrategy)
ConnectionNameStrategy
を指定して、ターゲットの RabbitMQ 接続の名前を作成します。void
setConnectionThreadFactory(ThreadFactorySE threadFactory)
基礎となる rabbit 接続ファクトリでThreadFactory
SE を設定します。void
setConnectionTimeout(int connectionTimeout)
void
setExecutor(ExecutorSE executor)
接続を作成するときに Rabbit ConnectionFactory が使用する Executor を提供します。void
setHost(StringSE host)
void
setPassword(StringSE password)
void
setPort(int port)
void
setPublisherConnectionFactory(AbstractConnectionFactory publisherConnectionFactory)
カスタムパブリッシャー接続ファクトリを設定します。型はこのファクトリと同じである必要はありません。void
setRecoveryListener(com.rabbitmq.client.RecoveryListener recoveryListener)
作成された各接続に追加されるRecoveryListener
を設定します。void
setRequestedHeartBeat(int requestedHeartBeat)
void
setShuffleAddresses(boolean shuffleAddresses)
使用すべきではありません。2.3 以来void
setUri(StringSE uri)
void
setUri(URISE uri)
void
setUsername(StringSE username)
void
setVirtualHost(StringSE virtualHost)
void
shutdownCompleted(com.rabbitmq.client.ShutdownSignalException cause)
StringSE
toString()
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSE
インターフェース org.springframework.amqp.rabbit.connection.ConnectionFactory から継承されたメソッド
createConnection, isPublisherConfirms, isPublisherReturns, isSimplePublisherConfirms
メソッドの詳細
setPublisherConnectionFactory
public void setPublisherConnectionFactory(@Nullable AbstractConnectionFactory publisherConnectionFactory)
カスタムパブリッシャー接続ファクトリを設定します。型はこのファクトリと同じである必要はありません。- パラメーター:
publisherConnectionFactory
- ファクトリ。- 導入:
- 2.3.2
doSetPublisherConnectionFactory
protected final void doSetPublisherConnectionFactory(@Nullable AbstractConnectionFactory publisherConnectionFactory)
setApplicationContext
public void setApplicationContext(ApplicationContext applicationContext)
- 次で指定:
- インターフェース
ApplicationContextAware
のsetApplicationContext
getApplicationContext
protected ApplicationContext getApplicationContext()
setApplicationEventPublisher
public void setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher)
- 次で指定:
- インターフェース
ApplicationEventPublisherAware
のsetApplicationEventPublisher
getApplicationEventPublisher
protected ApplicationEventPublisher getApplicationEventPublisher()
onApplicationEvent
public void onApplicationEvent(ContextClosedEvent event)
- 次で指定:
- インターフェース
ApplicationListener<ContextClosedEvent>
のonApplicationEvent
getContextStopped
protected boolean getContextStopped()
getRabbitConnectionFactory
public com.rabbitmq.client.ConnectionFactory getRabbitConnectionFactory()
基になる Rabbit 接続ファクトリへの参照を返します。- 戻り値:
- 接続ファクトリ。
- 導入:
- 1.5.6
getUsername
public StringSE getUsername()
基礎となる rabbit 接続ファクトリからユーザー名を返します。- 次で指定:
- インターフェース
ConnectionFactory
のgetUsername
- 戻り値:
- ユーザー名。
- 導入:
- 1.6
setUsername
public void setUsername(StringSE username)
setPassword
public void setPassword(StringSE password)
setHost
public void setHost(StringSE host)
setConnectionThreadFactory
public void setConnectionThreadFactory(ThreadFactorySE threadFactory)
基礎となる rabbit 接続ファクトリでThreadFactory
SE を設定します。- パラメーター:
threadFactory
- スレッドファクトリ。- 導入:
- 1.5.3
setAddressResolver
public void setAddressResolver(com.rabbitmq.client.AddressResolver addressResolver)
- パラメーター:
addressResolver
- リゾルバー。- 導入:
- 2.1.15
setUri
public void setUri(URISE uri)
- パラメーター:
uri
- URI- 導入:
- 1.5
- 関連事項:
ConnectionFactory.setUri(URI)
setUri
public void setUri(StringSE uri)
- パラメーター:
uri
- URI- 導入:
- 1.5
- 関連事項:
ConnectionFactory.setUri(String)
getHost
public StringSE getHost()
- 次で指定:
- インターフェース
ConnectionFactory
のgetHost
setVirtualHost
public void setVirtualHost(StringSE virtualHost)
getVirtualHost
public StringSE getVirtualHost()
- 次で指定:
- インターフェース
ConnectionFactory
のgetVirtualHost
setPort
public void setPort(int port)
setRequestedHeartBeat
public void setRequestedHeartBeat(int requestedHeartBeat)
setConnectionTimeout
public void setConnectionTimeout(int connectionTimeout)
getPort
public int getPort()
- 次で指定:
- インターフェース
ConnectionFactory
のgetPort
setAddresses
public void setAddresses(StringSE addresses)
クラスタリングのアドレスを設定します。このプロパティは、空でない場合、ホスト + ポートのプロパティをオーバーライドします。- パラメーター:
addresses
- "host[:port],..." 形式のアドレスのリスト
getConnectionListener
protected ConnectionListener getConnectionListener()
接続を作成および閉じるときにサブクラスによって使用される複合接続リスナー。- 戻り値:
- 接続リスナー
getChannelListener
protected ChannelListener getChannelListener()
チャネルを作成および閉じるときにサブクラスによって使用される複合チャネルリスナー。- 戻り値:
- チャンネルリスナー
setConnectionListeners
public void setConnectionListeners(ListSE<? extends ConnectionListener> listeners)
addConnectionListener
public void addConnectionListener(ConnectionListener listener)
- 次で指定:
- インターフェース
ConnectionFactory
のaddConnectionListener
removeConnectionListener
public boolean removeConnectionListener(ConnectionListener listener)
- 次で指定:
- インターフェース
ConnectionFactory
のremoveConnectionListener
clearConnectionListeners
public void clearConnectionListeners()
- 次で指定:
- インターフェース
ConnectionFactory
のclearConnectionListeners
setChannelListeners
public void setChannelListeners(ListSE<? extends ChannelListener> listeners)
setRecoveryListener
public void setRecoveryListener(com.rabbitmq.client.RecoveryListener recoveryListener)
作成された各接続に追加されるRecoveryListener
を設定します。- パラメーター:
recoveryListener
- リスナー。- 導入:
- 2.0
addChannelListener
public void addChannelListener(ChannelListener listener)
setExecutor
public void setExecutor(ExecutorSE executor)
接続の作成時に Rabbit ConnectionFactory が使用する Executor を提供します。<task:executor/> 要素で定義されているように、ExecutorService または Spring ThreadPoolTaskExecutor のいずれかになります。- パラメーター:
executor
- エグゼキューター。
getExecutorService
@Nullable protected ExecutorServiceSE getExecutorService()
setCloseTimeout
public void setCloseTimeout(int closeTimeout)
ブローカーからの接続クローズ操作へのレスポンスを待機する時間 (ミリ秒)。デフォルト 30000 (30 秒)。- パラメーター:
closeTimeout
- 設定する closeTimeout。
getCloseTimeout
public int getCloseTimeout()
setConnectionNameStrategy
public void setConnectionNameStrategy(ConnectionNameStrategy connectionNameStrategy)
ConnectionNameStrategy
を指定して、ターゲットの RabbitMQ 接続の名前を作成します。beanName
とカウンターがデフォルトで使用されます。- パラメーター:
connectionNameStrategy
- 使用するConnectionNameStrategy
。- 導入:
- 2.0
setCloseExceptionLogger
public void setCloseExceptionLogger(ConditionalExceptionLogger closeExceptionLogger)
クローズ例外をログに記録するための戦略を設定します。デフォルトでは、パッシブキューの宣言が失敗したためにチャネルが閉じられた場合、デバッグレベルでログに記録されます。通常のチャネルクローズ (200 OK) はログに記録されません。他のすべては ERROR レベルでログに記録されます (排他的なコンシューマー条件のためにアクセスが拒否された場合を除き、その場合は INFO レベルでログに記録されます)。- パラメーター:
closeExceptionLogger
-ConditionalExceptionLogger
- 導入:
- 1.5
getConnectionNameStrategy
protected ConnectionNameStrategy getConnectionNameStrategy()
setBeanName
public void setBeanName(StringSE name)
- 次で指定:
- インターフェース
BeanNameAware
のsetBeanName
getBeanName
@Nullable protected StringSE getBeanName()
コンポーネントの Bean 名を返すか、Bean でない場合は null を返します。- 戻り値:
- Bean 名または null。
- 導入:
- 1.7.9
setShuffleAddresses
@DeprecatedSE public void setShuffleAddresses(boolean shuffleAddresses)
使用すべきではありません。2.3 以来addresses
が提供され、複数ある場合は、true に設定して新しい接続を開く前にリストをシャッフルし、ブローカーへの接続がランダムな順序で試行されるようにします。- パラメーター:
shuffleAddresses
- リストをシャッフルする場合は true。- 導入:
- 2.1.8
- 関連事項:
.
SE
setAddressShuffleMode
public void setAddressShuffleMode(AbstractConnectionFactory.AddressShuffleMode addressShuffleMode)
アドレスをシャッフルするモードを設定します。- パラメーター:
addressShuffleMode
- アドレスシャッフルモード。- 導入:
- 2.3
- 関連事項:
Collections.shuffle(List)
SE
hasPublisherConnectionFactory
public boolean hasPublisherConnectionFactory()
getPublisherConnectionFactory
public ConnectionFactory getPublisherConnectionFactory()
インターフェースからコピーされた説明:ConnectionFactory
パブリッシャー用に個別の接続ファクトリを返します (実装されている場合)。- 次で指定:
- インターフェース
ConnectionFactory
のgetPublisherConnectionFactory
- 戻り値:
- パブリッシャー接続ファクトリ、または null。
createBareConnection
protected final Connection createBareConnection()
getDefaultHostName
protected final StringSE getDefaultHostName()
shutdownCompleted
public void shutdownCompleted(com.rabbitmq.client.ShutdownSignalException cause)
- 次で指定:
- インターフェース
com.rabbitmq.client.ShutdownListener
のshutdownCompleted
destroy
public void destroy()
- 次で指定:
- インターフェース
DisposableBean
のdestroy