- Type Parameters:
KIn- the type of input keys
VIn- the type of input values
KOut- the type of output keys
VOut- the type of output values
- All Known Implementing Classes:
public interface Processor<KIn,VIn,KOut,VOut>
A processor of key-value pair records.
initdefault void init(ProcessorContext<KOut,VOut> context)Initialize this processor with the given context. The framework ensures this is called once per processor when the topology that contains it is initialized. When the framework is done with the processor,
close()will be called on it; the framework may later re-use the processor by calling
contextcan be used to access topology and record meta data, to
schedulea method to be
called periodicallyand to access attached
context- the context; may not be null
processProcess the record. Note that record metadata is undefined in cases such as a forward call from a punctuator.
record- the record to process
closedefault void close()Close this processor and clean up any resources. Be aware that
#close()is called after an internal cleanup. Thus, it is not possible to write anything to Kafka as underlying clients are already closed. The framework may later re-use this processor by calling
#init()on it again.
Note: Do not close any streams managed resources, like
StateStores here, as they are managed by the library.