org.red5.server.api.so

## Interface ISharedObjectListener

    public interface ISharedObjectListener

Notifications about shared object updates.

Author:
  The Red5 Project (red5@osflash.org), Luke Hubbard (luke@codegent.com), Joachim Bauch (jojo@struktur.de)

### Method Summary

Methods
`void` `onSharedObjectClear(ISharedObjectBase so)` Called when all attributes of a shared object are removed.
`void` `onSharedObjectConnect(ISharedObjectBase so)` Called when a client connects to a shared object.
`void` `onSharedObjectDelete(ISharedObjectBase so, String key)` Called when an attribute is deleted from the shared object.
`void` `onSharedObjectDisconnect(ISharedObjectBase so)` Called when a client disconnects from a shared object.
`void` `onSharedObjectSend(ISharedObjectBase so, String method, List<?> params)` Called when a shared object method call is sent.
`void` `onSharedObjectUpdate(ISharedObjectBase so, IAttributeStore values)` Called when multiple attributes of a shared object are updated.
`void` `onSharedObjectUpdate(ISharedObjectBase so, Map<String,Object> values)` Called when multiple attributes of a shared object are updated.
`void` `onSharedObjectUpdate(ISharedObjectBase so, String key, Object value)` Called when a shared object attribute is updated.

### Method Detail

#### onSharedObjectConnect

    void onSharedObjectConnect(ISharedObjectBase so)

Called when a client connects to a shared object.

Parameters:
  `so` - the shared object

#### onSharedObjectDisconnect

    void onSharedObjectDisconnect(ISharedObjectBase so)

Called when a client disconnects from a shared object.

Parameters:
  `so` - the shared object

#### onSharedObjectUpdate

    void onSharedObjectUpdate(ISharedObjectBase so,
                            String key,
                            Object value)

Called when a shared object attribute is updated.

Parameters:
  `so` - the shared object
  `key` - the name of the attribute
  `value` - the value of the attribute

#### onSharedObjectUpdate

    void onSharedObjectUpdate(ISharedObjectBase so,
                            IAttributeStore values)

Called when multiple attributes of a shared object are updated.

Parameters:
  `so` - the shared object
  `values` - the new attributes of the shared object

#### onSharedObjectUpdate

    void onSharedObjectUpdate(ISharedObjectBase so,
                            Map<String,Object> values)

Called when multiple attributes of a shared object are updated.

Parameters:
  `so` - the shared object
  `values` - the new attributes of the shared object

#### onSharedObjectDelete

    void onSharedObjectDelete(ISharedObjectBase so,
                            String key)

Called when an attribute is deleted from the shared object.

Parameters:
  `so` - the shared object
  `key` - the name of the attribute to delete

#### onSharedObjectClear

    void onSharedObjectClear(ISharedObjectBase so)

Called when all attributes of a shared object are removed.

Parameters:
  `so` - the shared object

#### onSharedObjectSend

    void onSharedObjectSend(ISharedObjectBase so,
                          String method,
                          List<?> params)

Called when a shared object method call is sent.

Parameters:
  `so` - the shared object
  `method` - the method name to call
  `params` - the arguments