## org.red5.server.messaging
Interface IMessageOutput

All Known Subinterfaces:
  IBroadcastScope, IPipe

All Known Implementing Classes:
  AbstractPipe, BroadcastScope, InMemoryPullPullPipe, InMemoryPushPushPipe

    public interface IMessageOutput

Output Endpoint for a provider to connect.

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

Method Summary
`List<IProvider>` `getProviders()` Getter for providers
`void` `pushMessage(IMessage message)` Push a message to this output endpoint.
`void` `sendOOBControlMessage(IProvider provider, OOBControlMessage oobCtrlMsg)` Send OOB Control Message to all consumers on the other side of pipe.
`boolean` `subscribe(IProvider provider, Map<String,Object> paramMap)` Connect to a provider.
`boolean` `unsubscribe(IProvider provider)` Disconnect from a provider.

Method Detail

### pushMessage

    void pushMessage(IMessage message)
                     throws IOException

  Push a message to this output endpoint. May block the pusher when output can't handle the message at the time.

  Parameters:
    `message` - Message to be pushed.
  Throws:
    `IOException` - If message could not be written.

### subscribe

    boolean subscribe(IProvider provider,
                      Map<String,Object> paramMap)

  Connect to a provider. Note that params passed has nothing to deal with NetConnection.connect in client-side Flex/Flash RIA.

  Parameters:
    `provider` - Provider
    `paramMap` - Parameters passed with connection
  Returns:
    `true` when successfully subscribed, `false` otherwise.

### unsubscribe

    boolean unsubscribe(IProvider provider)

  Disconnect from a provider.

  Parameters:
    `provider` - Provider
  Returns:
    `true` when successfully unsubscribed, `false` otherwise.

### getProviders

    List<IProvider> getProviders()

  Getter for providers

  Returns:
    Providers

### sendOOBControlMessage

    void sendOOBControlMessage(IProvider provider,
                               OOBControlMessage oobCtrlMsg)

  Send OOB Control Message to all consumers on the other side of pipe.

  Parameters:
    `provider` - The provider that sends the message
    `oobCtrlMsg` - Out-of-band control message

Copyright © 2006-2010 The Red5 Project