public class PoolableBroadcasterFactory extends DefaultBroadcasterFactory
PoolableProvider
to retrieve instance of Broadcaster
. This class
doesn't validate the id of the Broadcaster [Broadcaster.setID(String)
] and can return a Broadcaster
with was already created under that name. Set trackPooledBroadcaster(boolean)
or ApplicationConfig.SUPPORT_TRACKED_BROADCASTER
to true to track duplication but
be aware it can significantly reduce performance. Use the DefaultBroadcasterFactory
is recommended
under that scenario.
By default, this factory doesn't keep trace of created Broadcasters hence a new pooled Broadcaster will always
be returned unless trackPooledBroadcaster(boolean)
or ApplicationConfig.SUPPORT_TRACKED_BROADCASTER
is set to true.
This Factory has been designed for application.
This factory is usefull when an application needs a short-lived Broadcaster
.BroadcasterFactory.BroadcasterCreationException
broadcasterListeners, clazz, config, defaultPolicy, defaultPolicyInteger, legacyBroadcasterURI, lifeCycleListener, policy, store
Constructor and Description |
---|
PoolableBroadcasterFactory() |
PoolableBroadcasterFactory(Class<? extends Broadcaster> clazz,
String broadcasterLifeCyclePolicy,
AtmosphereConfig c)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
boolean |
add(Broadcaster b,
Object id)
Add a
Broadcaster to the list. |
protected void |
configure(String broadcasterLifeCyclePolicy) |
Broadcaster |
createBroadcaster() |
Broadcaster |
get()
Return an instance of the default
Broadcaster . |
<T extends Broadcaster> |
lookup(Class<T> c,
Object id,
boolean createIfNull,
boolean unique) |
Collection<Broadcaster> |
lookupAll()
Return an immutable Collection of
Broadcaster this factory contains. |
PoolableProvider<? extends Broadcaster,?> |
poolableProvider()
The current
PoolableProvider |
PoolableBroadcasterFactory |
poolableProvider(PoolableProvider<? extends Broadcaster,?> poolableProvider)
Set the implementation of
PoolableProvider |
boolean |
remove(Broadcaster b,
Object id)
Remove a
Broadcaster from the list. |
boolean |
remove(Object id)
Remove the associated
Broadcaster . |
void |
removeAllAtmosphereResource(AtmosphereResource r)
Remove all instances of
AtmosphereResource from all registered Broadcaster s. |
boolean |
trackPooledBroadcaster()
Return true is
Broadcaster instance are tracked, e.g stored in a Collection for duplicate id. |
PoolableBroadcasterFactory |
trackPooledBroadcaster(boolean trackPooledBroadcaster)
Set to true to enable tracking of
Broadcaster.getID() duplication. |
addBroadcasterListener, broadcasterListeners, configure, createBroadcaster, destroy, get, get, lookup, lookup, lookup, lookup, notifyOnPostCreate, removeBroadcasterListener
public PoolableBroadcasterFactory()
@Deprecated public PoolableBroadcasterFactory(Class<? extends Broadcaster> clazz, String broadcasterLifeCyclePolicy, AtmosphereConfig c)
protected void configure(String broadcasterLifeCyclePolicy)
configure
in class DefaultBroadcasterFactory
public Broadcaster get()
BroadcasterFactory
Broadcaster
.
The name of the Broadcaster will be randomly generated.get
in interface BroadcasterFactory
get
in class DefaultBroadcasterFactory
Broadcaster
public boolean add(Broadcaster b, Object id)
BroadcasterFactory
Broadcaster
to the list.add
in interface BroadcasterFactory
add
in class DefaultBroadcasterFactory
b
- a Broadcaster
Broadcaster
was already storedpublic boolean remove(Broadcaster b, Object id)
BroadcasterFactory
Broadcaster
from the list.remove
in interface BroadcasterFactory
remove
in class DefaultBroadcasterFactory
b
- a Broadcaster
id
- the ID
Broadcaster
public <T extends Broadcaster> T lookup(Class<T> c, Object id, boolean createIfNull, boolean unique)
lookup
in class DefaultBroadcasterFactory
public void removeAllAtmosphereResource(AtmosphereResource r)
BroadcasterFactory
AtmosphereResource
from all registered Broadcaster
s.removeAllAtmosphereResource
in interface BroadcasterFactory
removeAllAtmosphereResource
in class DefaultBroadcasterFactory
r
- an void AtmosphereResource
public boolean remove(Object id)
BroadcasterFactory
Broadcaster
.remove
in interface BroadcasterFactory
remove
in class DefaultBroadcasterFactory
public Collection<Broadcaster> lookupAll()
BroadcasterFactory
Broadcaster
this factory contains.lookupAll
in interface BroadcasterFactory
lookupAll
in class DefaultBroadcasterFactory
Broadcaster
this factory contains.public Broadcaster createBroadcaster()
public PoolableBroadcasterFactory trackPooledBroadcaster(boolean trackPooledBroadcaster)
Broadcaster.getID()
duplication. Enabling this
feature will significantly reduce the performance of the PoolableProvider
. Use the
DefaultBroadcasterFactory
if you need to track's duplication.trackPooledBroadcaster
- public boolean trackPooledBroadcaster()
Broadcaster
instance are tracked, e.g stored in a Collection for duplicate id.Broadcaster
instance are tracked, e.g stored in a Collection for duplicate id.public PoolableProvider<? extends Broadcaster,?> poolableProvider()
PoolableProvider
PoolableProvider
public PoolableBroadcasterFactory poolableProvider(PoolableProvider<? extends Broadcaster,?> poolableProvider)
PoolableProvider
poolableProvider
- the implementation of PoolableProvider
Copyright © 2016. All rights reserved.