Package org.apache.storm.multilang
Interface ISerializer
-
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
JsonSerializer
public interface ISerializer extends Serializable
The ISerializer interface describes the methods that an object should implement to provide serialization and de-serialization capabilities to non-JVM language components.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Number
connect(Map<String,Object> conf, TopologyContext context)
This method transmits the Storm config to the non-JVM process and receives its pid.void
initialize(OutputStream processIn, InputStream processOut)
This method sets the input and output streams of the serializer.ShellMsg
readShellMsg()
This method receives a shell message from the non-JVM process.void
writeBoltMsg(BoltMsg msg)
This method sends a bolt message to a non-JVM bolt process.void
writeSpoutMsg(SpoutMsg msg)
This method sends a spout message to a non-JVM spout process.void
writeTaskIds(List<Integer> taskIds)
This method sends a list of task IDs to a non-JVM bolt process.
-
-
-
Method Detail
-
initialize
void initialize(OutputStream processIn, InputStream processOut)
This method sets the input and output streams of the serializer.- Parameters:
processIn
- output stream to non-JVM componentprocessOut
- input stream from non-JVM component
-
connect
Number connect(Map<String,Object> conf, TopologyContext context) throws IOException, NoOutputException
This method transmits the Storm config to the non-JVM process and receives its pid.- Parameters:
conf
- storm configurationcontext
- topology context- Returns:
- process pid
- Throws:
IOException
NoOutputException
-
readShellMsg
ShellMsg readShellMsg() throws IOException, NoOutputException
This method receives a shell message from the non-JVM process.- Returns:
- shell message
- Throws:
IOException
NoOutputException
-
writeBoltMsg
void writeBoltMsg(BoltMsg msg) throws IOException
This method sends a bolt message to a non-JVM bolt process.- Parameters:
msg
- bolt message- Throws:
IOException
-
writeSpoutMsg
void writeSpoutMsg(SpoutMsg msg) throws IOException
This method sends a spout message to a non-JVM spout process.- Parameters:
msg
- spout message- Throws:
IOException
-
writeTaskIds
void writeTaskIds(List<Integer> taskIds) throws IOException
This method sends a list of task IDs to a non-JVM bolt process.- Parameters:
taskIds
- list of task IDs- Throws:
IOException
-
-