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 Numberconnect(Map<String,Object> conf, TopologyContext context)This method transmits the Storm config to the non-JVM process and receives its pid.voidinitialize(OutputStream processIn, InputStream processOut)This method sets the input and output streams of the serializer.ShellMsgreadShellMsg()This method receives a shell message from the non-JVM process.voidwriteBoltMsg(BoltMsg msg)This method sends a bolt message to a non-JVM bolt process.voidwriteSpoutMsg(SpoutMsg msg)This method sends a spout message to a non-JVM spout process.voidwriteTaskIds(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:
IOExceptionNoOutputException
-
readShellMsg
ShellMsg readShellMsg() throws IOException, NoOutputException
This method receives a shell message from the non-JVM process.- Returns:
- shell message
- Throws:
IOExceptionNoOutputException
-
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
-
-