public abstract class AbstractPipe extends Object implements IPipe
IPipe
Modifier and Type | Field and Description |
---|---|
protected CopyOnWriteArrayList<IConsumer> |
consumers
Pipe consumers list
|
protected CopyOnWriteArrayList<IPipeConnectionListener> |
listeners
Event listeners
|
protected CopyOnWriteArrayList<IProvider> |
providers
Pipe providers list
|
Constructor and Description |
---|
AbstractPipe() |
Modifier and Type | Method and Description |
---|---|
void |
addPipeConnectionListener(IPipeConnectionListener listener)
Registers pipe connect events listener
|
void |
close()
Close the pipe
|
protected void |
fireConsumerConnectionEvent(IConsumer consumer,
int type,
Map<String,Object> paramMap)
Broadcast consumer connection event
|
protected void |
firePipeConnectionEvent(PipeConnectionEvent event)
Fire any pipe connection event and run all it's tasks
|
protected void |
fireProviderConnectionEvent(IProvider provider,
int type,
Map<String,Object> paramMap)
Broadcast provider connection event
|
List<IConsumer> |
getConsumers()
Getter for consumers
|
List<IPipeConnectionListener> |
getListeners()
Getter for pipe connection events listeners
|
List<IProvider> |
getProviders()
Getter for providers
|
void |
removePipeConnectionListener(IPipeConnectionListener listener)
Removes pipe connection listener
|
void |
sendOOBControlMessage(IConsumer consumer,
OOBControlMessage oobCtrlMsg)
Send out-of-band ("special") control message to all providers
|
void |
sendOOBControlMessage(IProvider provider,
OOBControlMessage oobCtrlMsg)
Send out-of-band ("special") control message to all consumers
|
void |
setListeners(List<IPipeConnectionListener> newListeners)
Setter for pipe connection events listeners
|
boolean |
subscribe(IConsumer consumer,
Map<String,Object> paramMap)
Connect consumer to this pipe.
|
boolean |
subscribe(IProvider provider,
Map<String,Object> paramMap)
Connect provider to this pipe.
|
boolean |
unsubscribe(IConsumer consumer)
Disconnects consumer from this pipe.
|
boolean |
unsubscribe(IProvider provider)
Disconnects provider from this pipe.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
pullMessage, pullMessage
pushMessage
protected volatile CopyOnWriteArrayList<IConsumer> consumers
protected volatile CopyOnWriteArrayList<IProvider> providers
protected volatile CopyOnWriteArrayList<IPipeConnectionListener> listeners
public boolean subscribe(IConsumer consumer, Map<String,Object> paramMap)
subscribe
in interface IMessageInput
consumer
- ConsumerparamMap
- Parameters passed with connection, used in concrete pipe implementationstrue
if consumer was added, false
otherwisepublic boolean subscribe(IProvider provider, Map<String,Object> paramMap)
subscribe
in interface IMessageOutput
provider
- ProviderparamMap
- Parameters passed with connection, used in concrete pipe implementationstrue
if provider was added, false
otherwisepublic boolean unsubscribe(IProvider provider)
unsubscribe
in interface IMessageOutput
provider
- Provider that should be removedtrue
on success, false
otherwisepublic boolean unsubscribe(IConsumer consumer)
unsubscribe
in interface IMessageInput
consumer
- Consumer that should be removedtrue
on success, false
otherwisepublic void addPipeConnectionListener(IPipeConnectionListener listener)
addPipeConnectionListener
in interface IPipe
listener
- Listenerpublic void removePipeConnectionListener(IPipeConnectionListener listener)
removePipeConnectionListener
in interface IPipe
listener
- Listenerpublic void sendOOBControlMessage(IProvider provider, OOBControlMessage oobCtrlMsg)
sendOOBControlMessage
in interface IMessageOutput
provider
- Provider, may be used in concrete implementationsoobCtrlMsg
- Out-of-band control messagepublic void sendOOBControlMessage(IConsumer consumer, OOBControlMessage oobCtrlMsg)
sendOOBControlMessage
in interface IMessageInput
consumer
- Consumer, may be used in concrete implementationsoobCtrlMsg
- Out-of-band control messagepublic List<IPipeConnectionListener> getListeners()
public void setListeners(List<IPipeConnectionListener> newListeners)
newListeners
- Listenerspublic List<IProvider> getProviders()
getProviders
in interface IMessageOutput
public List<IConsumer> getConsumers()
getConsumers
in interface IMessageInput
protected void fireConsumerConnectionEvent(IConsumer consumer, int type, Map<String,Object> paramMap)
consumer
- Consumer that has connectedtype
- Event typeparamMap
- Parameters passed with connectionprotected void fireProviderConnectionEvent(IProvider provider, int type, Map<String,Object> paramMap)
provider
- Provider that has connectedtype
- Event typeparamMap
- Parameters passed with connectionprotected void firePipeConnectionEvent(PipeConnectionEvent event)
event
- Pipe connection eventpublic void close()
Copyright © 2006-2012 The Red5 Project