Package org.atmosphere.cpr
Class DefaultBroadcasterFactory
- java.lang.Object
-
- org.atmosphere.cpr.DefaultBroadcasterFactory
-
- All Implemented Interfaces:
BroadcasterFactory
- Direct Known Subclasses:
PoolableBroadcasterFactory
public class DefaultBroadcasterFactory extends java.lang.Object implements BroadcasterFactory
This class is responsible for creatingBroadcasterinstances. You can also add and removeBroadcaster- Author:
- Jeanfrancois Arcand, Jason Burgess
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.atmosphere.cpr.BroadcasterFactory
BroadcasterFactory.BroadcasterCreationException
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.concurrent.ConcurrentLinkedQueue<BroadcasterListener>broadcasterListenersprotected java.lang.Class<? extends Broadcaster>clazzprotected AtmosphereConfigconfigprotected Broadcaster.POLICYdefaultPolicyprotected intdefaultPolicyIntegerstatic java.net.URIlegacyBroadcasterURIprotected BroadcasterListenerlifeCycleListenerprotected BroadcasterLifeCyclePolicypolicyprotected java.util.concurrent.ConcurrentHashMap<java.lang.Object,Broadcaster>store
-
Constructor Summary
Constructors Constructor Description DefaultBroadcasterFactory()DefaultBroadcasterFactory(java.lang.Class<? extends Broadcaster> clazz, java.lang.String broadcasterLifeCyclePolicy, AtmosphereConfig c)Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description booleanadd(Broadcaster b, java.lang.Object id)Add aBroadcasterto the list.BroadcasterFactoryaddBroadcasterListener(BroadcasterListener l)Add aBroadcasterListenerjava.util.Collection<BroadcasterListener>broadcasterListeners()Return allBroadcasterListener.voidconfigure(java.lang.Class<? extends Broadcaster> clazz, java.lang.String broadcasterLifeCyclePolicy, AtmosphereConfig c)Configure the factoryprotected voidconfigure(java.lang.String broadcasterLifeCyclePolicy)protected <T extends Broadcaster>
TcreateBroadcaster(java.lang.Class<T> c, java.lang.Object id)voiddestroy()Shutdown allBroadcasters.Broadcasterget()Return an instance of the defaultBroadcaster.<T extends Broadcaster>
Tget(java.lang.Class<T> c, java.lang.Object id)Create a new instance ofBroadcasterand store it for.Broadcasterget(java.lang.Object id)Create a new instance ofBroadcasterand store it for.<T extends Broadcaster>
Tlookup(java.lang.Class<T> c, java.lang.Object id)Lookup aBroadcasterinstance usingBroadcaster.getID()or ID<T extends Broadcaster>
Tlookup(java.lang.Class<T> c, java.lang.Object id, boolean createIfNull)Lookup aBroadcasterinstance usingBroadcaster.getID()or ID<T extends Broadcaster>
Tlookup(java.lang.Class<T> c, java.lang.Object id, boolean createIfNull, boolean unique)Broadcasterlookup(java.lang.Object id)Lookup aBroadcasterinstance usingBroadcaster.getID()or IDBroadcasterlookup(java.lang.Object id, boolean createIfNull)Lookup aBroadcasterinstance usingBroadcaster.getID()or IDjava.util.Collection<Broadcaster>lookupAll()Return an immutable Collection ofBroadcasterthis factory contains.voidnotifyOnPostCreate(Broadcaster b)booleanremove(java.lang.Object id)Remove the associatedBroadcaster.booleanremove(Broadcaster b, java.lang.Object id)Remove aBroadcasterfrom the list.voidremoveAllAtmosphereResource(AtmosphereResource r)Deprecated.BroadcasterFactoryremoveBroadcasterListener(BroadcasterListener l)Remove aBroadcasterListener
-
-
-
Field Detail
-
broadcasterListeners
protected final java.util.concurrent.ConcurrentLinkedQueue<BroadcasterListener> broadcasterListeners
-
store
protected final java.util.concurrent.ConcurrentHashMap<java.lang.Object,Broadcaster> store
-
clazz
protected java.lang.Class<? extends Broadcaster> clazz
-
policy
protected BroadcasterLifeCyclePolicy policy
-
defaultPolicy
protected Broadcaster.POLICY defaultPolicy
-
defaultPolicyInteger
protected int defaultPolicyInteger
-
config
protected AtmosphereConfig config
-
lifeCycleListener
protected final BroadcasterListener lifeCycleListener
-
legacyBroadcasterURI
public static final java.net.URI legacyBroadcasterURI
-
-
Constructor Detail
-
DefaultBroadcasterFactory
public DefaultBroadcasterFactory()
-
DefaultBroadcasterFactory
@Deprecated public DefaultBroadcasterFactory(java.lang.Class<? extends Broadcaster> clazz, java.lang.String broadcasterLifeCyclePolicy, AtmosphereConfig c)
Deprecated.
-
-
Method Detail
-
configure
public void configure(java.lang.Class<? extends Broadcaster> clazz, java.lang.String broadcasterLifeCyclePolicy, AtmosphereConfig c)
Description copied from interface:BroadcasterFactoryConfigure the factory- Specified by:
configurein interfaceBroadcasterFactory- Parameters:
clazz-BroadcasterbroadcasterLifeCyclePolicy-BroadcasterLifeCyclePolicyc-AtmosphereConfig
-
configure
protected void configure(java.lang.String broadcasterLifeCyclePolicy)
-
get
public Broadcaster get()
Description copied from interface:BroadcasterFactoryReturn an instance of the defaultBroadcaster. The name of the Broadcaster will be randomly generated.- Specified by:
getin interfaceBroadcasterFactory- Returns:
- an instance of the default
Broadcaster
-
get
public Broadcaster get(java.lang.Object id)
Description copied from interface:BroadcasterFactoryCreate a new instance ofBroadcasterand store it for.- Specified by:
getin interfaceBroadcasterFactory- Parameters:
id- The unique ID used to retrieveBroadcaster- Returns:
- a new instance of
Broadcaster
-
get
public <T extends Broadcaster> T get(java.lang.Class<T> c, java.lang.Object id)
Description copied from interface:BroadcasterFactoryCreate a new instance ofBroadcasterand store it for.- Specified by:
getin interfaceBroadcasterFactory- Parameters:
c- TheBroadcasterclass instance.id- The unique ID used to retrieveBroadcaster- Returns:
- a new instance of
Broadcaster
-
createBroadcaster
protected <T extends Broadcaster> T createBroadcaster(java.lang.Class<T> c, java.lang.Object id) throws BroadcasterFactory.BroadcasterCreationException
-
add
public boolean add(Broadcaster b, java.lang.Object id)
Description copied from interface:BroadcasterFactoryAdd aBroadcasterto the list.- Specified by:
addin interfaceBroadcasterFactory- Parameters:
b- aBroadcaster- Returns:
- false if a with the same name
Broadcasterwas already stored
-
remove
public boolean remove(Broadcaster b, java.lang.Object id)
Description copied from interface:BroadcasterFactoryRemove aBroadcasterfrom the list.- Specified by:
removein interfaceBroadcasterFactory- Parameters:
b- aBroadcasterid- the {@link Broadcaster's ID}- Returns:
- false if wasn't present, or
Broadcaster
-
lookup
public <T extends Broadcaster> T lookup(java.lang.Class<T> c, java.lang.Object id)
Description copied from interface:BroadcasterFactoryLookup aBroadcasterinstance usingBroadcaster.getID()or ID- Specified by:
lookupin interfaceBroadcasterFactoryid- The Broadcaster's unique ID, or name.- Returns:
- a Broadcaster, or null if not found.
-
lookup
public Broadcaster lookup(java.lang.Object id)
Description copied from interface:BroadcasterFactoryLookup aBroadcasterinstance usingBroadcaster.getID()or ID- Specified by:
lookupin interfaceBroadcasterFactory- Parameters:
id- The Broadcaster's unique ID, or name.- Returns:
- a Broadcaster, or null if not found.
-
lookup
public Broadcaster lookup(java.lang.Object id, boolean createIfNull)
Description copied from interface:BroadcasterFactoryLookup aBroadcasterinstance usingBroadcaster.getID()or ID- Specified by:
lookupin interfaceBroadcasterFactory- Parameters:
id- The Broadcaster's unique ID, or name.createIfNull- If the broadcaster is not found, create it.- Returns:
- a Broadcaster, or null if not found.
-
lookup
public <T extends Broadcaster> T lookup(java.lang.Class<T> c, java.lang.Object id, boolean createIfNull)
Description copied from interface:BroadcasterFactoryLookup aBroadcasterinstance usingBroadcaster.getID()or ID- Specified by:
lookupin interfaceBroadcasterFactoryid- The Broadcaster's unique ID, or name.createIfNull- If the broadcaster is not found, create it.- Returns:
- a Broadcaster, or null if not found.
-
lookup
public <T extends Broadcaster> T lookup(java.lang.Class<T> c, java.lang.Object id, boolean createIfNull, boolean unique)
-
removeAllAtmosphereResource
@Deprecated public void removeAllAtmosphereResource(AtmosphereResource r)
Deprecated.Description copied from interface:BroadcasterFactoryRemove all instances ofAtmosphereResourcefrom all registeredBroadcasters.- Specified by:
removeAllAtmosphereResourcein interfaceBroadcasterFactory- Parameters:
r- an voidAtmosphereResource
-
remove
public boolean remove(java.lang.Object id)
Description copied from interface:BroadcasterFactoryRemove the associatedBroadcaster.- Specified by:
removein interfaceBroadcasterFactory
-
lookupAll
public java.util.Collection<Broadcaster> lookupAll()
Description copied from interface:BroadcasterFactoryReturn an immutable Collection ofBroadcasterthis factory contains.- Specified by:
lookupAllin interfaceBroadcasterFactory- Returns:
- an immutable Collection of
Broadcasterthis factory contains.
-
destroy
public void destroy()
Description copied from interface:BroadcasterFactoryShutdown allBroadcasters.- Specified by:
destroyin interfaceBroadcasterFactory
-
notifyOnPostCreate
public void notifyOnPostCreate(Broadcaster b)
-
addBroadcasterListener
public BroadcasterFactory addBroadcasterListener(BroadcasterListener l)
Description copied from interface:BroadcasterFactoryAdd aBroadcasterListener- Specified by:
addBroadcasterListenerin interfaceBroadcasterFactory- Parameters:
l- aBroadcasterListener- Returns:
- this
-
removeBroadcasterListener
public BroadcasterFactory removeBroadcasterListener(BroadcasterListener l)
Description copied from interface:BroadcasterFactoryRemove aBroadcasterListener- Specified by:
removeBroadcasterListenerin interfaceBroadcasterFactory- Parameters:
l- aBroadcasterListener- Returns:
- this
-
broadcasterListeners
public java.util.Collection<BroadcasterListener> broadcasterListeners()
Return allBroadcasterListener.- Specified by:
broadcasterListenersin interfaceBroadcasterFactory- Returns:
BroadcasterListener
-
-