クラス BatchMessagingMessageConverter
java.lang.ObjectSE
org.springframework.kafka.support.converter.BatchMessagingMessageConverter
- 実装されたすべてのインターフェース:
BatchMessageConverter
,MessageConverter
バッチメッセージリスナーで使用されるメッセージング
MessageConverter
実装。コンシューマーレコードの値は、メッセージペイロードのコレクションに抽出されます。 返されたメッセージに ConsumerRecord
に基づいて KafkaHeaders
を設定します。各ヘッダーは、コレクション内の位置がペイロードの位置と一致するコレクションです。
RecordMessageConverter
が指定され、バッチ型が 1 つのジェネリクス型パラメーターを持つ ParameterizedType
SE である場合、各レコードはコンバーターに渡され、メソッドシグネチャー List<MyType> myObjects
がサポートされます。
- 導入:
- 1.1
- 作成者:
- Marius Bogoevici, Gary Russell, Dariusz Szablinski, Biju Kunjummen, Sanghyeok An, Hope Kim, Borahm Lee, Artem Bilan
フィールドのサマリー
フィールドコンストラクターの概要
コンストラクターコンストラクター説明レコード値を変換しないインスタンスを作成します。BatchMessagingMessageConverter
(RecordMessageConverter recordConverter) 提供されたコンバーターを使用してレコード値を変換するインスタンスを作成します。メソッドのサマリー
修飾子と型メソッド説明protected ObjectSE
convert
(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record, TypeSE type, ListSE<ConversionException> conversionFailures) レコード値を変換します。protected ObjectSE
extractAndConvertValue
(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record, TypeSE type) サブクラスは値を変換できます。デフォルトでは、RecordMessageConverter
が提供されていない限り、Kafka によって提供されたとおりに返されます。ListSE<org.apache.kafka.clients.producer.ProducerRecord<?,
?>> fromMessage
(Message<?> message, StringSE defaultTopic) メッセージをプロデューサーレコードに変換します。このバッチコンバーターが使用するレコードコンバーター (構成されている場合) または null を返します。void
setGenerateMessageId
(boolean generateMessageId) 作成されたメッセージに対してMessage
ids
を生成します。void
setGenerateTimestamp
(boolean generateTimestamp) 生成されたメッセージに対してtimestamp
を生成します。void
setHeaderMapper
(KafkaHeaderMapper headerMapper) ヘッダーマッパーを設定してヘッダーをマップします。void
setRawRecordHeader
(boolean rawRecordHeader) true に設定すると、生のList<ConsumerRecord<?, ?>>
がヘッダーKafkaHeaders.RAW_DATA
として追加されます。Message<?>
toMessage
(ListSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>> records, Acknowledgment acknowledgment, org.apache.kafka.clients.consumer.Consumer<?, ?> consumer, TypeSE type) ConsumerRecord
のリストをMessage
に変換します。クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース org.springframework.kafka.support.converter.MessageConverter から継承されたメソッド
commonHeaders
フィールドの詳細
logger
コンストラクターの詳細
BatchMessagingMessageConverter
public BatchMessagingMessageConverter()レコード値を変換しないインスタンスを作成します。BatchMessagingMessageConverter
提供されたコンバーターを使用してレコード値を変換するインスタンスを作成します。- パラメーター:
recordConverter
- コンバーター。- 導入:
- 1.3.2
メソッドの詳細
setGenerateMessageId
public void setGenerateMessageId(boolean generateMessageId) - パラメーター:
generateMessageId
- メッセージ ID を生成する必要がある場合は true
setGenerateTimestamp
public void setGenerateTimestamp(boolean generateTimestamp) 生成されたメッセージに対してtimestamp
を生成します。false
に設定されている場合、代わりに -1 が使用されます。デフォルトでは、false
に設定されます。- パラメーター:
generateTimestamp
- タイムスタンプを生成する必要がある場合は true
setHeaderMapper
ヘッダーマッパーを設定してヘッダーをマップします。- パラメーター:
headerMapper
- マッパー。- 導入:
- 1.3
getRecordMessageConverter
インターフェースからコピーされた説明:BatchMessageConverter
このバッチコンバーターが使用するレコードコンバーター (構成されている場合) または null を返します。- 次で指定:
- インターフェース
BatchMessageConverter
のgetRecordMessageConverter
- 戻り値:
- コンバーターまたは null。
setRawRecordHeader
public void setRawRecordHeader(boolean rawRecordHeader) true に設定すると、生のList<ConsumerRecord<?, ?>>
がヘッダーKafkaHeaders.RAW_DATA
として追加されます。- パラメーター:
rawRecordHeader
- true の場合、ヘッダーを追加します。- 導入:
- 2.7
toMessage
public Message<?> toMessage(ListSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>> records, @Nullable Acknowledgment acknowledgment, org.apache.kafka.clients.consumer.Consumer<?, ?> consumer, TypeSE type) インターフェースからコピーされた説明:BatchMessageConverter
ConsumerRecord
のリストをMessage
に変換します。- 次で指定:
- インターフェース
BatchMessageConverter
のtoMessage
- パラメーター:
records
- 記録。acknowledgment
- 承認。consumer
- コンシューマー。type
- 必要なペイロード型。- 戻り値:
- メッセージ。
fromMessage
public ListSE<org.apache.kafka.clients.producer.ProducerRecord<?,?>> fromMessage(Message<?> message, StringSE defaultTopic) インターフェースからコピーされた説明:BatchMessageConverter
メッセージをプロデューサーレコードに変換します。- 次で指定:
- インターフェース
BatchMessageConverter
のfromMessage
- パラメーター:
message
- メッセージ。defaultTopic
- ヘッダーが見つからない場合に使用するデフォルトのトピック。- 戻り値:
- プロデューサーの記録。
extractAndConvertValue
protected ObjectSE extractAndConvertValue(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record, TypeSE type) サブクラスは値を変換できます。デフォルトでは、RecordMessageConverter
が提供されていない限り、Kafka によって提供されたとおりに返されます。- パラメーター:
record
- レコード。type
- 必要な型。- 戻り値:
- 値。
convert
protected ObjectSE convert(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record, TypeSE type, ListSE<ConversionException> conversionFailures) レコード値を変換します。- パラメーター:
record
- レコード。type
- 型 - 単一のジェネリクス型パラメーターを持つParameterizedType
SE でなければなりません。conversionFailures
- 変換の失敗。- 戻り値:
- 変換されたペイロード。