Package org.red5.server.net.rtmp.event
Class BaseEvent
java.lang.Object
org.red5.server.net.rtmp.event.BaseEvent
- All Implemented Interfaces:
Externalizable
,Serializable
,IEvent
,IRTMPEvent
,Constants
- Direct Known Subclasses:
Abort
,Aggregate
,AudioData
,BytesRead
,ChunkSize
,ClientBW
,ClientInvokeEvent
,ClientNotifyEvent
,Notify
,Ping
,ServerBW
,Unknown
,VideoData
Base abstract class for all RTMP events
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.red5.server.api.event.IEvent
IEvent.Type
-
Field Summary
Modifier and TypeFieldDescriptionprivate static final boolean
protected Header
Event RTMP packet headerprotected org.slf4j.Logger
protected Object
Event target objectprotected AtomicInteger
Event references countprotected IEventListener
Event listenerprivate byte
Source typeprotected int
Event timestampprivate IEvent.Type
Event typeFields 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
ConstructorDescriptionBaseEvent
(IEvent.Type type) Create new event of given typeBaseEvent
(IEvent.Type type, IEventListener source) Create new event of given type -
Method Summary
Modifier and TypeMethodDescriptionabstract byte
Getter for data typeGetter for headerReturns event context objectReturns event listenerbyte
Getter for source typeint
Getter for timestampgetType()
Returns even typeboolean
Whether event has source (event listener(s))void
void
release()
Hook to free buffers allocated by the event.protected abstract void
Release eventvoid
retain()
Retain eventvoid
Setter for headervoid
setSource
(IEventListener source) Setter for sourcevoid
setSourceType
(byte sourceType) Setter for source typevoid
setTimestamp
(int timestamp) Setter for timestampvoid
setType
(IEvent.Type type) void
-
Field Details
-
log
protected org.slf4j.Logger log -
allocationDebugging
private static final boolean allocationDebugging- See Also:
-
type
Event type -
sourceType
private byte sourceTypeSource type -
object
Event target object -
source
Event listener -
timestamp
protected int timestampEvent timestamp -
header
Event RTMP packet header -
refcount
Event references count
-
-
Constructor Details
-
BaseEvent
public BaseEvent() -
BaseEvent
Create new event of given type- Parameters:
type
- Event type
-
BaseEvent
Create new event of given type- Parameters:
type
- Event typesource
- Event source
-
-
Method Details
-
getType
Returns even type -
setType
-
getSourceType
public byte getSourceType()Description copied from interface:IRTMPEvent
Getter for source type- Specified by:
getSourceType
in interfaceIRTMPEvent
- Returns:
- Source type
-
setSourceType
public void setSourceType(byte sourceType) Description copied from interface:IRTMPEvent
Setter for source type- Specified by:
setSourceType
in interfaceIRTMPEvent
- Parameters:
sourceType
- source type
-
getObject
Returns event context object -
getHeader
Getter for header- Specified by:
getHeader
in interfaceIRTMPEvent
- Returns:
- RTMP packet header
-
setHeader
Setter for header- Specified by:
setHeader
in interfaceIRTMPEvent
- Parameters:
header
- RTMP packet header
-
hasSource
public boolean hasSource()Whether event has source (event listener(s)) -
getSource
Returns event listener -
setSource
Setter for source- Specified by:
setSource
in interfaceIRTMPEvent
- Parameters:
source
- Source
-
getDataType
public abstract byte getDataType()Getter for data type- Specified by:
getDataType
in interfaceIRTMPEvent
- Returns:
- Data type
-
getTimestamp
public int getTimestamp()Getter for timestamp- Specified by:
getTimestamp
in interfaceIRTMPEvent
- Returns:
- Event timestamp
-
setTimestamp
public void setTimestamp(int timestamp) Setter for timestamp- Specified by:
setTimestamp
in interfaceIRTMPEvent
- Parameters:
timestamp
- New event timestamp
-
retain
public void retain()Retain event- Specified by:
retain
in interfaceIRTMPEvent
-
release
public void release()Hook to free buffers allocated by the event.- Specified by:
release
in interfaceIRTMPEvent
-
releaseInternal
protected abstract void releaseInternal()Release event -
readExternal
- Specified by:
readExternal
in interfaceExternalizable
- Throws:
IOException
ClassNotFoundException
-
writeExternal
- Specified by:
writeExternal
in interfaceExternalizable
- Throws:
IOException
-