org.red5.server.net.rtmp.event
Class Aggregate

java.lang.Object
  extended by org.red5.server.net.rtmp.event.BaseEvent
      extended by org.red5.server.net.rtmp.event.Aggregate
All Implemented Interfaces:
Externalizable, Serializable, IoConstants, IEvent, IStreamPacket, IRTMPEvent, Constants, IStreamData<Aggregate>

public class Aggregate
extends BaseEvent
implements IoConstants, IStreamData<Aggregate>, IStreamPacket

Aggregate data event

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.red5.server.api.event.IEvent
IEvent.Type
 
Field Summary
protected  IoBuffer data
          Data
 
Fields inherited from class org.red5.server.net.rtmp.event.BaseEvent
header, object, refcount, source, timestamp
 
Fields inherited from interface org.red5.io.IoConstants
AVC_PACKET_TYPE_END_OF_SEQUENCE, AVC_PACKET_TYPE_NALU, AVC_PACKET_TYPE_SEQUENCE_HEADER, FLAG_CODEC_H263, FLAG_CODEC_SCREEN, FLAG_CODEC_VP6, FLAG_FORMAT_ADPCM, FLAG_FORMAT_MP3, FLAG_FORMAT_NELLYMOSER, FLAG_FORMAT_NELLYMOSER_8_KHZ, FLAG_FORMAT_RAW, FLAG_FRAMETYPE_DISPOSABLE, FLAG_FRAMETYPE_GENERATED_KEYFRAME, FLAG_FRAMETYPE_INFO, FLAG_FRAMETYPE_INTERFRAME, FLAG_FRAMETYPE_KEYFRAME, FLAG_RATE_11_KHZ, FLAG_RATE_22_KHZ, FLAG_RATE_44_KHZ, FLAG_RATE_48_KHZ, FLAG_RATE_5_5_KHZ, FLAG_SIZE_16_BIT, FLAG_SIZE_8_BIT, FLAG_TYPE_MONO, FLAG_TYPE_STEREO, INFO_PACKET_SEEK_END, INFO_PACKET_SEEK_START, MASK_SOUND_FORMAT, MASK_SOUND_RATE, MASK_SOUND_SIZE, MASK_SOUND_TYPE, MASK_VIDEO_CODEC, MASK_VIDEO_FRAMETYPE, TYPE_AUDIO, TYPE_ENCRYPTED, TYPE_ENCRYPTED_AUDIO, TYPE_ENCRYPTED_METADATA, TYPE_ENCRYPTED_VIDEO, TYPE_METADATA, TYPE_VIDEO
 
Fields inherited from interface org.red5.server.net.rtmp.message.Constants
HANDSHAKE_SIZE, HEADER_CONTINUE, HEADER_NEW, HEADER_SAME_SOURCE, HEADER_TIMER_CHANGE, MEDIUM_INT_MAX, SO_CLIENT_CLEAR_DATA, SO_CLIENT_DELETE_DATA, SO_CLIENT_INITIAL_DATA, SO_CLIENT_SEND_MESSAGE, SO_CLIENT_STATUS, SO_CLIENT_UPDATE_ATTRIBUTE, SO_CLIENT_UPDATE_DATA, SO_CONNECT, SO_DELETE_ATTRIBUTE, SO_DISCONNECT, SO_SEND_MESSAGE, SO_SET_ATTRIBUTE, SOURCE_TYPE_LIVE, SOURCE_TYPE_VOD, TYPE_ABORT, TYPE_AGGREGATE, TYPE_AUDIO_DATA, TYPE_BYTES_READ, TYPE_CHUNK_SIZE, TYPE_CLIENT_BANDWIDTH, TYPE_EDGE_ORIGIN, TYPE_FLEX_MESSAGE, TYPE_FLEX_SHARED_OBJECT, TYPE_FLEX_STREAM_SEND, TYPE_INVOKE, TYPE_NOTIFY, TYPE_PING, TYPE_SERVER_BANDWIDTH, TYPE_SHARED_OBJECT, TYPE_STREAM_METADATA, TYPE_VIDEO_DATA
 
Constructor Summary
Aggregate()
          Constructs a new Aggregate.
Aggregate(IoBuffer data)
          Create aggregate data event with given data buffer
Aggregate(IoBuffer data, boolean copy)
          Create aggregate data event with given data buffer
 
Method Summary
 Aggregate duplicate()
          Duplicate this message / event.
 IoBuffer getData()
          Getter for property 'data'.
 byte getDataType()
          Getter for data type
 LinkedList<IRTMPEvent> getParts()
          Breaks-up the aggregate into its individual parts and returns them as a list.
 void readExternal(ObjectInput in)
           
protected  void releaseInternal()
          Release event
 void setData(byte[] data)
           
 void setData(IoBuffer data)
           
 void setDataType(byte dataType)
           
 String toString()
          
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class org.red5.server.net.rtmp.event.BaseEvent
getHeader, getObject, getSource, getSourceType, getTimestamp, getType, hasSource, release, retain, setHeader, setSource, setSourceType, setTimestamp, setType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.red5.server.api.stream.IStreamPacket
getTimestamp
 

Field Detail

data

protected IoBuffer data
Data

Constructor Detail

Aggregate

public Aggregate()
Constructs a new Aggregate.


Aggregate

public Aggregate(IoBuffer data)
Create aggregate data event with given data buffer

Parameters:
data -

Aggregate

public Aggregate(IoBuffer data,
                 boolean copy)
Create aggregate data event with given data buffer

Parameters:
data - aggregate data
copy - true to use a copy of the data or false to use reference
Method Detail

getDataType

public byte getDataType()
Getter for data type

Specified by:
getDataType in interface IStreamPacket
Specified by:
getDataType in interface IRTMPEvent
Specified by:
getDataType in class BaseEvent
Returns:
Data type

setDataType

public void setDataType(byte dataType)

getData

public IoBuffer getData()
Getter for property 'data'.

Specified by:
getData in interface IStreamPacket
Specified by:
getData in interface IStreamData<Aggregate>
Returns:
Value for property 'data'.

setData

public void setData(IoBuffer data)

setData

public void setData(byte[] data)

getParts

public LinkedList<IRTMPEvent> getParts()
Breaks-up the aggregate into its individual parts and returns them as a list. The parts are returned based on the ordering of the aggregate itself.

Returns:
list of IRTMPEvent objects

toString

public String toString()

Overrides:
toString in class Object

releaseInternal

protected void releaseInternal()
Release event

Specified by:
releaseInternal in class BaseEvent

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Overrides:
readExternal in class BaseEvent
Throws:
IOException
ClassNotFoundException

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Overrides:
writeExternal in class BaseEvent
Throws:
IOException

duplicate

public Aggregate duplicate()
                    throws IOException,
                           ClassNotFoundException
Duplicate this message / event.

Specified by:
duplicate in interface IStreamData<Aggregate>
Returns:
duplicated event
Throws:
IOException
ClassNotFoundException


Copyright © 2006-2012 The Red5 Project