Package org.apache.storm.jdbc.bolt
Class AbstractJdbcBolt
- java.lang.Object
-
- org.apache.storm.topology.base.BaseComponent
-
- org.apache.storm.topology.base.BaseRichBolt
-
- org.apache.storm.topology.base.BaseTickTupleAwareRichBolt
-
- org.apache.storm.jdbc.bolt.AbstractJdbcBolt
-
- All Implemented Interfaces:
Serializable
,IBolt
,IComponent
,IRichBolt
- Direct Known Subclasses:
JdbcInsertBolt
,JdbcLookupBolt
public abstract class AbstractJdbcBolt extends BaseTickTupleAwareRichBolt
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected OutputCollector
collector
protected String
configKey
protected ConnectionProvider
connectionProvider
protected JdbcClient
jdbcClient
protected Integer
queryTimeoutSecs
-
Constructor Summary
Constructors Constructor Description AbstractJdbcBolt(ConnectionProvider connectionProviderParam)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
cleanup()
Cleanup.void
prepare(Map<String,Object> map, TopologyContext topologyContext, OutputCollector outputCollector)
Subclasses should call this to ensure output collector and connection provider are set up, and finally jdbcClient is initialized properly.-
Methods inherited from class org.apache.storm.topology.base.BaseTickTupleAwareRichBolt
execute, onTickTuple, process
-
Methods inherited from class org.apache.storm.topology.base.BaseComponent
getComponentConfiguration
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.storm.topology.IComponent
declareOutputFields, getComponentConfiguration
-
-
-
-
Field Detail
-
collector
protected OutputCollector collector
-
jdbcClient
protected transient JdbcClient jdbcClient
-
configKey
protected String configKey
-
queryTimeoutSecs
protected Integer queryTimeoutSecs
-
connectionProvider
protected ConnectionProvider connectionProvider
-
-
Constructor Detail
-
AbstractJdbcBolt
public AbstractJdbcBolt(ConnectionProvider connectionProviderParam)
Constructor.- Parameters:
connectionProviderParam
- database connection provider
-
-
Method Detail
-
prepare
public void prepare(Map<String,Object> map, TopologyContext topologyContext, OutputCollector outputCollector)
Subclasses should call this to ensure output collector and connection provider are set up, and finally jdbcClient is initialized properly. Called when a task for this component is initialized within a worker on the cluster. It provides the bolt with the environment in which the bolt executes.This includes the:
- Parameters:
map
- The Storm configuration for this bolt. This is the configuration provided to the topology merged in with cluster configuration on this machine.topologyContext
- This object can be used to get information about this task's place within the topology, including the task id and component id of this task, input and output information, etc.outputCollector
- The collector is used to emit tuples from this bolt. Tuples can be emitted at any time, including the prepare and cleanup methods. The collector is thread-safe and should be saved as an instance variable of this bolt object.
-
cleanup
public void cleanup()
Cleanup. Subclasses should call this to ensure connection provider can be also cleaned up.- Specified by:
cleanup
in interfaceIBolt
- Overrides:
cleanup
in classBaseRichBolt
-
-