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, shouldChangeChildCWD
public 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)
IComponent
Declare the output schema for all the streams of this topology.
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
Declare 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 IComponent
Copyright © 2022 The Apache Software Foundation. All rights reserved.