クラス AbstractMessageSplitter
java.lang.ObjectSE
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.handler.MessageHandlerSupport
org.springframework.integration.handler.AbstractMessageHandler
org.springframework.integration.handler.AbstractMessageProducingHandler
org.springframework.integration.handler.AbstractReplyProducingMessageHandler
org.springframework.integration.splitter.AbstractMessageSplitter
- 実装されたすべてのインターフェース:
org.reactivestreams.Subscriber<Message<?>>
、Aware
、BeanClassLoaderAware
、BeanFactoryAware
、BeanNameAware
、DisposableBean
、InitializingBean
、ApplicationContextAware
、Ordered
、ExpressionCapable
、Orderable
、MessageProducer
、DiscardingMessageHandler
、HeaderPropagationAware
、IntegrationPattern
、NamedComponent
、IntegrationManagement
、TrackableComponent
、MessageHandler
、reactor.core.CoreSubscriber<Message<?>>
- 既知の直属サブクラス
DefaultMessageSplitter
、ExpressionEvaluatingSplitter
、FileSplitter
、MethodInvokingSplitter
、UnZipResultSplitter
、XPathMessageSplitter
public abstract class AbstractMessageSplitter
extends AbstractReplyProducingMessageHandler
implements DiscardingMessageHandler
メッセージ分割ハンドラーの基本クラス。
- 作成者:
- Mark Fisher, Dave Syer, Artem Bilan, Ruslan Stelmachenko, Gary Russell
ネストされたクラスのサマリー
クラス org.springframework.integration.handler.AbstractReplyProducingMessageHandler から継承されたネストクラス / インターフェース
AbstractReplyProducingMessageHandler.RequestHandler
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたネストクラス / インターフェース
IntegrationManagement.ManagementOverrides
フィールドサマリー
クラス org.springframework.integration.handler.AbstractMessageProducingHandler から継承されたフィールド
messagingTemplate
クラス org.springframework.integration.context.IntegrationObjectSupport から継承されたフィールド
EXPRESSION_PARSER, logger
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたフィールド
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
インターフェース org.springframework.core.Ordered から継承されたフィールド
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
コンストラクターのサマリー
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected void
addHeaders
(Message<?> message, MapSE<StringSE, ObjectSE> headers) サブクラスが出力メッセージにヘッダーを追加できるようにします。protected void
doInit()
サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。破棄チャネルを返します。このコンポーネントが実装するパターン型を返します。protected final ObjectSE
handleRequestMessage
(Message<?> message) サブクラスはこのメソッドを実装して、リクエストメッセージを処理する必要があります。protected int
obtainSizeIfPossible
(IterableSE<?> iterable) 付属のIterable
SE のサイズを取得します。protected int
obtainSizeIfPossible
(IteratorSE<?> iterator) 付属のIterator
SE のサイズを取得します。protected void
produceOutput
(ObjectSE result, Message<?> requestMessage) void
setApplySequence
(boolean applySequence) applySequence フラグを指定された値に設定します。void
setDiscardChannel
(MessageChannel discardChannel) 拒否されたメッセージを送信するチャネルを指定します。void
setDiscardChannelName
(StringSE discardChannelName) 拒否されたメッセージを送信するチャネル Bean 名(MessageChannel
に遅延解決)を指定します。protected boolean
サブクラスはこれをオーバーライドできます。protected abstract ObjectSE
splitMessage
(Message<?> message) 受信したメッセージを分割するには、サブクラスでこのメソッドをオーバーライドする必要があります。protected boolean
willAddHeaders
(Message<?> message) サブクラスが結果の分割にヘッダーを追加する必要がある場合は、true を返します。クラス org.springframework.integration.handler.AbstractReplyProducingMessageHandler から継承されたメソッド
doInvokeAdvisedRequestHandler, getBeanClassLoader, getRequiresReply, handleMessageInternal, hasAdviceChain, onInit, setAdviceChain, setBeanClassLoader, setRequiresReply
クラス org.springframework.integration.handler.AbstractMessageProducingHandler から継承されたメソッド
addNotPropagatedHeaders, createOutputMessage, getNotPropagatedHeaders, getOutputChannel, isAsync, messageBuilderForReply, resolveErrorChannel, sendErrorMessage, sendOutput, sendOutputs, setAsync, setNotPropagatedHeaders, setOutputChannel, setOutputChannelName, setSendTimeout, setupMessageProcessor, shouldSplitOutput, updateNotPropagatedHeaders
クラス org.springframework.integration.handler.AbstractMessageHandler から継承されたメソッド
handleMessage, onComplete, onError, onNext, onSubscribe, setObservationConvention
クラス org.springframework.integration.handler.MessageHandlerSupport から継承されたメソッド
buildSendTimer, destroy, getManagedName, getManagedType, getMetricsCaptor, getObservationRegistry, getOrder, getOverrides, isLoggingEnabled, isObserved, registerMetricsCaptor, registerObservationRegistry, sendTimer, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, shouldTrack
クラス org.springframework.integration.context.IntegrationObjectSupport から継承されたメソッド
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSE
インターフェース reactor.core.CoreSubscriber から継承されたメソッド
currentContext
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたメソッド
getThisAs
インターフェース org.springframework.messaging.MessageHandler から継承されたメソッド
handleMessage
インターフェース org.springframework.integration.support.context.NamedComponent から継承されたメソッド
getBeanName, getComponentName
コンストラクターの詳細
AbstractMessageSplitter
public AbstractMessageSplitter()
メソッドの詳細
setApplySequence
public void setApplySequence(boolean applySequence) applySequence フラグを指定された値に設定します。デフォルトは true です。- パラメーター:
applySequence
- シーケンス情報を適用する場合は true。
setDiscardChannel
拒否されたメッセージを送信するチャネルを指定します。破棄チャネルが null(デフォルト)の場合、拒否されたメッセージはドロップされます。「拒否されたメッセージ」は、split 関数が空の結果(null ではない)を返したことを意味します。送信するために繰り返す項目はありません。- パラメーター:
discardChannel
- 廃棄チャネル。- 導入:
- 5.2
setDiscardChannelName
拒否されたメッセージを送信するチャネル Bean 名(MessageChannel
に遅延解決)を指定します。破棄チャネルが null(デフォルト)の場合、拒否されたメッセージはドロップされます。「拒否されたメッセージ」は、split 関数が空の結果(null ではない)を返したことを意味します。送信するために繰り返す項目はありません。- パラメーター:
discardChannelName
- 廃棄チャネル Bean 名。- 導入:
- 5.2
getDiscardChannel
インターフェースからコピーされた説明:DiscardingMessageHandler
破棄チャネルを返します。- 次で指定:
- インターフェース
DiscardingMessageHandler
のgetDiscardChannel
- 戻り値:
- チャンネル。
getIntegrationPatternType
インターフェースからコピーされた説明:IntegrationPattern
このコンポーネントが実装するパターン型を返します。- 次で指定:
- インターフェース
IntegrationPattern
のgetIntegrationPatternType
- オーバーライド:
- クラス
AbstractReplyProducingMessageHandler
のgetIntegrationPatternType
- 戻り値:
- このコンポーネントが実装する
IntegrationPatternType
doInit
protected void doInit()- オーバーライド:
- クラス
AbstractReplyProducingMessageHandler
のdoInit
handleRequestMessage
クラスからコピーされた説明:AbstractReplyProducingMessageHandler
サブクラスはこのメソッドを実装して、リクエストメッセージを処理する必要があります。戻り値は、メッセージ、MessageBuilder、任意のプレーンオブジェクトです。基本クラスは、これらの開始点のいずれかからの返信メッセージの最終的な作成を処理します。戻り値が null の場合、メッセージフローはここで終了します。- 次で指定:
- クラス
AbstractReplyProducingMessageHandler
のhandleRequestMessage
- パラメーター:
message
- リクエストメッセージ。- 戻り値:
- メッセージを処理した結果、または
null
obtainSizeIfPossible
付属のIterable
SE のサイズを取得します。デフォルトの実装は、iterable がコレクションの場合はCollection.size()
を返し、それ以外の場合は0
を返します。iterable が JacksonTreeNode
の場合、そのサイズが使用されます。- パラメーター:
iterable
- サイズを取得するためのIterable
SE- 戻り値:
Iterable
SE のサイズ- 導入:
- 5.0
obtainSizeIfPossible
付属のIterator
SE のサイズを取得します。デフォルトの実装は0
を返します。- パラメーター:
iterator
- サイズを取得するためのIterator
SE- 戻り値:
Iterator
SE のサイズ- 導入:
- 5.0
willAddHeaders
サブクラスが結果の分割にヘッダーを追加する必要がある場合は、true を返します。true の場合、addHeaders(org.springframework.messaging.Message<?>, java.util.Map<java.lang.String, java.lang.Object>)
が呼び出されます。- パラメーター:
message
- メッセージ。- 戻り値:
- true
addHeaders
サブクラスが出力メッセージにヘッダーを追加できるようにします。この方法ではヘッダーを削除できません。- パラメーター:
message
- 受信メッセージ。headers
- メッセージを追加するヘッダー。
shouldCopyRequestHeaders
protected boolean shouldCopyRequestHeaders()クラスからコピーされた説明:AbstractMessageProducingHandler
サブクラスはこれをオーバーライドできます。デフォルトでは true。- オーバーライド:
- クラス
AbstractMessageProducingHandler
のshouldCopyRequestHeaders
- 戻り値:
- リクエストヘッダーをコピーする必要がある場合は true。
produceOutput
- オーバーライド:
- クラス
AbstractMessageProducingHandler
のproduceOutput
getComponentType
クラスからコピーされた説明:IntegrationObjectSupport
サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。- 次で指定:
- インターフェース
NamedComponent
のgetComponentType
- オーバーライド:
- クラス
MessageHandlerSupport
のgetComponentType
splitMessage
受信したメッセージを分割するには、サブクラスでこのメソッドをオーバーライドする必要があります。戻り値は、コレクションまたは配列です。個々の要素はメッセージの場合がありますが、必須ではありません。要素がメッセージではない場合、それぞれがメッセージのペイロードとして提供されます。単一のオブジェクトまたはメッセージを返すことも可能です。その場合、単一の応答メッセージが作成されます。- パラメーター:
message
- メッセージ。- 戻り値:
- メッセージを分割した結果。