org.red5.server.net.rtmp
Class RTMPMinaTransport

java.lang.Object
  extended by org.red5.server.net.rtmp.RTMPMinaTransport
All Implemented Interfaces:
RTMPMinaTransportMXBean

public class RTMPMinaTransport
extends Object
implements RTMPMinaTransportMXBean

Transport setup class configures socket acceptor and thread pools for RTMP in Mina.
Note: This code originates from AsyncWeb. Originally modified by Luke Hubbard.

Author:
Luke Hubbard, Paul Gregoire

Field Summary
protected  SocketAcceptor acceptor
           
protected  Set<SocketAddress> addresses
           
protected  int backlog
           
protected  boolean enableIoEventThrottle
           
protected  boolean enableMinaMonitor
           
protected  long executorKeepAliveTime
           
protected  IoHandlerAdapter ioHandler
           
protected  int ioThreads
           
protected  int minaPollInterval
           
protected  int receiveBufferSize
           
protected  int sendBufferSize
           
protected  ObjectName serviceManagerObjectName
          MBean object name used for de/registration purposes.
protected  IoServiceStatistics stats
           
protected  boolean tcpNoDelay
           
protected  int thoughputCalcInterval
           
protected  int throttleMaximumPermits
           
protected  int throttleThresholdSize
           
protected  int trafficClass
           
protected  boolean useHeapBuffers
           
 
Constructor Summary
RTMPMinaTransport()
           
 
Method Summary
 void setBacklog(int backlog)
           
 void setConnector(InetSocketAddress connector)
           
 void setConnectors(List<InetSocketAddress> connectors)
           
 void setEnableIoEventThrottle(boolean enableIoEventThrottle)
           
 void setEnableMinaMonitor(boolean enableMinaMonitor)
           
 void setExecutorKeepAliveTime(long executorKeepAliveTime)
           
 void setIoHandler(IoHandlerAdapter rtmpIOHandler)
           
 void setIoThreads(int ioThreads)
           
 void setMinaPollInterval(int minaPollInterval)
           
 void setReceiveBufferSize(int receiveBufferSize)
           
 void setSendBufferSize(int sendBufferSize)
           
 void setTcpNoDelay(boolean tcpNoDelay)
           
 void setThoughputCalcInterval(int thoughputCalcInterval)
           
 void setThrottleMaximumPermits(int throttleMaximumPermits)
           
 void setThrottleThresholdSize(int throttleThresholdSize)
           
 void setTrafficClass(int trafficClass)
           
 void setUseHeapBuffers(boolean useHeapBuffers)
           
 void start()
           
 void stop()
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

acceptor

protected SocketAcceptor acceptor

addresses

protected Set<SocketAddress> addresses

ioHandler

protected IoHandlerAdapter ioHandler

stats

protected IoServiceStatistics stats

ioThreads

protected int ioThreads

serviceManagerObjectName

protected ObjectName serviceManagerObjectName
MBean object name used for de/registration purposes.


enableMinaMonitor

protected boolean enableMinaMonitor

minaPollInterval

protected int minaPollInterval

tcpNoDelay

protected boolean tcpNoDelay

useHeapBuffers

protected boolean useHeapBuffers

sendBufferSize

protected int sendBufferSize

receiveBufferSize

protected int receiveBufferSize

enableIoEventThrottle

protected boolean enableIoEventThrottle

throttleThresholdSize

protected int throttleThresholdSize

throttleMaximumPermits

protected int throttleMaximumPermits

trafficClass

protected int trafficClass

backlog

protected int backlog

thoughputCalcInterval

protected int thoughputCalcInterval

executorKeepAliveTime

protected long executorKeepAliveTime
Constructor Detail

RTMPMinaTransport

public RTMPMinaTransport()
Method Detail

start

public void start()
           throws Exception
Specified by:
start in interface RTMPMinaTransportMXBean
Throws:
Exception

stop

public void stop()
Specified by:
stop in interface RTMPMinaTransportMXBean

setConnector

public void setConnector(InetSocketAddress connector)

setConnectors

public void setConnectors(List<InetSocketAddress> connectors)

setIoHandler

public void setIoHandler(IoHandlerAdapter rtmpIOHandler)

setIoThreads

public void setIoThreads(int ioThreads)
Specified by:
setIoThreads in interface RTMPMinaTransportMXBean

setSendBufferSize

public void setSendBufferSize(int sendBufferSize)
Parameters:
sendBufferSize - the sendBufferSize to set

setReceiveBufferSize

public void setReceiveBufferSize(int receiveBufferSize)
Parameters:
receiveBufferSize - the receiveBufferSize to set

setEnableIoEventThrottle

public void setEnableIoEventThrottle(boolean enableIoEventThrottle)
Parameters:
enableIoEventThrottle - the enableIoEventThrottle to set

setThrottleThresholdSize

public void setThrottleThresholdSize(int throttleThresholdSize)
Parameters:
throttleThresholdSize - the throttleThresholdSize to set

setThrottleMaximumPermits

public void setThrottleMaximumPermits(int throttleMaximumPermits)
Parameters:
throttleMaximumPermits - the throttleMaximumPermits to set

setTrafficClass

public void setTrafficClass(int trafficClass)
Parameters:
trafficClass - the trafficClass to set

setBacklog

public void setBacklog(int backlog)
Parameters:
backlog - the backlog to set

setThoughputCalcInterval

public void setThoughputCalcInterval(int thoughputCalcInterval)
Parameters:
thoughputCalcInterval - the thoughputCalcInterval to set

setExecutorKeepAliveTime

public void setExecutorKeepAliveTime(long executorKeepAliveTime)
Parameters:
executorKeepAliveTime - the executorKeepAliveTime to set

setTcpNoDelay

public void setTcpNoDelay(boolean tcpNoDelay)
Specified by:
setTcpNoDelay in interface RTMPMinaTransportMXBean

setUseHeapBuffers

public void setUseHeapBuffers(boolean useHeapBuffers)
Specified by:
setUseHeapBuffers in interface RTMPMinaTransportMXBean

setEnableMinaMonitor

public void setEnableMinaMonitor(boolean enableMinaMonitor)
Parameters:
enableMinaMonitor - the enableMinaMonitor to set

setMinaPollInterval

public void setMinaPollInterval(int minaPollInterval)

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2006-2012 The Red5 Project