public class FluxShellBolt extends ShellBolt implements IRichBolt
HEARTBEAT_STREAM_ID, LOG
Constructor and Description |
---|
FluxShellBolt(String[] command)
Create a ShellBolt with command line arguments.
|
FluxShellBolt(String[] command,
String[] outputFields)
Create a ShellBolt with command line arguments and output fields
Keep this constructor for backward compatibility.
|
Modifier and Type | Method and Description |
---|---|
void |
addComponentConfig(String key,
List<Object> values)
Add configuration for this bolt.
|
void |
addComponentConfig(String key,
Object value)
Add configuration for this bolt.
|
void |
declareOutputFields(OutputFieldsDeclarer declarer)
Declare the output schema for all the streams of this topology.
|
Map<String,Object> |
getComponentConfiguration()
Declare configuration specific to this component.
|
void |
setDefaultStream(String[] outputFields)
Set default stream outputFields, this method is called from YAML file:
``` bolts: - className: org.apache.storm.flux.wrappers.bolts.FluxShellBolt id: my_bolt constructorArgs: - [python3, my_bolt.py] configMethods: - name: setDefaultStream args: - [word, count] ``` |
void |
setNamedStream(String name,
String[] outputFields)
Set custom *named* stream outputFields, this method is called from YAML file:
``` bolts: - className: org.apache.storm.flux.wrappers.bolts.FluxShellBolt id: my_bolt constructorArgs: - [python3, my_bolt.py] configMethods: - name: setNamedStream args: - first - [word, count] ``` |
changeChildCWD, cleanup, execute, prepare, setEnv, shouldChangeChildCWD
public FluxShellBolt(String[] command)
command
- Command line arguments for the boltpublic FluxShellBolt(String[] command, String[] outputFields)
command
- Command line arguments for the boltoutputFields
- Names of fields the bolt will emit (if any).public void addComponentConfig(String key, Object value)
``` className: "org.apache.storm.flux.wrappers.bolts.FluxShellBolt" constructorArgs: # command line - ["python3", "splitsentence.py"] # output fields - ["word"] configMethods: - name: "addComponentConfig" args: ["publisher.data_paths", "actions"] ```
key
- config keyvalue
- config valuepublic void addComponentConfig(String key, List<Object> values)
``` className: "org.apache.storm.flux.wrappers.bolts.FluxShellBolt" constructorArgs: # command line - ["python3", "splitsentence.py"] # output fields - ["word"] configMethods: - name: "addComponentConfig" args: - "publisher.data_paths" - ["actions"] ```
key
- config keyvalues
- config valuespublic void setDefaultStream(String[] outputFields)
``` bolts: - className: org.apache.storm.flux.wrappers.bolts.FluxShellBolt id: my_bolt constructorArgs: - [python3, my_bolt.py] configMethods: - name: setDefaultStream args: - [word, count] ```
outputFields
- Names of fields the bolt will emit (if any) in default stream.public void setNamedStream(String name, String[] outputFields)
``` bolts: - className: org.apache.storm.flux.wrappers.bolts.FluxShellBolt id: my_bolt constructorArgs: - [python3, my_bolt.py] configMethods: - name: setNamedStream args: - first - [word, count] ```
name
- Name of stream the bolt will emit into.outputFields
- Names of fields the bolt will emit in custom *named* stream.public void declareOutputFields(OutputFieldsDeclarer declarer)
IComponent
declareOutputFields
in interface IComponent
declarer
- this is used to declare output stream ids, output fields, and whether or not each output stream is a direct streampublic Map<String,Object> getComponentConfiguration()
IComponent
TopologyBuilder
getComponentConfiguration
in interface IComponent
Copyright © 2023 The Apache Software Foundation. All rights reserved.