S - current state of the Sinkpublic abstract class Sink<S extends State> extends Object implements SinkListener
| Modifier and Type | Class and Description |
|---|---|
static class |
Sink.OnErrorAction
Different Type of On Error Actions
|
| Modifier and Type | Field and Description |
|---|---|
protected AtomicBoolean |
isTryingToConnect |
| Constructor and Description |
|---|
Sink() |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
connect()
Called to connect to the backend before events are published
|
void |
connectWithRetry() |
abstract void |
destroy()
Called at the end to clean all the resources consumed
|
abstract void |
disconnect()
Called after all publishing is done, or when ConnectionUnavailableException is thrown
|
protected abstract ServiceDeploymentInfo |
exposeServiceDeploymentInfo()
Give information to the deployment about the service exposed by the sink.
|
SinkHandler |
getHandler() |
SinkMapper |
getMapper() |
List<ServiceDeploymentInfo> |
getServiceDeploymentInfoList() |
io.siddhi.query.api.definition.StreamDefinition |
getStreamDefinition() |
abstract String[] |
getSupportedDynamicOptions()
Supported dynamic options by the transport
|
abstract Class[] |
getSupportedInputEventClasses() |
String |
getType() |
protected abstract StateFactory<S> |
init(io.siddhi.query.api.definition.StreamDefinition outputStreamDefinition,
OptionHolder optionHolder,
ConfigReader sinkConfigReader,
SiddhiAppContext siddhiAppContext)
Will be called for initialing the
Sink |
void |
init(io.siddhi.query.api.definition.StreamDefinition streamDefinition,
String type,
OptionHolder transportOptionHolder,
ConfigReader sinkConfigReader,
SinkMapper sinkMapper,
String mapType,
OptionHolder mapOptionHolder,
SinkHandler sinkHandler,
List<io.siddhi.query.api.annotation.Element> payloadElementList,
ConfigReader mapperConfigReader,
Map<String,String> deploymentProperties,
SiddhiAppContext siddhiAppContext) |
void |
initOnlyTransport(io.siddhi.query.api.definition.StreamDefinition streamDefinition,
OptionHolder transportOptionHolder,
ConfigReader sinkConfigReader,
String type,
DistributedTransport.ConnectionCallback connectionCallback,
Map<String,String> deploymentProperties,
SiddhiAppContext siddhiAppContext) |
boolean |
isConnected() |
boolean |
isStateful() |
void |
publish(Object payload)
Sending events via output transport
|
abstract void |
publish(Object payload,
DynamicOptions dynamicOptions,
S state)
Sending events via output transport
|
void |
setConnected(boolean connected) |
void |
shutdown() |
protected AtomicBoolean isTryingToConnect
public final void init(io.siddhi.query.api.definition.StreamDefinition streamDefinition,
String type,
OptionHolder transportOptionHolder,
ConfigReader sinkConfigReader,
SinkMapper sinkMapper,
String mapType,
OptionHolder mapOptionHolder,
SinkHandler sinkHandler,
List<io.siddhi.query.api.annotation.Element> payloadElementList,
ConfigReader mapperConfigReader,
Map<String,String> deploymentProperties,
SiddhiAppContext siddhiAppContext)
public abstract Class[] getSupportedInputEventClasses()
public final void initOnlyTransport(io.siddhi.query.api.definition.StreamDefinition streamDefinition,
OptionHolder transportOptionHolder,
ConfigReader sinkConfigReader,
String type,
DistributedTransport.ConnectionCallback connectionCallback,
Map<String,String> deploymentProperties,
SiddhiAppContext siddhiAppContext)
protected abstract ServiceDeploymentInfo exposeServiceDeploymentInfo()
public abstract String[] getSupportedDynamicOptions()
protected abstract StateFactory<S> init(io.siddhi.query.api.definition.StreamDefinition outputStreamDefinition, OptionHolder optionHolder, ConfigReader sinkConfigReader, SiddhiAppContext siddhiAppContext)
SinkoutputStreamDefinition - containing stream definition bind to the SinkoptionHolder - Option holder containing static and dynamic options related to the SinksinkConfigReader - this hold the Sink extensions configuration reader.siddhiAppContext - SiddhiAppContext of the parent siddhi app.public final void publish(Object payload)
SinkListenerpublish in interface SinkListenerpayload - payload of the eventpublic abstract void publish(Object payload, DynamicOptions dynamicOptions, S state) throws ConnectionUnavailableException
payload - payload of the eventdynamicOptions - of the event constructing the payloadstate - current state of the sinkConnectionUnavailableException - throw when connections are unavailable.public abstract void connect()
throws ConnectionUnavailableException
ConnectionUnavailableException - if it cannot connect to the backendpublic abstract void disconnect()
public abstract void destroy()
public final String getType()
public final SinkMapper getMapper()
public final SinkHandler getHandler()
public void connectWithRetry()
public void shutdown()
public io.siddhi.query.api.definition.StreamDefinition getStreamDefinition()
public boolean isConnected()
public void setConnected(boolean connected)
public List<ServiceDeploymentInfo> getServiceDeploymentInfoList()
public boolean isStateful()
Copyright © 2019. All rights reserved.