org.red5.server.net.rtmp.event

## Class Notify

- java.lang.Object
- - org.red5.server.net.rtmp.event.BaseEvent
  - - org.red5.server.net.rtmp.event.Notify

All Implemented Interfaces:
  Externalizable, Serializable, IEvent, IStreamPacket, IRTMPEvent, Constants, IStreamData<Notify>

Direct Known Subclasses:
  FlexStreamSend, Invoke

    public class Notify
    extends BaseEvent
    implements IStreamData<Notify>, IStreamPacket

Stream notification event

Author:
  Red5 team, Tiago Daniel Jacobs (tiago@imdt.com.br)
See Also:
  Serialized Form

### Nested Class Summary

### Nested classes/interfaces inherited from interface org.red5.server.api.event.IEvent

`IEvent.Type`

### Field Summary

Fields
`protected IServiceCall` `call` Service call
`protected org.apache.mina.core.buffer.IoBuffer` `data` Event data

### Fields inherited from class org.red5.server.net.rtmp.event.BaseEvent

`header, object, refcount, source, timestamp`

### 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

Constructors
Constructor and Description
`Notify()` Constructs a new Notify.
`Notify(org.apache.mina.core.buffer.IoBuffer data)` Create new notification event with given byte buffer
`Notify(IServiceCall call)` Create new notification event with given service call

### Method Summary

Methods
`protected void` `doRelease()` Release event (nullify call object)
`Notify` `duplicate()` Duplicate this Notify message to future injection Serialize to memory and deserialize, safe way.
`boolean` `equals(Object obj)`
`IServiceCall` `getCall()` Getter for service call
`Map<String,Object>` `getConnectionParams()` Getter for connection parameters
`org.apache.mina.core.buffer.IoBuffer` `getData()` Getter for property 'data'.
`byte` `getDataType()` Getter for data type
`int` `getInvokeId()` Getter for invoke id
`void` `readExternal(ObjectInput in)`
`protected void` `releaseInternal()` Release event
`void` `setCall(IServiceCall call)` Setter for call
`void` `setConnectionParams(Map<String,Object> connectionParams)` Setter for connection parameters
`void` `setData(org.apache.mina.core.buffer.IoBuffer data)` Setter for data
`void` `setInvokeId(int invokeId)` Setter for invoke id
`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, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.red5.server.api.stream.IStreamPacket

`getTimestamp`

### Field Detail

#### call

    protected IServiceCall call

Service call

#### data

    protected org.apache.mina.core.buffer.IoBuffer data

Event data

### Constructor Detail

#### Notify

    public Notify()

Constructs a new Notify.

#### Notify

    public Notify(org.apache.mina.core.buffer.IoBuffer data)

Create new notification event with given byte buffer

Parameters:
  `data` - Byte buffer

#### Notify

    public Notify(IServiceCall call)

Create new notification event with given service call

Parameters:
  `call` - Service call

### 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

#### setData

    public void setData(org.apache.mina.core.buffer.IoBuffer data)

Setter for data

Parameters:
  `data` - Data

#### setCall

    public void setCall(IServiceCall call)

Setter for call

Parameters:
  `call` - Service call

#### getCall

    public IServiceCall getCall()

Getter for service call

Returns:
  Service call

#### getData

    public org.apache.mina.core.buffer.IoBuffer getData()

Getter for property 'data'.

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

#### getInvokeId

    public int getInvokeId()

Getter for invoke id

Returns:
  Invoke id

#### setInvokeId

    public void setInvokeId(int invokeId)

Setter for invoke id

Parameters:
  `invokeId` - Invoke id

#### doRelease

    protected void doRelease()

Release event (nullify call object)

#### getConnectionParams

    public Map<String,Object> getConnectionParams()

Getter for connection parameters

Returns:
  Connection parameters

#### setConnectionParams

    public void setConnectionParams(Map<String,Object> connectionParams)

Setter for connection parameters

Parameters:
  `connectionParams` - Connection parameters

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

#### equals

    public boolean equals(Object obj)

Overrides:
  `equals` 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 Notify duplicate()
                     throws IOException,
                            ClassNotFoundException

Duplicate this Notify message to future injection Serialize to memory and deserialize, safe way.

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