backtype.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
 Number connect(Map 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 component
processOut - input stream from non-JVM component

connect

Number connect(Map conf,
               TopologyContext context)
               throws IOException,
                      NoOutputException
This method transmits the Storm config to the non-JVM process and receives its pid.

Parameters:
conf - storm configuration
context - 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


Copyright © 2014 The Apache Software Foundation. All Rights Reserved.