Class KafkaReader

All Implemented Interfaces:
IAnalysisComponent, IPlugin, IReaderPlugin

public class KafkaReader
extends AbstractRawDataReader
Reader plugin that reads monitoring records from a Kafka topic.
Since:
1.13
Author:
Holger Knoche
  • Field Details

  • Constructor Details

    • KafkaReader

      public KafkaReader​(Configuration configuration, IProjectContext projectContext)
      Creates a new Kafka reader using the givend data.
      Parameters:
      configuration - The configuration to use
      projectContext - The project context the plugin runs in
  • Method Details

    • getCurrentConfiguration

      public Configuration getCurrentConfiguration()
      Description copied from class: AbstractAnalysisComponent
      This method should deliver a Configuration object containing the current configuration of this instance. In other words: The constructor should be able to use the given object to initialize a new instance of this class with the same intern properties.
      Specified by:
      getCurrentConfiguration in interface IAnalysisComponent
      Specified by:
      getCurrentConfiguration in interface IPlugin
      Specified by:
      getCurrentConfiguration in class AbstractAnalysisComponent
      Returns:
      A completely filled configuration object.
    • init

      public boolean init()
      Description copied from class: AbstractReaderPlugin
      Initiates the start of a component. This method is called once when a AnalysisController's run() method is called. This implementation must not be blocking! Asynchronous consumers would spawn (an) asynchronous thread(s) in this method.
      Specified by:
      init in interface IPlugin
      Overrides:
      init in class AbstractReaderPlugin
      Returns:
      true on success; false otherwise.
    • read

      public boolean read()
      Description copied from interface: IReaderPlugin
      Starts the reader. This method is intended to be a blocking operation, i.e., it is assumed that reading has finished before this method returns. The method should indicate an error by the return value false. In asynchronous scenarios, the IPlugin.terminate(boolean) method can be used to initiate the termination of this method.
      Returns:
      true if reading was successful; false if an error occurred
    • terminate

      public void terminate​(boolean error)
      Description copied from interface: IPlugin
      Initiates a termination of the plugin. This method is only used by the framework and should not be called manually. Use the method AnalysisController.terminate(boolean) instead. After receiving this notification, the plugin should terminate any running methods, e.g., read for readers.
      Parameters:
      error - Determines whether the plugin is terminated due to an error or not.