public class FluxShellSpout extends ShellSpout implements IRichSpout
A generic ShellSpout implementation that allows you specify output fields and even streams without having to subclass ShellSpout to do so.
LOG| Constructor and Description |
|---|
FluxShellSpout(String[] command)
Create a ShellSpout with command line arguments.
|
FluxShellSpout(String[] args,
String[] outputFields)
Create a ShellSpout 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 spout.
|
void |
addComponentConfig(String key,
Object value)
Add configuration for this spout.
|
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:
spouts:
- className: org.apache.storm.flux.wrappers.bolts.FluxShellSpout
id: my_spout
constructorArgs:
- [python, my_spout.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:
spouts:
- className: org.apache.storm.flux.wrappers.bolts.FluxShellSpout
id: my_spout
constructorArgs:
- [python, my_spout.py]
configMethods:
- name: setNamedStream
args:
- first
- [word, count]
|
ack, activate, changeChildCWD, close, deactivate, fail, nextTuple, open, setEnv, shouldChangeChildCWDpublic FluxShellSpout(String[] command)
Create a ShellSpout with command line arguments.
command - Command line arguments for the boltpublic void addComponentConfig(String key, Object value)
Add configuration for this spout. This method is called from YAML file:
className: "org.apache.storm.flux.wrappers.bolts.FluxShellSpout"
constructorArgs:
# command line
- ["python", "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)
Add configuration for this spout. This method is called from YAML file:
className: "org.apache.storm.flux.wrappers.bolts.FluxShellSpout"
constructorArgs:
# command line
- ["python", "splitsentence.py"]
# output fields
- ["word"]
configMethods:
- name: "addComponentConfig"
args:
- "publisher.data_paths"
- ["actions"]
key - config keyvalues - config valuespublic void setDefaultStream(String[] outputFields)
Set default stream outputFields, this method is called from YAML file:
spouts:
- className: org.apache.storm.flux.wrappers.bolts.FluxShellSpout
id: my_spout
constructorArgs:
- [python, my_spout.py]
configMethods:
- name: setDefaultStream
args:
- [word, count]
outputFields - Names of fields the spout will emit (if any) in default stream.public void setNamedStream(String name, String[] outputFields)
Set custom named stream outputFields, this method is called from YAML file:
spouts:
- className: org.apache.storm.flux.wrappers.bolts.FluxShellSpout
id: my_spout
constructorArgs:
- [python, my_spout.py]
configMethods:
- name: setNamedStream
args:
- first
- [word, count]
name - Name of stream the spout will emit into.outputFields - Names of fields the spout will emit in custom named stream.public void declareOutputFields(OutputFieldsDeclarer declarer)
IComponentDeclare the output schema for all the streams of this topology.
declareOutputFields in interface IComponentdeclarer - 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()
IComponentDeclare configuration specific to this component. Only a subset of the “topology.*” configs can be overridden. The component configuration can be further overridden when constructing the topology using TopologyBuilder
getComponentConfiguration in interface IComponentCopyright © 2021 The Apache Software Foundation. All rights reserved.