クラス AggregatingReplyingKafkaTemplate<K,V,R>
java.lang.ObjectSE
org.springframework.kafka.core.KafkaTemplate<K,V>
org.springframework.kafka.requestreply.ReplyingKafkaTemplate <K、V、コレクションSE<org.apache.kafka.clients.consumer.ConsumerRecord<K、R>>>
org.springframework.kafka.requestreply.AggregatingReplyingKafkaTemplate<K,V,R>
- 型パラメーター:
K- 鍵の型。V- 送信データ型。R- 応答データ型。
- 実装されているすべてのインターフェース:
EventListenerSE、Aware、BeanNameAware、DisposableBean、InitializingBean、SmartInitializingSingleton、ApplicationContextAware、ApplicationListener<ContextStoppedEvent>、Lifecycle、Phased、SmartLifecycle、KafkaOperations<K,、V> BatchConsumerAwareMessageListener<K, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K,、R>>> BatchMessageListener<K, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K,、R>>> ConsumerSeekAware、GenericMessageListener<ListSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K,、R>>>>> ReplyingKafkaOperations<K, V, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K,R>>>
public class AggregatingReplyingKafkaTemplate<K,V,R>
extends ReplyingKafkaTemplate<K, V, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K,R>>>
implements BatchConsumerAwareMessageListener<K, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K,R>>>
同じ相関 ID を持つ複数の応答を集約する応答テンプレート。
- 導入:
- 2.3
- 作成者:
- Gary Russell, Sanghyeok An
ネストされたクラスの要約
インターフェース org.springframework.kafka.listener.ConsumerSeekAware から継承されたネストクラス / インターフェース
ConsumerSeekAware.ConsumerSeekCallbackインターフェース org.springframework.kafka.core.KafkaOperations から継承されたネストクラス / インターフェース
KafkaOperations.OperationsCallback<K,V, T>, KafkaOperations.ProducerCallback<K, V, T> フィールドのサマリー
フィールド修飾子と型フィールド説明static final StringSE集約された結果を持つ「外部」ConsumerRecordの疑似トピック名は、リリース戦略による通常のリリース後の値になります。static final StringSE集約された結果を持つ「外部」ConsumerRecordの疑似トピック名は、タイムアウト後の値になります。クラス org.springframework.kafka.core.KafkaTemplate から継承されたフィールド
loggerインターフェース org.springframework.kafka.core.KafkaOperations から継承されたフィールド
DEFAULT_POLL_TIMEOUTインターフェース org.springframework.context.SmartLifecycle から継承されたフィールド
DEFAULT_PHASEコンストラクターの概要
コンストラクターコンストラクター説明AggregatingReplyingKafkaTemplate(ProducerFactory<K, V> producerFactory, GenericMessageListenerContainer<K, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, R>>> replyContainer, BiPredicateSE<ListSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, R>>, BooleanSE> releaseStrategy) 提供されたパラメーター引数を使用してインスタンスを構築します。メソッドのサマリー
修飾子と型メソッド説明protected booleanhandleTimeout(ObjectSE correlationId, RequestReplyFuture<K, V, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, R>>> future) リクエストがタイムアウトしたことをサブクラスに通知して、状態をクリーンアップし、オプションでフューチャーを完了することができるようにするために使用されます。voidonMessage(ListSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, R>>>> data, org.apache.kafka.clients.consumer.Consumer<?, ?> consumer) kafka からのデータで呼び出され、Consumerへのアクセスを提供します。voidsetCommitTimeout(DurationSE commitTimeout) オフセットをコミットするときに使用するタイムアウトを設定します。voidsetReturnPartialOnTimeout(boolean returnPartialOnTimeout) true に設定すると、リクエストがタイムアウトしたときに部分的な結果が返されます。クラス org.springframework.kafka.requestreply.ReplyingKafkaTemplate から継承されたメソッド
afterPropertiesSet, checkDeserialization, checkForErrors, destroy, getAssignedReplyTopicPartitions, getCorrelationHeaderName, getDefaultReplyTimeout, getPhase, isAutoStartup, isBinaryCorrelation, isPending, isRunning, logLateArrival, onFirstPoll, onMessage, sendAndReceive, sendAndReceive, sendAndReceive, sendAndReceive, sendAndReceive, sendAndReceive, setAutoStartup, setBinaryCorrelation, setCorrelationHeaderName, setCorrelationIdStrategy, setDefaultReplyTimeout, setPhase, setReplyErrorChecker, setReplyPartitionHeaderName, setReplyTopicHeaderName, setSharedReplyTopic, setTaskScheduler, start, stop, stop, waitForAssignmentクラス org.springframework.kafka.core.KafkaTemplate から継承されたメソッド
afterSingletonsInstantiated, closeProducer, clusterId, doSend, execute, executeInTransaction, flush, getDefaultTopic, getKafkaAdmin, getMessageConverter, getMicrometerTagsProvider, getObservationRegistry, getProducerFactory, getProducerFactory, getTheProducer, getTransactionIdPrefix, inTransaction, isAllowNonTransactional, isTransactional, metrics, onApplicationEvent, partitionsFor, receive, receive, send, send, send, send, send, send, sendDefault, sendDefault, sendDefault, sendDefault, sendOffsetsToTransaction, setAllowNonTransactional, setApplicationContext, setBeanName, setCloseTimeout, setConsumerFactory, setDefaultTopic, setKafkaAdmin, setMessageConverter, setMessagingConverter, setMicrometerEnabled, setMicrometerTags, setMicrometerTagsProvider, setObservationConvention, setObservationEnabled, setObservationRegistry, setProducerInterceptor, setProducerListener, setTransactionIdPrefixクラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース org.springframework.context.ApplicationListener から継承されたメソッド
supportsAsyncExecutionインターフェース org.springframework.kafka.listener.BatchConsumerAwareMessageListener から継承されたメソッド
onMessageインターフェース org.springframework.kafka.listener.BatchMessageListener から継承されたメソッド
onMessage, wantsPollResultインターフェース org.springframework.kafka.listener.ConsumerSeekAware から継承されたメソッド
onIdleContainer, onPartitionsAssigned, onPartitionsRevoked, registerSeekCallback, unregisterSeekCallbackインターフェース org.springframework.kafka.listener.GenericMessageListener から継承されたメソッド
onMessage, onMessageインターフェース org.springframework.kafka.core.KafkaOperations から継承されたメソッド
receive, receive
フィールドの詳細
AGGREGATED_RESULTS_TOPIC
集約された結果を持つ「外部」ConsumerRecordの疑似トピック名は、リリース戦略による通常のリリース後の値になります。- 関連事項:
PARTIAL_RESULTS_AFTER_TIMEOUT_TOPIC
集約された結果を持つ「外部」ConsumerRecordの疑似トピック名は、タイムアウト後の値になります。- 関連事項:
コンストラクターの詳細
AggregatingReplyingKafkaTemplate
public AggregatingReplyingKafkaTemplate(ProducerFactory<K, V> producerFactory, GenericMessageListenerContainer<K, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, R>>> replyContainer, BiPredicateSE<ListSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, R>>, BooleanSE> releaseStrategy) 指定されたパラメーター引数を使用してインスタンスを構築します。コレクションがいつ「完了」するかを判断するために、releaseStrategy が参照されます。- パラメーター:
producerFactory- プロデューサーファクトリ。replyContainer- 返信コンテナー。releaseStrategy- 現在のリストと、これが通常の配信かタイムアウト (setReturnPartialOnTimeout(boolean)が true の場合) かを示すブール値が渡されるBiPredicateSE であるリリース戦略。述語はレコードのリストを変更する場合があります。- 導入:
- 2.3.5
メソッドの詳細
setCommitTimeout
オフセットをコミットするときに使用するタイムアウトを設定します。- パラメーター:
commitTimeout- タイムアウト。
setReturnPartialOnTimeout
public void setReturnPartialOnTimeout(boolean returnPartialOnTimeout) true に設定すると、リクエストがタイムアウトしたときに部分的な結果が返されます。- パラメーター:
returnPartialOnTimeout- 部分的な結果を返す場合は true。
onMessage
public void onMessage(ListSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, R>>>> data, org.apache.kafka.clients.consumer.Consumer<?, ?> consumer) インターフェースからコピーされた説明:GenericMessageListenerkafka からのデータで呼び出され、Consumerへのアクセスを提供します。デフォルトの実装はUnsupportedOperationExceptionSE をスローします。- 次で指定:
- インターフェース
BatchConsumerAwareMessageListener<K,のV> onMessage - 次で指定:
- インターフェース
GenericMessageListener<K>のonMessage - パラメーター:
data- 処理されるデータ。consumer- コンシューマー。
handleTimeout
protected boolean handleTimeout(ObjectSE correlationId, RequestReplyFuture<K, V, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K, R>>> future) クラスからコピーされた説明:ReplyingKafkaTemplateリクエストがタイムアウトしたことをサブクラスに通知して、状態をクリーンアップし、オプションでフューチャーを完了することができるようにするために使用されます。- オーバーライド:
- クラス
ReplyingKafkaTemplate<K, V, CollectionSE<org.apache.kafka.clients.consumer.ConsumerRecord<K,のR>>> handleTimeout - パラメーター:
correlationId- 相関 ID。future- 未来。- 戻り値:
- true は、将来が完了したことを示します。