クラス PostgresSubscribableChannel
java.lang.ObjectSE
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.channel.AbstractMessageChannel
org.springframework.integration.channel.AbstractSubscribableChannel
org.springframework.integration.jdbc.channel.PostgresSubscribableChannel
- 実装されているすべてのインターフェース:
Aware
、BeanFactoryAware
、BeanNameAware
、DisposableBean
、InitializingBean
、ApplicationContextAware
、ComponentSourceAware
、ExpressionCapable
、IntegrationPattern
、PostgresChannelMessageTableSubscriber.Subscription
、NamedComponent
、IntegrationManagement
、SubscribableChannelManagement
、TrackableComponent
、MessageChannel
、SubscribableChannel
、InterceptableChannel
public class PostgresSubscribableChannel
extends AbstractSubscribableChannel
implements PostgresChannelMessageTableSubscriber.Subscription
JdbcChannelMessageStore
のグループ ID に送信されたメッセージのプッシュ通知を受信するための AbstractSubscribableChannel
。このようなプッシュ通知を受信できるのは、Postgres データベースを使用している場合のみです。機能するために、使用される Postgres データベースは、新しく到着したメッセージで通知を送信するためのトリガーを定義する必要があります。このトリガーは、この成果物内の schema-postgresql.sql ファイルで定義されていますが、コメント化されています。- 導入:
- 6.0
- 作成者:
- Rafael Winterhalter, Artem Bilan, Igor Lovich, Norbert Schneider
ネストされたクラスの要約
クラス org.springframework.integration.channel.AbstractMessageChannel から継承されたネストクラス / インターフェース
AbstractMessageChannel.ChannelInterceptorList
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたネストクラス / インターフェース
IntegrationManagement.ManagementOverrides
フィールドのサマリー
クラス org.springframework.integration.channel.AbstractMessageChannel から継承されたフィールド
interceptors, meters
クラス org.springframework.integration.context.IntegrationObjectSupport から継承されたフィールド
EXPRESSION_PARSER, logger
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたフィールド
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
インターフェース org.springframework.messaging.MessageChannel から継承されたフィールド
INDEFINITE_TIMEOUT
コンストラクターの概要
コンストラクターコンストラクター説明PostgresSubscribableChannel
(JdbcChannelMessageStore jdbcChannelMessageStore, ObjectSE groupId, PostgresChannelMessageTableSubscriber messageTableSubscriber) Postgres データベースのサブスクライブ可能なチャネルを作成します。メソッドのサマリー
修飾子と型メソッド説明protected boolean
サブクラスはこのメソッドを実装する必要があります。protected MessageDispatcher
このサブスクリプションが通知を受け取るグループ ID を返します。このサブスクリプションが通知を受け取るリージョンを返します。void
表示されたリージョンとグループ ID にメッセージが追加されたことを示します。protected void
onInit()
サブクラスは、初期化ロジック用にこれを実装できます。void
setDispatcherExecutor
(ExecutorSE executor) 新しく受信したメッセージのディスパッチに使用するエグゼキューターを設定します。void
setErrorHandler
(ErrorHandler errorHandler) このチャネルでディスパッチできないメッセージにはErrorHandler
を設定します。void
setRetryTemplate
(org.springframework.retry.support.RetryTemplate retryTemplate) ダウンストリーム処理で例外が発生した場合の再試行に使用する再試行テンプレートを設定しますvoid
setTransactionManager
(PlatformTransactionManager transactionManager) メッセージ処理に使用するトランザクションマネージャーを設定します。boolean
subscribe
(MessageHandler handler) boolean
unsubscribe
(MessageHandler handle) クラス org.springframework.integration.channel.AbstractSubscribableChannel から継承されたメソッド
getSubscriberCount
クラス org.springframework.integration.channel.AbstractMessageChannel から継承されたメソッド
addInterceptor, addInterceptor, destroy, getComponentType, getFullChannelName, getIChannelInterceptorList, getIntegrationPatternType, getInterceptors, getMetricsCaptor, getOverrides, isApplicationRunning, isLoggingEnabled, isObserved, registerMetricsCaptor, registerObservationRegistry, removeInterceptor, removeInterceptor, send, send, setDatatypes, setInterceptors, setLoggingEnabled, setMessageConverter, setObservationConvention, setShouldTrack
クラス org.springframework.integration.context.IntegrationObjectSupport から継承されたメソッド
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentDescription, getComponentName, getComponentSource, getConversionService, getExpression, getIntegrationProperties, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentDescription, setComponentName, setComponentSource, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSE
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたメソッド
getManagedName, getManagedType, getThisAs, setManagedName, setManagedType
インターフェース org.springframework.messaging.MessageChannel から継承されたメソッド
send, send
インターフェース org.springframework.integration.support.context.NamedComponent から継承されたメソッド
getBeanName, getComponentName
コンストラクターの詳細
PostgresSubscribableChannel
public PostgresSubscribableChannel(JdbcChannelMessageStore jdbcChannelMessageStore, ObjectSE groupId, PostgresChannelMessageTableSubscriber messageTableSubscriber) Postgres データベースのサブスクライブ可能なチャネルを作成します。- パラメーター:
jdbcChannelMessageStore
- 関連するリージョンに使用するメッセージストア。groupId
- サブスクリプションの対象となるグループ ID。messageTableSubscriber
- 通知の受信に使用するサブスクライバー。
メソッドの詳細
setDispatcherExecutor
新しく受信したメッセージのディスパッチに使用するエグゼキューターを設定します。- パラメーター:
executor
- 使用するエグゼキュータ。
setTransactionManager
メッセージ処理に使用するトランザクションマネージャーを設定します。各メッセージは個別のトランザクションで処理されます- パラメーター:
transactionManager
- 使用するトランザクションマネージャー- 導入:
- 6.0.5
- 関連事項:
setRetryTemplate
public void setRetryTemplate(org.springframework.retry.support.RetryTemplate retryTemplate) ダウンストリーム処理で例外が発生した場合の再試行に使用する再試行テンプレートを設定します- パラメーター:
retryTemplate
- 使用する再試行テンプレート- 導入:
- 6.0.5
- 関連事項:
setErrorHandler
このチャネルでディスパッチできないメッセージにはErrorHandler
を設定します。RetryTemplate
の実行で例外がスローされた後の回復コールバックとして使用されます。- パラメーター:
errorHandler
- 使用するErrorHandler
。- 導入:
- 6.0.9
onInit
protected void onInit()クラスからコピーされた説明:IntegrationObjectSupport
サブクラスは、初期化ロジック用にこれを実装できます。- オーバーライド:
- クラス
AbstractMessageChannel
のonInit
subscribe
- 次で指定:
- インターフェース
SubscribableChannel
のsubscribe
- オーバーライド:
- クラス
AbstractSubscribableChannel
のsubscribe
unsubscribe
- 次で指定:
- インターフェース
SubscribableChannel
のunsubscribe
- オーバーライド:
- クラス
AbstractSubscribableChannel
のunsubscribe
getDispatcher
- 次で指定:
- クラス
AbstractSubscribableChannel
のgetDispatcher
doSend
クラスからコピーされた説明:AbstractMessageChannel
サブクラスはこのメソッドを実装する必要があります。負でないタイムアウトは、チャネルが容量に達した場合に待機する時間を示します(値が 0 の場合、成功の有無にかかわらずすぐに戻る必要があります)。負のタイムアウト値は、メッセージが受け入れられるか、ブロッキングスレッドが中断されるまでメソッドがブロックされることを示します。- オーバーライド:
- クラス
AbstractSubscribableChannel
のdoSend
- パラメーター:
message
- メッセージ。timeout
- タイムアウト。- 戻り値:
send
が成功した場合は true。
notifyUpdate
public void notifyUpdate()インターフェースからコピーされた説明:PostgresChannelMessageTableSubscriber.Subscription
指定されたリージョンとグループ ID にメッセージが追加されたことを示します。このメソッドは、新しいメッセージがない場合にも呼び出される可能性があることに注意してください。たとえば、別のサブスクリプションがすでにそれらのメッセージを読んでいる場合や、一時的な接続の切断中に新しいメッセージが到着した場合などです。- 次で指定:
- インターフェース
PostgresChannelMessageTableSubscriber.Subscription
のnotifyUpdate
getRegion
インターフェースからコピーされた説明:PostgresChannelMessageTableSubscriber.Subscription
このサブスクリプションが通知を受け取るリージョンを返します。- 次で指定:
- インターフェース
PostgresChannelMessageTableSubscriber.Subscription
のgetRegion
- 戻り値:
JdbcChannelMessageStore
の関連領域。
getGroupId
インターフェースからコピーされた説明:PostgresChannelMessageTableSubscriber.Subscription
このサブスクリプションが通知を受け取るグループ ID を返します。- 次で指定:
- インターフェース
PostgresChannelMessageTableSubscriber.Subscription
のgetGroupId
- 戻り値:
PostgresSubscribableChannel
のグループ ID。