public abstract class MessageBusSupport extends java.lang.Object implements MessageBus, org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.InitializingBean
修飾子と型 | クラスと説明 |
---|---|
static class | MessageBusSupport.DirectHandler |
protected static class | MessageBusSupport.PartitioningMetadata |
static class | MessageBusSupport.SetBuilder |
protected class | MessageBusSupport.SharedChannelProvider<T extends org.springframework.messaging.MessageChannel> 使用する新しいチャネルを検索するか、オプションで作成します。 |
MessageBus.Capability
修飾子と型 | フィールドと説明 |
---|---|
protected static java.util.Set<java.lang.Object> | CONSUMER_RETRY_PROPERTIES |
protected static java.util.Set<java.lang.Object> | CONSUMER_STANDARD_PROPERTIES すべてのバス実装がサポートする必要がある (または少なくとも許容する必要がある) プロパティのセット。 |
protected long | defaultBackOffInitialInterval |
protected long | defaultBackOffMaxInterval |
protected double | defaultBackOffMultiplier |
protected int | defaultBatchBufferLimit |
protected boolean | defaultBatchingEnabled |
protected int | defaultBatchSize |
protected long | defaultBatchTimeout |
protected boolean | defaultCompress |
protected int | defaultConcurrency |
protected boolean | defaultDurableSubscription |
protected int | defaultMaxAttempts |
protected MessageBusSupport.SharedChannelProvider<org.springframework.integration.channel.DirectChannel> | directChannelProvider バインディングにエイリアス名が含まれない標準的なケースで使用されます。 |
protected org.springframework.expression.EvaluationContext | evaluationContext |
protected static java.lang.String | JOB_CHANNEL_TYPE_PREFIX |
protected org.slf4j.Logger | logger |
protected static java.util.List<org.springframework.util.MimeType> | MEDIATYPES_MEDIATYPE_ALL |
protected static java.lang.String | P2P_NAMED_CHANNEL_TYPE_PREFIX |
protected static java.lang.String | PARTITION_HEADER |
protected static java.util.Set<java.lang.Object> | PRODUCER_BATCHING_ADVANCED_PROPERTIES |
protected static java.util.Set<java.lang.Object> | PRODUCER_BATCHING_BASIC_PROPERTIES |
protected static java.util.Set<java.lang.Object> | PRODUCER_PARTITIONING_PROPERTIES |
protected static java.util.Set<java.lang.Object> | PRODUCER_STANDARD_PROPERTIES |
protected static java.lang.String | PUBSUB_NAMED_CHANNEL_TYPE_PREFIX |
protected static java.lang.String | TAP_TYPE_PREFIX |
コンストラクターと説明 |
---|
MessageBusSupport() |
修飾子と型 | メソッドと説明 |
---|---|
protected void | addBinding(Binding binding) |
void | afterPropertiesSet() |
static java.lang.String | applyPrefix(java.lang.String prefix, java.lang.String name) プレフィックスをサポートするバス実装の場合は、名前にプレフィックスを適用します。 |
static java.lang.String | applyPubSub(java.lang.String name) 識別子に pub/ サブコンポーネントを含むバス実装の場合は、名前を構築します。 |
static java.lang.String | applyRequests(java.lang.String name) リクエストのエンティティ名を構築します。 |
org.springframework.messaging.MessageChannel | bindDynamicProducer(java.lang.String name, java.util.Properties properties) 指定されたチャネルのプロデューサーを動的に作成します。 |
org.springframework.messaging.MessageChannel | bindDynamicPubSubProducer(java.lang.String name, java.util.Properties properties) 指定されたチャネルのプロデューサーを動的に作成します。 |
protected void | bindExistingProducerDirectlyIfPossible(java.lang.String name, org.springframework.messaging.MessageChannel consumerChannel) ローカルプロデューサーがすでに存在する場合は、バスを回避してプロデューサーを直接バインドしようとします。 |
protected boolean | bindNewProducerDirectlyIfPossible(java.lang.String name, org.springframework.messaging.SubscribableChannel moduleOutputChannel, AbstractBusPropertiesAccessor properties) コンシューマーがローカルの場合、直接バインディング (バスを回避) の作成を試みます。 |
protected java.lang.String | buildPartitionRoutingExpression(java.lang.String expressionRoot) |
protected org.springframework.retry.support.RetryTemplate | buildRetryTemplateIfRetryEnabled(AbstractBusPropertiesAccessor properties) コンシューマーの "maxAttempts" プロパティが設定されている場合は、再試行テンプレートを作成して構成します。 |
static java.lang.String | constructDLQName(java.lang.String name) デッドレターをサポートするバス実装の場合は、基になるパイプ名のデッドレターエンティティの名前を構築します。 |
protected void | deleteBinding(java.lang.String name, org.springframework.messaging.MessageChannel channel) |
protected void | deleteBindings(java.lang.String name) |
protected MessageValues | deserializePayloadIfNecessary(org.springframework.messaging.Message<?> message) |
protected MessageValues | deserializePayloadIfNecessary(MessageValues message) |
protected int | determinePartition(org.springframework.messaging.Message<?> message, MessageBusSupport.PartitioningMetadata meta) このメッセージを送信するパーティションを決定します。 |
protected org.springframework.messaging.MessageChannel | doBindDynamicProducer(java.lang.String name, java.lang.String channelName, java.util.Properties properties) 名前付きチャネルのプロデューサーを作成し、それをバスにバインドします。 |
protected org.springframework.messaging.MessageChannel | doBindDynamicPubSubProducer(java.lang.String name, java.lang.String channelName, java.util.Properties properties) 名前付きチャネルのプロデューサーを作成し、それをバスにバインドします。 |
void | doManualAck(java.util.LinkedList<org.springframework.messaging.MessageHeaders> messageHeaders) メッセージバスに保存されているメタデータに基づいて手動で確認を実行します。 |
protected org.springframework.context.support.AbstractApplicationContext | getApplicationContext() |
protected org.springframework.beans.factory.config.ConfigurableListableBeanFactory | getBeanFactory() |
protected org.springframework.util.IdGenerator | getIdGenerator() |
boolean | isCapable(MessageBus.Capability capability) バスが機能をサポートしている場合は true を返します。 |
protected boolean | isNamedChannel(java.lang.String name) |
protected void | onInit() |
protected MessageValues | serializePayloadIfNecessary(org.springframework.messaging.Message<?> message) |
void | setApplicationContext(org.springframework.context.ApplicationContext applicationContext) |
void | setCodec(org.springframework.integration.codec.Codec codec) |
void | setDefaultBackOffInitialInterval(long defaultBackOffInitialInterval) このバスのデフォルトの再試行オフ初期間隔を設定します。コンシューマーの "backOffInitialInterval" プロパティで上書きできます。 |
void | setDefaultBackOffMaxInterval(long defaultBackOffMaxInterval) このバスのデフォルトの再試行バックオフ最大間隔を設定します。コンシューマーの "backOffMaxInterval" プロパティで上書きできます。 |
void | setDefaultBackOffMultiplier(double defaultBackOffMultiplier) このバスのデフォルトの再試行バックオフ乗数を設定します。コンシューマーの "backOffMultiplier" プロパティで上書きできます。 |
void | setDefaultBatchBufferLimit(int defaultBatchBufferLimit) Set the default batch buffer limit - used to send a batch early if its size exceeds this. |
void | setDefaultBatchingEnabled(boolean defaultBatchingEnabled) Set whether this bus batches message sends by default. |
void | setDefaultBatchSize(int defaultBatchSize) Set the default batch size; only applies when batching is enabled and the bus supports batching. |
void | setDefaultBatchTimeout(long defaultBatchTimeout) Set the default batch timeout - used to send a batch if no messages arrive during this time. |
void | setDefaultCompress(boolean defaultCompress) Set whether compression will be used by producers, by default. |
void | setDefaultConcurrency(int defaultConcurrency) このバスのデフォルトの同時実行性を設定します。コンシューマーの「同時実行性」プロパティで上書きできます。 |
void | setDefaultDurableSubscription(boolean defaultDurableSubscription) Set whether subscriptions to taps/topics are durable. |
void | setDefaultMaxAttempts(int defaultMaxAttempts) このバスのデフォルトの最大配信試行回数。 |
void | setIntegrationEvaluationContext(org.springframework.expression.EvaluationContext evaluationContext) |
void | setPartitionSelector(PartitionSelectorStrategy partitionSelector) Set the partition strategy to be used by this bus if no partitionExpression is provided for a module. |
protected void | stopBindings() |
void | unbindConsumer(java.lang.String name, org.springframework.messaging.MessageChannel channel) 特定の p2p または pub/ サブメッセージコンシューマーのバインドを解除する |
void | unbindConsumers(java.lang.String name) 受信モジュール間チャネルのバインドを解除し、そのチャネルを使用するアクティブなコンポーネントを停止します。 |
void | unbindProducer(java.lang.String name, org.springframework.messaging.MessageChannel channel) 特定の p2p または pub/sub メッセージプロデューサーのバインドを解除する |
void | unbindProducers(java.lang.String name) 送信モジュール間チャネルのバインドを解除し、そのチャネルを使用するアクティブなコンポーネントを停止します。 |
protected void | validateConsumerProperties(java.lang.String name, java.util.Properties properties, java.util.Set<java.lang.Object> supported) Validate the provided deployment properties for the consumer against those supported by this bus implementation. |
protected void | validateProducerProperties(java.lang.String name, java.util.Properties properties, java.util.Set<java.lang.Object> supported) Validate the provided deployment properties for the producer against those supported by this bus implementation. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
bindConsumer, bindProducer, bindPubSubConsumer, bindPubSubProducer, bindReplier, bindRequestor
protected static final java.lang.String P2P_NAMED_CHANNEL_TYPE_PREFIX
protected static final java.lang.String TAP_TYPE_PREFIX
protected static final java.lang.String PUBSUB_NAMED_CHANNEL_TYPE_PREFIX
protected static final java.lang.String JOB_CHANNEL_TYPE_PREFIX
protected static final java.lang.String PARTITION_HEADER
protected final org.slf4j.Logger logger
protected static final java.util.List<org.springframework.util.MimeType> MEDIATYPES_MEDIATYPE_ALL
protected static final java.util.Set<java.lang.Object> CONSUMER_STANDARD_PROPERTIES
protected static final java.util.Set<java.lang.Object> PRODUCER_STANDARD_PROPERTIES
protected static final java.util.Set<java.lang.Object> CONSUMER_RETRY_PROPERTIES
protected static final java.util.Set<java.lang.Object> PRODUCER_PARTITIONING_PROPERTIES
protected static final java.util.Set<java.lang.Object> PRODUCER_BATCHING_BASIC_PROPERTIES
protected static final java.util.Set<java.lang.Object> PRODUCER_BATCHING_ADVANCED_PROPERTIES
protected volatile org.springframework.expression.EvaluationContext evaluationContext
protected final MessageBusSupport.SharedChannelProvider<org.springframework.integration.channel.DirectChannel> directChannelProvider
protected volatile long defaultBackOffInitialInterval
protected volatile long defaultBackOffMaxInterval
protected volatile double defaultBackOffMultiplier
protected volatile int defaultConcurrency
protected volatile int defaultMaxAttempts
protected volatile boolean defaultBatchingEnabled
protected volatile int defaultBatchSize
protected volatile int defaultBatchBufferLimit
protected volatile long defaultBatchTimeout
protected volatile boolean defaultCompress
protected volatile boolean defaultDurableSubscription
public static java.lang.String applyPrefix(java.lang.String prefix, java.lang.String name)
prefix
- プレフィックス。name
- 名前。public static java.lang.String applyPubSub(java.lang.String name)
name
- 名前。public static java.lang.String applyRequests(java.lang.String name)
name
- 名前。public static java.lang.String constructDLQName(java.lang.String name)
name
- 名前。public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) throws org.springframework.beans.BeansException
org.springframework.context.ApplicationContextAware
の setApplicationContext
org.springframework.beans.BeansException
protected org.springframework.context.support.AbstractApplicationContext getApplicationContext()
protected org.springframework.beans.factory.config.ConfigurableListableBeanFactory getBeanFactory()
public void setCodec(org.springframework.integration.codec.Codec codec)
protected org.springframework.util.IdGenerator getIdGenerator()
public void setIntegrationEvaluationContext(org.springframework.expression.EvaluationContext evaluationContext)
public void setPartitionSelector(PartitionSelectorStrategy partitionSelector)
partitionSelector
- セレクタ。public void setDefaultBackOffInitialInterval(long defaultBackOffInitialInterval)
defaultBackOffInitialInterval
-public void setDefaultBackOffMultiplier(double defaultBackOffMultiplier)
defaultBackOffMultiplier
-public void setDefaultBackOffMaxInterval(long defaultBackOffMaxInterval)
defaultBackOffMaxInterval
-public void setDefaultConcurrency(int defaultConcurrency)
defaultConcurrency
-public void setDefaultMaxAttempts(int defaultMaxAttempts)
defaultMaxAttempts
- デフォルトの最大試行回数。public void setDefaultBatchingEnabled(boolean defaultBatchingEnabled)
defaultBatchingEnabled
- defaultBatchingEnabled を設定します。public void setDefaultBatchSize(int defaultBatchSize)
defaultBatchSize
- defaultBatchSize を設定します。public void setDefaultBatchBufferLimit(int defaultBatchBufferLimit)
defaultBatchBufferLimit
- defaultBatchBufferLimit を設定します。public void setDefaultBatchTimeout(long defaultBatchTimeout)
defaultBatchTimeout
- defaultBatchTimeout を設定します。public void setDefaultCompress(boolean defaultCompress)
defaultCompress
- 'true' to use compression.public void setDefaultDurableSubscription(boolean defaultDurableSubscription)
defaultDurableSubscription
- true for durable (default false).public void afterPropertiesSet() throws java.lang.Exception
org.springframework.beans.factory.InitializingBean
の afterPropertiesSet
java.lang.Exception
protected void onInit()
public org.springframework.messaging.MessageChannel bindDynamicProducer(java.lang.String name, java.util.Properties properties)
MessageBus
の bindDynamicProducer
name
- 名前。properties
- プロパティ。protected org.springframework.messaging.MessageChannel doBindDynamicProducer(java.lang.String name, java.lang.String channelName, java.util.Properties properties)
name
- 名前。channelName
- The name of the channel to be created, and registered as bean.properties
- プロパティ。public org.springframework.messaging.MessageChannel bindDynamicPubSubProducer(java.lang.String name, java.util.Properties properties)
MessageBus
の bindDynamicPubSubProducer
name
- 名前。properties
- プロパティ。protected org.springframework.messaging.MessageChannel doBindDynamicPubSubProducer(java.lang.String name, java.lang.String channelName, java.util.Properties properties)
name
- 名前。channelName
- The name of the channel to be created, and registered as bean.properties
- プロパティ。public void unbindConsumers(java.lang.String name)
MessageBus
MessageBus
の unbindConsumers
name
- チャンネル名 public void unbindProducers(java.lang.String name)
MessageBus
MessageBus
の unbindProducers
name
- チャンネル名 public void unbindConsumer(java.lang.String name, org.springframework.messaging.MessageChannel channel)
MessageBus
MessageBus
の unbindConsumer
name
- メッセージソースの論理的な識別 channel
- コンシューマーとしてのチャネル public void unbindProducer(java.lang.String name, org.springframework.messaging.MessageChannel channel)
MessageBus
MessageBus
の unbindProducer
name
- メッセージターゲットの論理的アイデンティティ channel
- プロデューサーとして縛られたチャンネル public boolean isCapable(MessageBus.Capability capability)
MessageBus
MessageBus
の isCapable
capability
- 機能。protected void addBinding(Binding binding)
protected void deleteBindings(java.lang.String name)
protected void deleteBinding(java.lang.String name, org.springframework.messaging.MessageChannel channel)
protected void stopBindings()
protected final MessageValues serializePayloadIfNecessary(org.springframework.messaging.Message<?> message)
protected final MessageValues deserializePayloadIfNecessary(org.springframework.messaging.Message<?> message)
protected final MessageValues deserializePayloadIfNecessary(MessageValues message)
protected int determinePartition(org.springframework.messaging.Message<?> message, MessageBusSupport.PartitioningMetadata meta)
key.hashCode()
, and the result will be the mod of that value.message
- メッセージ。meta
- the partitioning metadata.protected void validateConsumerProperties(java.lang.String name, java.util.Properties properties, java.util.Set<java.lang.Object> supported)
name
- 名前。properties
- プロパティ。supported
- The supported properties.protected void validateProducerProperties(java.lang.String name, java.util.Properties properties, java.util.Set<java.lang.Object> supported)
name
- 名前。properties
- プロパティ。supported
- The supported properties.protected java.lang.String buildPartitionRoutingExpression(java.lang.String expressionRoot)
protected org.springframework.retry.support.RetryTemplate buildRetryTemplateIfRetryEnabled(AbstractBusPropertiesAccessor properties)
properties
- プロパティ。protected boolean isNamedChannel(java.lang.String name)
protected boolean bindNewProducerDirectlyIfPossible(java.lang.String name, org.springframework.messaging.SubscribableChannel moduleOutputChannel, AbstractBusPropertiesAccessor properties)
name
- 名前。moduleOutputChannel
- The channel to bind.properties
- The producer properties.protected void bindExistingProducerDirectlyIfPossible(java.lang.String name, org.springframework.messaging.MessageChannel consumerChannel)
name
- 名前。consumerChannel
- The channel to bind the producer to.public void doManualAck(java.util.LinkedList<org.springframework.messaging.MessageHeaders> messageHeaders)