Namespace: OpenEdge.Messaging.Kafka
Type: Class KafkaConsumerDelegate
Parent Classes:
Inherits: Progress.Lang.Object
Implements: OpenEdge.Messaging.Internal.IConsumerDelegate


/*
Copyright © 2021,2022 Progress Software Corporation and/or its subsidiaries or affiliates. All Rights Reserved.
Purpose:
This is an internal class used by the Kafka consumer to isolate
the BIO consumer for unit testing. This delegate object wraps
the BIO consumer and performs conversions on behalf of the consumer.



Method Summary
  Options Name Purpose
  CommitOffset (IConsumerRecord)
  ConvertBody (KafkaConsumerRecord) /** Convert BIO body data to an ABL object using the deserializer configured for the message's topic. */
  ConvertHeaders (KafkaConsumerRecord) /** Convert BIO header names and values to RecordHeader objects and store them in the Headers property of the ConsumerRecord. */
  ConvertKey (KafkaConsumerRecord) /** Convert BIO partition key data to an ABL object using the deserializer configured for the message's topic. */
  ConvertRecordProperties (KafkaConsumerRecord) /** Convert the various properties of the BIO consumer record, to the public API version of the consumer record. */
  ConvertTimestamp (KafkaConsumerRecord) /** Convert the BIO consumer record timestamp, which is supposed to be an int64 stored as milliseconds since unix epoch, to an ABL datetime-tz. */
  CHARACTER GetClientVersionName ()
  CHARACTER GetClientVersionNumber ()
  CHARACTER GetConfigOption (character)
  CHARACTER GetTopicConfigurationOption (character, character)
  Initialize ()
  OpenEdge.Messaging.IConsumerRecord Poll (integer) /** Poll for a record. if we get one, then wrap it in the public API version and convert its properties to make it easy for ABL developers to consume. */
  SetConfigOption (character, character)
  SetTopicConfigurationOption (character, character, character)
  Subscribe (character)

Constructor Summary
  Options Name Purpose
  KafkaConsumerDelegate (character)

Property Summary
  Options Name Purpose
  LOGICAL AutoDeleteGroup
  LOGICAL EnforceStrictConfigs
  OpenEdge.Messaging.Kafka.KafkaConsumer KafkaConsumer
  Progress.Lang.Object UnderlyingConsumer


Method Detail
Top

CommitOffset (IConsumerRecord)

Parameters:
consumerRecord OpenEdge.Messaging.IConsumerRecord
 
Top

ConvertBody (KafkaConsumerRecord)

Purpose:
Convert BIO body data to an ABL object using the deserializer
configured for the message's topic.
Parameters:
kafkaConsumerRecord OpenEdge.Messaging.Kafka.KafkaConsumerRecord
 
Top

ConvertHeaders (KafkaConsumerRecord)

Purpose:
Convert BIO header names and values to RecordHeader objects
and store them in the Headers property of the ConsumerRecord.
Parameters:
kafkaConsumerRecord OpenEdge.Messaging.Kafka.KafkaConsumerRecord
 
Top

ConvertKey (KafkaConsumerRecord)

Purpose:
Convert BIO partition key data to an ABL object using the deserializer
configured for the message's topic.
Parameters:
kafkaConsumerRecord OpenEdge.Messaging.Kafka.KafkaConsumerRecord
 
Top

ConvertRecordProperties (KafkaConsumerRecord)

Purpose:
Convert the various properties of the BIO consumer record, to the public
API version of the consumer record.
Parameters:
kafkaConsumerRecord OpenEdge.Messaging.Kafka.KafkaConsumerRecord
 
Top

ConvertTimestamp (KafkaConsumerRecord)

Purpose:
Convert the BIO consumer record timestamp, which is supposed to be
an int64 stored as milliseconds since unix epoch, to an ABL datetime-tz.
Parameters:
kafkaConsumerRecord OpenEdge.Messaging.Kafka.KafkaConsumerRecord
 
Top

CHARACTER GetClientVersionName ()

Returns CHARACTER
 
Top

CHARACTER GetClientVersionNumber ()

Returns CHARACTER
 
Top

CHARACTER GetConfigOption (character)

Parameters:
key CHARACTER
 
Returns CHARACTER
 
Top

CHARACTER GetTopicConfigurationOption (character, character)

Parameters:
topicName CHARACTER
 
key CHARACTER
 
Returns CHARACTER
 
Top

Initialize ()

Top

OpenEdge.Messaging.IConsumerRecord Poll (integer)

Purpose:
Poll for a record. if we get one, then wrap it in the public API
version and convert its properties to make it easy for ABL developers
to consume.
Parameters:
timeout INTEGER
 
Returns OpenEdge.Messaging.IConsumerRecord
 
Top

SetConfigOption (character, character)

Parameters:
key CHARACTER
 
val CHARACTER
 
Top

SetTopicConfigurationOption (character, character, character)

Parameters:
topicName CHARACTER
 
name CHARACTER
 
val CHARACTER
 
Top

Subscribe (character)

Parameters:
topicName CHARACTER
 


Constructor Detail
Top

KafkaConsumerDelegate (character)

Parameters:
libraryName CHARACTER
 


Property Detail
Top

LOGICAL AutoDeleteGroup

Returns LOGICAL
 
Top

LOGICAL EnforceStrictConfigs

Returns LOGICAL
 
Top

OpenEdge.Messaging.Kafka.KafkaConsumer KafkaConsumer

Returns OpenEdge.Messaging.Kafka.KafkaConsumer
 
Top

Progress.Lang.Object UnderlyingConsumer

Returns Progress.Lang.Object