net.floodlightcontroller.packetstreamer
Class PacketStreamerHandler

java.lang.Object
  extended by net.floodlightcontroller.packetstreamer.PacketStreamerHandler

public class PacketStreamerHandler
extends java.lang.Object

The PacketStreamer handler class that implements the service APIs.


Nested Class Summary
protected  class PacketStreamerHandler.SessionQueue
          The queue wrapper class that contains the queue for the streamed packets.
 
Field Summary
protected static org.slf4j.Logger log
          The class logger object
protected  java.util.Map<java.lang.String,PacketStreamerHandler.SessionQueue> msgQueues
          A sessionId-to-queue mapping
 
Constructor Summary
PacketStreamerHandler()
          The handler's constructor
 
Method Summary
 java.util.List<java.nio.ByteBuffer> getPackets(java.lang.String sessionid)
          The implementation for getPackets() function.
 void pushMessageAsync(Message msg)
          The implementation for pushMessageAsync() function.
 int pushMessageSync(Message msg)
          The implementation for pushMessageSync() function.
 void terminateSession(java.lang.String sessionid)
          The implementation for terminateSession() function.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

protected static org.slf4j.Logger log
The class logger object


msgQueues

protected java.util.Map<java.lang.String,PacketStreamerHandler.SessionQueue> msgQueues
A sessionId-to-queue mapping

Constructor Detail

PacketStreamerHandler

public PacketStreamerHandler()
The handler's constructor

Method Detail

getPackets

public java.util.List<java.nio.ByteBuffer> getPackets(java.lang.String sessionid)
                                               throws org.apache.thrift.TException
The implementation for getPackets() function. This is a blocking API.

Parameters:
sessionid -
Returns:
A list of packets associated with the session
Throws:
org.apache.thrift.TException

pushMessageSync

public int pushMessageSync(Message msg)
                    throws org.apache.thrift.TException
The implementation for pushMessageSync() function.

Parameters:
msg -
Returns:
1 for success, 0 for failure
Throws:
TException

pushMessageAsync

public void pushMessageAsync(Message msg)
                      throws org.apache.thrift.TException
The implementation for pushMessageAsync() function.

Parameters:
msg -
Throws:
TException

terminateSession

public void terminateSession(java.lang.String sessionid)
                      throws org.apache.thrift.TException
The implementation for terminateSession() function. It removes the session to queue association.

Parameters:
sessionid -
Throws:
TException