io.vertx.kafka.client.consumer

## Interface KafkaConsumer<K,V>

- All Superinterfaces:
    ReadStream<KafkaConsumerRecord<K,V>>, StreamBase

      public interface KafkaConsumer<K,V>
      extends ReadStream<KafkaConsumerRecord<K,V>>

  Vert.x Kafka consumer.

  You receive Kafka records by providing a `handler(Handler)`. As messages arrive the handler will be called with the records.

  The `pause()` and `resume()` provides global control over reading the records from the consumer.

  The `pause(Set)` and `resume(Set)` provides finer grained control over reading records for specific Topic/Partition, these are Kafka's specific operations.

- - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `KafkaConsumer<K,V>` | `assign(Set<TopicPartition> topicPartitions)` Manually assign a list of partition to this consumer.
    `KafkaConsumer<K,V>` | `assign(Set<TopicPartition> topicPartitions, Handler<AsyncResult<Void>> completionHandler)` Manually assign a list of partition to this consumer.
    `KafkaConsumer<K,V>` | `assign(TopicPartition topicPartition)` Manually assign a partition to this consumer.
    `KafkaConsumer<K,V>` | `assign(TopicPartition topicPartition, Handler<AsyncResult<Void>> completionHandler)` Manually assign a partition to this consumer.
    `KafkaConsumer<K,V>` | `assignment(Handler<AsyncResult<Set<TopicPartition>>> handler)` Get the set of partitions currently assigned to this consumer.
    `KafkaReadStream<K,V>` | `asStream()`
    `KafkaConsumer<K,V>` | `batchHandler(Handler<KafkaConsumerRecords<K,V>> handler)` Set the handler to be used when batches of messages are fetched from the Kafka server.
    `void` | `beginningOffsets(Set<TopicPartition> topicPartitions, Handler<AsyncResult<Map<TopicPartition,Long>>> handler)` Get the first offset for the given partitions.
    `void` | `beginningOffsets(TopicPartition topicPartition, Handler<AsyncResult<Long>> handler)` Get the first offset for the given partitions.
    `default void` | `close()` Close the consumer
    `void` | `close(Handler<AsyncResult<Void>> completionHandler)` Close the consumer
    `void` | `commit()` Commit current offsets for all the subscribed list of topics and partition.
    `void` | `commit(Handler<AsyncResult<Void>> completionHandler)` Commit current offsets for all the subscribed list of topics and partition.
    `void` | `commit(Map<TopicPartition,OffsetAndMetadata> offsets)` Commit the specified offsets for the specified list of topics and partitions to Kafka.
    `void` | `commit(Map<TopicPartition,OffsetAndMetadata> offsets, Handler<AsyncResult<Map<TopicPartition,OffsetAndMetadata>>> completionHandler)` Commit the specified offsets for the specified list of topics and partitions to Kafka.
    `void` | `committed(TopicPartition topicPartition, Handler<AsyncResult<OffsetAndMetadata>> handler)` Get the last committed offset for the given partition (whether the commit happened by this process or another).
    `static <K,V> KafkaConsumer<K,V>` | `create(Vertx vertx, org.apache.kafka.clients.consumer.Consumer<K,V> consumer)` Create a new KafkaConsumer instance from a native `Consumer`.
    `static <K,V> KafkaConsumer<K,V>` | `create(Vertx vertx, Map<String,String> config)` Create a new KafkaConsumer instance
    `static <K,V> KafkaConsumer<K,V>` | `create(Vertx vertx, Map<String,String> config, Class<K> keyType, Class<V> valueType)` Create a new KafkaConsumer instance
    `static <K,V> KafkaConsumer<K,V>` | `create(Vertx vertx, Properties config)` Create a new KafkaConsumer instance
    `static <K,V> KafkaConsumer<K,V>` | `create(Vertx vertx, Properties config, Class<K> keyType, Class<V> valueType)` Create a new KafkaConsumer instance
    `KafkaConsumer<K,V>` | `endHandler(Handler<Void> endHandler)` Set an end handler.
    `void` | `endOffsets(Set<TopicPartition> topicPartitions, Handler<AsyncResult<Map<TopicPartition,Long>>> handler)` Get the last offset for the given partitions.
    `void` | `endOffsets(TopicPartition topicPartition, Handler<AsyncResult<Long>> handler)` Get the last offset for the given partition.
    `KafkaConsumer<K,V>` | `exceptionHandler(Handler<Throwable> handler)` Set an exception handler on the read stream.
    `KafkaConsumer<K,V>` | `handler(Handler<KafkaConsumerRecord<K,V>> handler)` Set a data handler.
    `KafkaConsumer<K,V>` | `listTopics(Handler<AsyncResult<Map<String,List<PartitionInfo>>>> handler)` Get metadata about partitions for all topics that the user is authorized to view.
    `void` | `offsetsForTimes(Map<TopicPartition,Long> topicPartitionTimestamps, Handler<AsyncResult<Map<TopicPartition,OffsetAndTimestamp>>> handler)` Look up the offsets for the given partitions by timestamp.
    `void` | `offsetsForTimes(TopicPartition topicPartition, Long timestamp, Handler<AsyncResult<OffsetAndTimestamp>> handler)` Look up the offset for the given partition by timestamp.
    `KafkaConsumer<K,V>` | `partitionsAssignedHandler(Handler<Set<TopicPartition>> handler)` Set the handler called when topic partitions are assigned to the consumer
    `KafkaConsumer<K,V>` | `partitionsFor(String topic, Handler<AsyncResult<List<PartitionInfo>>> handler)` Get metadata about the partitions for a given topic.
    `KafkaConsumer<K,V>` | `partitionsRevokedHandler(Handler<Set<TopicPartition>> handler)` Set the handler called when topic partitions are revoked to the consumer
    `KafkaConsumer<K,V>` | `pause()` Pause the `ReadSupport`.
    `KafkaConsumer<K,V>` | `pause(Set<TopicPartition> topicPartitions)` Suspend fetching from the requested partitions.
    `KafkaConsumer<K,V>` | `pause(Set<TopicPartition> topicPartitions, Handler<AsyncResult<Void>> completionHandler)` Suspend fetching from the requested partitions.
    `KafkaConsumer<K,V>` | `pause(TopicPartition topicPartition)` Suspend fetching from the requested partition.
    `KafkaConsumer<K,V>` | `pause(TopicPartition topicPartition, Handler<AsyncResult<Void>> completionHandler)` Suspend fetching from the requested partition.
    `void` | `paused(Handler<AsyncResult<Set<TopicPartition>>> handler)` Get the set of partitions that were previously paused by a call to pause(Set).
    `void` | `position(TopicPartition partition, Handler<AsyncResult<Long>> handler)` Get the offset of the next record that will be fetched (if a record with that offset exists).
    `KafkaConsumer<K,V>` | `resume()` Resume reading.
    `KafkaConsumer<K,V>` | `resume(Set<TopicPartition> topicPartitions)` Resume specified partitions which have been paused with pause.
    `KafkaConsumer<K,V>` | `resume(Set<TopicPartition> topicPartitions, Handler<AsyncResult<Void>> completionHandler)` Resume specified partitions which have been paused with pause.
    `KafkaConsumer<K,V>` | `resume(TopicPartition topicPartition)` Resume specified partition which have been paused with pause.
    `KafkaConsumer<K,V>` | `resume(TopicPartition topicPartition, Handler<AsyncResult<Void>> completionHandler)` Resume specified partition which have been paused with pause.
    `KafkaConsumer<K,V>` | `seek(TopicPartition topicPartition, long offset)` Overrides the fetch offsets that the consumer will use on the next poll.
    `KafkaConsumer<K,V>` | `seek(TopicPartition topicPartition, long offset, Handler<AsyncResult<Void>> completionHandler)` Overrides the fetch offsets that the consumer will use on the next poll.
    `KafkaConsumer<K,V>` | `seekToBeginning(Set<TopicPartition> topicPartitions)` Seek to the first offset for each of the given partitions.
    `KafkaConsumer<K,V>` | `seekToBeginning(Set<TopicPartition> topicPartitions, Handler<AsyncResult<Void>> completionHandler)` Seek to the first offset for each of the given partitions.
    `KafkaConsumer<K,V>` | `seekToBeginning(TopicPartition topicPartition)` Seek to the first offset for each of the given partition.
    `KafkaConsumer<K,V>` | `seekToBeginning(TopicPartition topicPartition, Handler<AsyncResult<Void>> completionHandler)` Seek to the first offset for each of the given partition.
    `KafkaConsumer<K,V>` | `seekToEnd(Set<TopicPartition> topicPartitions)` Seek to the last offset for each of the given partitions.
    `KafkaConsumer<K,V>` | `seekToEnd(Set<TopicPartition> topicPartitions, Handler<AsyncResult<Void>> completionHandler)` Seek to the last offset for each of the given partitions.
    `KafkaConsumer<K,V>` | `seekToEnd(TopicPartition topicPartition)` Seek to the last offset for each of the given partition.
    `KafkaConsumer<K,V>` | `seekToEnd(TopicPartition topicPartition, Handler<AsyncResult<Void>> completionHandler)` Seek to the last offset for each of the given partition.
    `KafkaConsumer<K,V>` | `subscribe(Set<String> topics)` Subscribe to the given list of topics to get dynamically assigned partitions.
    `KafkaConsumer<K,V>` | `subscribe(Set<String> topics, Handler<AsyncResult<Void>> completionHandler)` Subscribe to the given list of topics to get dynamically assigned partitions.
    `KafkaConsumer<K,V>` | `subscribe(String topic)` Subscribe to the given topic to get dynamically assigned partitions.
    `KafkaConsumer<K,V>` | `subscribe(String topic, Handler<AsyncResult<Void>> completionHandler)` Subscribe to the given topic to get dynamically assigned partitions.
    `KafkaConsumer<K,V>` | `subscription(Handler<AsyncResult<Set<String>>> handler)` Get the current subscription.
    `KafkaConsumer<K,V>` | `unsubscribe()` Unsubscribe from topics currently subscribed with subscribe.
    `KafkaConsumer<K,V>` | `unsubscribe(Handler<AsyncResult<Void>> completionHandler)` Unsubscribe from topics currently subscribed with subscribe.
    `org.apache.kafka.clients.consumer.Consumer<K,V>` | `unwrap()`

- - ### Method Detail

    - #### create

          static <K,V> KafkaConsumer<K,V> create(Vertx vertx,
                                                 org.apache.kafka.clients.consumer.Consumer<K,V> consumer)

      Create a new KafkaConsumer instance from a native `Consumer`.
      Parameters:
        `vertx` - Vert.x instance to use
        `consumer` - the Kafka consumer to wrap
      Returns:
        an instance of the KafkaConsumer

    - #### create

          static <K,V> KafkaConsumer<K,V> create(Vertx vertx,
                                                 Map<String,String> config)

      Create a new KafkaConsumer instance
      Parameters:
        `vertx` - Vert.x instance to use
        `config` - Kafka consumer configuration
      Returns:
        an instance of the KafkaConsumer

    - #### create

          static <K,V> KafkaConsumer<K,V> create(Vertx vertx,
                                                 Map<String,String> config,
                                                 Class<K> keyType,
                                                 Class<V> valueType)

      Create a new KafkaConsumer instance
      Parameters:
        `vertx` - Vert.x instance to use
        `config` - Kafka consumer configuration
        `keyType` - class type for the key deserialization
        `valueType` - class type for the value deserialization
      Returns:
        an instance of the KafkaConsumer

    - #### create

          static <K,V> KafkaConsumer<K,V> create(Vertx vertx,
                                                 Properties config)

      Create a new KafkaConsumer instance
      Parameters:
        `vertx` - Vert.x instance to use
        `config` - Kafka consumer configuration
      Returns:
        an instance of the KafkaConsumer

    - #### create

          static <K,V> KafkaConsumer<K,V> create(Vertx vertx,
                                                 Properties config,
                                                 Class<K> keyType,
                                                 Class<V> valueType)

      Create a new KafkaConsumer instance
      Parameters:
        `vertx` - Vert.x instance to use
        `config` - Kafka consumer configuration
        `keyType` - class type for the key deserialization
        `valueType` - class type for the value deserialization
      Returns:
        an instance of the KafkaConsumer

    - #### exceptionHandler

          KafkaConsumer<K,V> exceptionHandler(Handler<Throwable> handler)

      Description copied from interface: `ReadStream`
      Set an exception handler on the read stream.
      Specified by:
        `exceptionHandler` in interface `ReadStream<KafkaConsumerRecord<K,V>>`
      Specified by:
        `exceptionHandler` in interface `StreamBase`
      Parameters:
        `handler` - the exception handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### handler

          KafkaConsumer<K,V> handler(Handler<KafkaConsumerRecord<K,V>> handler)

      Description copied from interface: `ReadStream`
      Set a data handler. As data is read, the handler will be called with the data.
      Specified by:
        `handler` in interface `ReadStream<KafkaConsumerRecord<K,V>>`
      Returns:
        a reference to this, so the API can be used fluently

    - #### pause

          KafkaConsumer<K,V> pause()

      Description copied from interface: `ReadStream`
      Pause the `ReadSupport`. While it's paused, no data will be sent to the `dataHandler`
      Specified by:
        `pause` in interface `ReadStream<KafkaConsumerRecord<K,V>>`
      Returns:
        a reference to this, so the API can be used fluently

    - #### resume

          KafkaConsumer<K,V> resume()

      Description copied from interface: `ReadStream`
      Resume reading. If the `ReadSupport` has been paused, reading will recommence on it.
      Specified by:
        `resume` in interface `ReadStream<KafkaConsumerRecord<K,V>>`
      Returns:
        a reference to this, so the API can be used fluently

    - #### endHandler

          KafkaConsumer<K,V> endHandler(Handler<Void> endHandler)

      Description copied from interface: `ReadStream`
      Set an end handler. Once the stream has ended, and there is no more data to be read, this handler will be called.
      Specified by:
        `endHandler` in interface `ReadStream<KafkaConsumerRecord<K,V>>`
      Returns:
        a reference to this, so the API can be used fluently

    - #### subscribe

          KafkaConsumer<K,V> subscribe(String topic)

      Subscribe to the given topic to get dynamically assigned partitions.
      Parameters:
        `topic` - topic to subscribe to
      Returns:
        current KafkaConsumer instance

    - #### subscribe

          KafkaConsumer<K,V> subscribe(Set<String> topics)

      Subscribe to the given list of topics to get dynamically assigned partitions.
      Parameters:
        `topics` - topics to subscribe to
      Returns:
        current KafkaConsumer instance

    - #### subscribe

          KafkaConsumer<K,V> subscribe(String topic,
                                       Handler<AsyncResult<Void>> completionHandler)

      Subscribe to the given topic to get dynamically assigned partitions.
      Parameters:
        `topic` - topic to subscribe to
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### subscribe

          KafkaConsumer<K,V> subscribe(Set<String> topics,
                                       Handler<AsyncResult<Void>> completionHandler)

      Subscribe to the given list of topics to get dynamically assigned partitions.
      Parameters:
        `topics` - topics to subscribe to
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### assign

          KafkaConsumer<K,V> assign(TopicPartition topicPartition)

      Manually assign a partition to this consumer.
      Parameters:
        `topicPartition` - partition which want assigned
      Returns:
        current KafkaConsumer instance

    - #### assign

          KafkaConsumer<K,V> assign(Set<TopicPartition> topicPartitions)

      Manually assign a list of partition to this consumer.
      Parameters:
        `topicPartitions` - partitions which want assigned
      Returns:
        current KafkaConsumer instance

    - #### assign

          KafkaConsumer<K,V> assign(TopicPartition topicPartition,
                                    Handler<AsyncResult<Void>> completionHandler)

      Manually assign a partition to this consumer.
      Parameters:
        `topicPartition` - partition which want assigned
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### assign

          KafkaConsumer<K,V> assign(Set<TopicPartition> topicPartitions,
                                    Handler<AsyncResult<Void>> completionHandler)

      Manually assign a list of partition to this consumer.
      Parameters:
        `topicPartitions` - partitions which want assigned
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### assignment

          KafkaConsumer<K,V> assignment(Handler<AsyncResult<Set<TopicPartition>>> handler)

      Get the set of partitions currently assigned to this consumer.
      Parameters:
        `handler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### listTopics

          KafkaConsumer<K,V> listTopics(Handler<AsyncResult<Map<String,List<PartitionInfo>>>> handler)

      Get metadata about partitions for all topics that the user is authorized to view.
      Parameters:
        `handler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### unsubscribe

          KafkaConsumer<K,V> unsubscribe()

      Unsubscribe from topics currently subscribed with subscribe.
      Returns:
        current KafkaConsumer instance

    - #### unsubscribe

          KafkaConsumer<K,V> unsubscribe(Handler<AsyncResult<Void>> completionHandler)

      Unsubscribe from topics currently subscribed with subscribe.
      Parameters:
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### subscription

          KafkaConsumer<K,V> subscription(Handler<AsyncResult<Set<String>>> handler)

      Get the current subscription.
      Parameters:
        `handler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### pause

          KafkaConsumer<K,V> pause(TopicPartition topicPartition)

      Suspend fetching from the requested partition.
      Parameters:
        `topicPartition` - topic partition from which suspend fetching
      Returns:
        current KafkaConsumer instance

    - #### pause

          KafkaConsumer<K,V> pause(Set<TopicPartition> topicPartitions)

      Suspend fetching from the requested partitions.
      Parameters:
        `topicPartitions` - topic partition from which suspend fetching
      Returns:
        current KafkaConsumer instance

    - #### pause

          KafkaConsumer<K,V> pause(TopicPartition topicPartition,
                                   Handler<AsyncResult<Void>> completionHandler)

      Suspend fetching from the requested partition.
      Parameters:
        `topicPartition` - topic partition from which suspend fetching
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### pause

          KafkaConsumer<K,V> pause(Set<TopicPartition> topicPartitions,
                                   Handler<AsyncResult<Void>> completionHandler)

      Suspend fetching from the requested partitions.
      Parameters:
        `topicPartitions` - topic partition from which suspend fetching
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### paused

          void paused(Handler<AsyncResult<Set<TopicPartition>>> handler)

      Get the set of partitions that were previously paused by a call to pause(Set).
      Parameters:
        `handler` - handler called on operation completed

    - #### resume

          KafkaConsumer<K,V> resume(TopicPartition topicPartition)

      Resume specified partition which have been paused with pause.
      Parameters:
        `topicPartition` - topic partition from which resume fetching
      Returns:
        current KafkaConsumer instance

    - #### resume

          KafkaConsumer<K,V> resume(Set<TopicPartition> topicPartitions)

      Resume specified partitions which have been paused with pause.
      Parameters:
        `topicPartitions` - topic partition from which resume fetching
      Returns:
        current KafkaConsumer instance

    - #### resume

          KafkaConsumer<K,V> resume(TopicPartition topicPartition,
                                    Handler<AsyncResult<Void>> completionHandler)

      Resume specified partition which have been paused with pause.
      Parameters:
        `topicPartition` - topic partition from which resume fetching
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### resume

          KafkaConsumer<K,V> resume(Set<TopicPartition> topicPartitions,
                                    Handler<AsyncResult<Void>> completionHandler)

      Resume specified partitions which have been paused with pause.
      Parameters:
        `topicPartitions` - topic partition from which resume fetching
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### partitionsRevokedHandler

          KafkaConsumer<K,V> partitionsRevokedHandler(Handler<Set<TopicPartition>> handler)

      Set the handler called when topic partitions are revoked to the consumer
      Parameters:
        `handler` - handler called on revoked topic partitions
      Returns:
        current KafkaConsumer instance

    - #### partitionsAssignedHandler

          KafkaConsumer<K,V> partitionsAssignedHandler(Handler<Set<TopicPartition>> handler)

      Set the handler called when topic partitions are assigned to the consumer
      Parameters:
        `handler` - handler called on assigned topic partitions
      Returns:
        current KafkaConsumer instance

    - #### seek

          KafkaConsumer<K,V> seek(TopicPartition topicPartition,
                                  long offset)

      Overrides the fetch offsets that the consumer will use on the next poll.
      Parameters:
        `topicPartition` - topic partition for which seek
        `offset` - offset to seek inside the topic partition
      Returns:
        current KafkaConsumer instance

    - #### seek

          KafkaConsumer<K,V> seek(TopicPartition topicPartition,
                                  long offset,
                                  Handler<AsyncResult<Void>> completionHandler)

      Overrides the fetch offsets that the consumer will use on the next poll.
      Parameters:
        `topicPartition` - topic partition for which seek
        `offset` - offset to seek inside the topic partition
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### seekToBeginning

          KafkaConsumer<K,V> seekToBeginning(TopicPartition topicPartition)

      Seek to the first offset for each of the given partition.
      Parameters:
        `topicPartition` - topic partition for which seek
      Returns:
        current KafkaConsumer instance

    - #### seekToBeginning

          KafkaConsumer<K,V> seekToBeginning(Set<TopicPartition> topicPartitions)

      Seek to the first offset for each of the given partitions.
      Parameters:
        `topicPartitions` - topic partition for which seek
      Returns:
        current KafkaConsumer instance

    - #### seekToBeginning

          KafkaConsumer<K,V> seekToBeginning(TopicPartition topicPartition,
                                             Handler<AsyncResult<Void>> completionHandler)

      Seek to the first offset for each of the given partition.
      Parameters:
        `topicPartition` - topic partition for which seek
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### seekToBeginning

          KafkaConsumer<K,V> seekToBeginning(Set<TopicPartition> topicPartitions,
                                             Handler<AsyncResult<Void>> completionHandler)

      Seek to the first offset for each of the given partitions.
      Parameters:
        `topicPartitions` - topic partition for which seek
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### seekToEnd

          KafkaConsumer<K,V> seekToEnd(TopicPartition topicPartition)

      Seek to the last offset for each of the given partition.
      Parameters:
        `topicPartition` - topic partition for which seek
      Returns:
        current KafkaConsumer instance

    - #### seekToEnd

          KafkaConsumer<K,V> seekToEnd(Set<TopicPartition> topicPartitions)

      Seek to the last offset for each of the given partitions.
      Parameters:
        `topicPartitions` - topic partition for which seek
      Returns:
        current KafkaConsumer instance

    - #### seekToEnd

          KafkaConsumer<K,V> seekToEnd(TopicPartition topicPartition,
                                       Handler<AsyncResult<Void>> completionHandler)

      Seek to the last offset for each of the given partition.
      Parameters:
        `topicPartition` - topic partition for which seek
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### seekToEnd

          KafkaConsumer<K,V> seekToEnd(Set<TopicPartition> topicPartitions,
                                       Handler<AsyncResult<Void>> completionHandler)

      Seek to the last offset for each of the given partitions.
      Parameters:
        `topicPartitions` - topic partition for which seek
        `completionHandler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### commit

          void commit()

      Commit current offsets for all the subscribed list of topics and partition.

    - #### commit

          void commit(Handler<AsyncResult<Void>> completionHandler)

      Commit current offsets for all the subscribed list of topics and partition.
      Parameters:
        `completionHandler` - handler called on operation completed

    - #### commit

          void commit(Map<TopicPartition,OffsetAndMetadata> offsets)

      Commit the specified offsets for the specified list of topics and partitions to Kafka.
      Parameters:
        `offsets` - offsets list to commit

    - #### commit

          void commit(Map<TopicPartition,OffsetAndMetadata> offsets,
                      Handler<AsyncResult<Map<TopicPartition,OffsetAndMetadata>>> completionHandler)

      Commit the specified offsets for the specified list of topics and partitions to Kafka.
      Parameters:
        `offsets` - offsets list to commit
        `completionHandler` - handler called on operation completed

    - #### committed

          void committed(TopicPartition topicPartition,
                         Handler<AsyncResult<OffsetAndMetadata>> handler)

      Get the last committed offset for the given partition (whether the commit happened by this process or another).
      Parameters:
        `topicPartition` - topic partition for getting last committed offset
        `handler` - handler called on operation completed

    - #### partitionsFor

          KafkaConsumer<K,V> partitionsFor(String topic,
                                           Handler<AsyncResult<List<PartitionInfo>>> handler)

      Get metadata about the partitions for a given topic.
      Parameters:
        `topic` - topic partition for which getting partitions info
        `handler` - handler called on operation completed
      Returns:
        current KafkaConsumer instance

    - #### batchHandler

          KafkaConsumer<K,V> batchHandler(Handler<KafkaConsumerRecords<K,V>> handler)

      Set the handler to be used when batches of messages are fetched from the Kafka server. Batch handlers need to take care not to block the event loop when dealing with large batches. It is better to process records individually using the `record handler`.
      Parameters:
        `handler` - handler called when batches of messages are fetched
      Returns:
        current KafkaConsumer instance

    - #### close

          default void close()

      Close the consumer

    - #### close

          void close(Handler<AsyncResult<Void>> completionHandler)

      Close the consumer
      Parameters:
        `completionHandler` - handler called on operation completed

    - #### position

          void position(TopicPartition partition,
                        Handler<AsyncResult<Long>> handler)

      Get the offset of the next record that will be fetched (if a record with that offset exists).
      Parameters:
        `partition` - The partition to get the position for
        `handler` - handler called on operation completed

    - #### offsetsForTimes

          void offsetsForTimes(Map<TopicPartition,Long> topicPartitionTimestamps,
                               Handler<AsyncResult<Map<TopicPartition,OffsetAndTimestamp>>> handler)

      Look up the offsets for the given partitions by timestamp. Note: the result might be empty in case for the given timestamp no offset can be found -- e.g., when the timestamp refers to the future
      Parameters:
        `topicPartitionTimestamps` - A map with pairs of (TopicPartition, Timestamp).
        `handler` - handler called on operation completed

    - #### offsetsForTimes

          void offsetsForTimes(TopicPartition topicPartition,
                               Long timestamp,
                               Handler<AsyncResult<OffsetAndTimestamp>> handler)

      Look up the offset for the given partition by timestamp. Note: the result might be null in case for the given timestamp no offset can be found -- e.g., when the timestamp refers to the future
      Parameters:
        `topicPartition` - TopicPartition to query.
        `timestamp` - Timestamp to be used in the query.
        `handler` - handler called on operation completed

    - #### beginningOffsets

          void beginningOffsets(Set<TopicPartition> topicPartitions,
                                Handler<AsyncResult<Map<TopicPartition,Long>>> handler)

      Get the first offset for the given partitions.
      Parameters:
        `topicPartitions` - the partitions to get the earliest offsets.
        `handler` - handler called on operation completed. Returns the earliest available offsets for the given partitions

    - #### beginningOffsets

          void beginningOffsets(TopicPartition topicPartition,
                                Handler<AsyncResult<Long>> handler)

      Get the first offset for the given partitions.
      Parameters:
        `topicPartition` - the partition to get the earliest offset.
        `handler` - handler called on operation completed. Returns the earliest available offset for the given partition

    - #### endOffsets

          void endOffsets(Set<TopicPartition> topicPartitions,
                          Handler<AsyncResult<Map<TopicPartition,Long>>> handler)

      Get the last offset for the given partitions. The last offset of a partition is the offset of the upcoming message, i.e. the offset of the last available message + 1.
      Parameters:
        `topicPartitions` - the partitions to get the end offsets.
        `handler` - handler called on operation completed. The end offsets for the given partitions.

    - #### endOffsets

          void endOffsets(TopicPartition topicPartition,
                          Handler<AsyncResult<Long>> handler)

      Get the last offset for the given partition. The last offset of a partition is the offset of the upcoming message, i.e. the offset of the last available message + 1.
      Parameters:
        `topicPartition` - the partition to get the end offset.
        `handler` - handler called on operation completed. The end offset for the given partition.

    - #### asStream

          KafkaReadStream<K,V> asStream()

      Returns:
        underlying the `KafkaReadStream` instance

    - #### unwrap

          org.apache.kafka.clients.consumer.Consumer<K,V> unwrap()

      Returns:
        the underlying consumer

Copyright © 2017. All rights reserved.