Class SinkMapper
- java.lang.Object
-
- io.siddhi.core.stream.output.sink.SinkMapper
-
- Direct Known Subclasses:
PassThroughSinkMapper
public abstract class SinkMapper extends Object
Abstract parent class to represent event mappers. Events mappers will receiveEvents and can convert them to any desired object type (Ex: XML, JSON). Custom mappers can be implemented as extensions extending this abstract implementation.
-
-
Field Summary
Fields Modifier and Type Field Description protected OptionHoldersinkOptionHolderprotected StringsinkType
-
Constructor Summary
Constructors Constructor Description SinkMapper()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidbuildMapperTemplate(io.siddhi.query.api.definition.StreamDefinition streamDefinition, List<io.siddhi.query.api.annotation.Element> unmappedPayloadList)Method to create mapper template.abstract Class[]getOutputEventClasses()Get produced event class typesabstract String[]getSupportedDynamicOptions()Supported dynamic options by the mapperStringgetType()abstract voidinit(io.siddhi.query.api.definition.StreamDefinition streamDefinition, OptionHolder optionHolder, Map<String,TemplateBuilder> payloadTemplateBuilderMap, ConfigReader mapperConfigReader, SiddhiAppContext siddhiAppContext)Initialize the mapper and the mapping configurations.voidinit(io.siddhi.query.api.definition.StreamDefinition streamDefinition, String type, OptionHolder mapOptionHolder, List<io.siddhi.query.api.annotation.Element> unmappedPayloadList, Sink sink, ConfigReader mapperConfigReader, LatencyTracker mapperLatencyTracker, OptionHolder sinkOptionHolder, SiddhiAppContext siddhiAppContext)abstract voidmapAndSend(Event[] events, OptionHolder optionHolder, Map<String,TemplateBuilder> payloadTemplateBuilderMap, SinkListener sinkListener)Called to map the events and send them toSinkListenerfor publishingabstract voidmapAndSend(Event event, OptionHolder optionHolder, Map<String,TemplateBuilder> payloadTemplateBuilderMap, SinkListener sinkListener)Called to map the event and send it toSinkListenerfor publishingvoidsetGroupDeterminer(OutputGroupDeterminer groupDeterminer)
-
-
-
Field Detail
-
sinkType
protected String sinkType
-
sinkOptionHolder
protected OptionHolder sinkOptionHolder
-
-
Method Detail
-
init
public final void init(io.siddhi.query.api.definition.StreamDefinition streamDefinition, String type, OptionHolder mapOptionHolder, List<io.siddhi.query.api.annotation.Element> unmappedPayloadList, Sink sink, ConfigReader mapperConfigReader, LatencyTracker mapperLatencyTracker, OptionHolder sinkOptionHolder, SiddhiAppContext siddhiAppContext)
-
buildMapperTemplate
protected void buildMapperTemplate(io.siddhi.query.api.definition.StreamDefinition streamDefinition, List<io.siddhi.query.api.annotation.Element> unmappedPayloadList)Method to create mapper template.- Parameters:
streamDefinition- Stream definition corresponding to mapperunmappedPayloadList- mapper payload template list
-
getSupportedDynamicOptions
public abstract String[] getSupportedDynamicOptions()
Supported dynamic options by the mapper- Returns:
- the list of supported dynamic option keys
-
init
public abstract void init(io.siddhi.query.api.definition.StreamDefinition streamDefinition, OptionHolder optionHolder, Map<String,TemplateBuilder> payloadTemplateBuilderMap, ConfigReader mapperConfigReader, SiddhiAppContext siddhiAppContext)Initialize the mapper and the mapping configurations.- Parameters:
streamDefinition- The stream definitionoptionHolder- Option holder containing static and dynamic options related to the mapperpayloadTemplateBuilderMap- Un mapped payloads for referencemapperConfigReader- System configuration reader for Sink-mapper.siddhiAppContext- Siddhi Application Context
-
getOutputEventClasses
public abstract Class[] getOutputEventClasses()
Get produced event class types- Returns:
- Array of classes that will be produced by the sink-mapper, null or empty array if it can produce any type of class.
-
mapAndSend
public abstract void mapAndSend(Event[] events, OptionHolder optionHolder, Map<String,TemplateBuilder> payloadTemplateBuilderMap, SinkListener sinkListener)
Called to map the events and send them toSinkListenerfor publishing- Parameters:
events-Events that need to be mappedoptionHolder- Option holder containing static and dynamic options related to the mapperpayloadTemplateBuilderMap- To build the message payloads based on the given templatessinkListener-SinkListenerthat will be called with the mapped events
-
mapAndSend
public abstract void mapAndSend(Event event, OptionHolder optionHolder, Map<String,TemplateBuilder> payloadTemplateBuilderMap, SinkListener sinkListener)
Called to map the event and send it toSinkListenerfor publishing- Parameters:
event-Eventthat need to be mappedoptionHolder- Option holder containing static and dynamic options related to the mapperpayloadTemplateBuilderMap- To build the message payloads based on the given templatessinkListener-SinkListenerthat will be called with the mapped event
-
getType
public final String getType()
-
setGroupDeterminer
public final void setGroupDeterminer(OutputGroupDeterminer groupDeterminer)
-
-