org.red5.server.api
Interface IBWControllable

All Known Subinterfaces:
IClient, IClientBroadcastStream, IClientStream, IPlaylistSubscriberStream, ISingleItemSubscriberStream, IStreamCapableConnection, ISubscriberStream
All Known Implementing Classes:
AbstractClientStream, BaseRTMPTConnection, Client, ClientBroadcastStream, EdgeRTMPMinaConnection, PlaylistSubscriberStream, RTMPConnection, RTMPMinaConnection, RTMPOriginConnection, RTMPTClientConnection, RTMPTConnection

public interface IBWControllable

Mark an object that can be bandwidth controlled.

A bw-controlled object has the bandwidth config property and a link to the parent controllable object.

The parent controllable object acts as the bandwidth provider for this object, thus generates a tree structure, in which the null parent means the host. The next depth level is the IClient. The following is IStreamCapableConnection. The deepest level is IClientStream. That is, bandwidth can be separately configured for client stream or connection, or client or the whole application.

The summary of children's bandwidth can't exceed the parent's bandwidth even though the children's bandwidth could be configured larger than the parent's bandwidth.

Author:
The Red5 Project (red5@osflash.org), Steven Gong (steven.gong@gmail.com)

Method Summary
 IBandwidthConfigure getBandwidthConfigure()
          Return bandwidth configuration object.
 IBWControllable getParentBWControllable()
          Return parent IFlowControllable object
 void setBandwidthConfigure(IBandwidthConfigure config)
          Setter for bandwidth configuration
 

Method Detail

getParentBWControllable

IBWControllable getParentBWControllable()
Return parent IFlowControllable object

Returns:
parent Parent flow controllable

getBandwidthConfigure

IBandwidthConfigure getBandwidthConfigure()
Return bandwidth configuration object. Bandwidth configuration allows you to set bandwidth size for audio, video and total amount.

Returns:
Bandwidth configuration object

setBandwidthConfigure

void setBandwidthConfigure(IBandwidthConfigure config)
Setter for bandwidth configuration

Parameters:
config - Value to set for bandwidth configuration


Copyright © 2006-2009 The Red5 Project