クラス 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、ComponentSourceAware、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, Ngoc Nhan
ネストされたクラスの概要
クラス 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 voidaddHeaders(Message<?> message, MapSE<StringSE, ObjectSE> headers) サブクラスが出力メッセージにヘッダーを追加できるようにします。protected voiddoInit()サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。破棄チャネルを返します。このコンポーネントが実装するパターン型を返します。protected final ObjectSEhandleRequestMessage(Message<?> message) サブクラスはこのメソッドを実装して、リクエストメッセージを処理する必要があります。protected intobtainSizeIfPossible(IterableSE<?> iterable) 付属のIterableSE のサイズを取得します。protected intobtainSizeIfPossible(IteratorSE<?> iterator) 付属のIteratorSE のサイズを取得します。protected voidproduceOutput(ObjectSE result, Message<?> requestMessage) final voidsetApplySequence(boolean applySequence) applySequence フラグを指定された値に設定します。voidsetDiscardChannel(MessageChannel discardChannel) 拒否されたメッセージを送信するチャネルを指定します。voidsetDiscardChannelName(StringSE discardChannelName) 拒否されたメッセージを送信するチャネル Bean 名(MessageChannelに遅延解決)を指定します。protected booleanサブクラスはこれをオーバーライドできます。protected abstract ObjectSEsplitMessage(Message<?> message) 受信したメッセージを分割するには、サブクラスでこのメソッドをオーバーライドする必要があります。protected booleanwillAddHeaders(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, 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インターフェース 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 final 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
付属のIterableSE のサイズを取得します。デフォルトの実装は、iterable がコレクションの場合はCollection.size()を返し、それ以外の場合は0を返します。iterable が JacksonTreeNodeの場合、そのサイズが使用されます。- パラメーター:
iterable- サイズを取得するためのIterableSE- 戻り値:
IterableSE のサイズ- 導入:
- 5.0
obtainSizeIfPossible
付属のIteratorSE のサイズを取得します。デフォルトの実装は0を返します。- パラメーター:
iterator- サイズを取得するためのIteratorSE- 戻り値:
IteratorSE のサイズ- 導入:
- 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- メッセージ。- 戻り値:
- メッセージを分割した結果。