public class BroadcasterConfig extends Object
| Modifier and Type | Field and Description |
|---|---|
protected ConcurrentLinkedQueue<BroadcastFilter> |
filters |
protected ConcurrentLinkedQueue<PerRequestBroadcastFilter> |
perRequestFilters |
| Constructor and Description |
|---|
BroadcasterConfig(ExecutorService executorService,
ExecutorService asyncWriteService,
ScheduledExecutorService scheduler,
AtmosphereConfig config,
String name)
Create a new BroadcasterConfig.
|
BroadcasterConfig(List<String> broadcastFilters,
AtmosphereConfig config,
boolean handleExecutors,
String name)
Create a new BroadcasterConfig.
|
BroadcasterConfig(List<String> broadcastFilters,
AtmosphereConfig config,
String name)
Create a new BroadcasterConfig.
|
protected final ConcurrentLinkedQueue<BroadcastFilter> filters
protected final ConcurrentLinkedQueue<PerRequestBroadcastFilter> perRequestFilters
public BroadcasterConfig(List<String> broadcastFilters, AtmosphereConfig config, String name)
broadcastFilters - config - name - public BroadcasterConfig(List<String> broadcastFilters, AtmosphereConfig config, boolean handleExecutors, String name)
broadcastFilters - config - handleExecutors - name - public BroadcasterConfig(ExecutorService executorService, ExecutorService asyncWriteService, ScheduledExecutorService scheduler, AtmosphereConfig config, String name)
executorService - asyncWriteService - scheduler - config - name - public BroadcasterConfig init()
protected void configureSharedCacheExecutor()
protected BroadcasterConfig broadcasterID(String name)
protected void initClusterExtension()
protected void configExecutors()
public BroadcasterConfig setExecutorService(ExecutorService executorService)
ExecutorService which can be used to dispatch
AtmosphereResourceEvent. By default, an Executors.newFixedThreadPool(int)
of size 1 is used if this method is not invoked.executorService - to be used when broadcasting.public BroadcasterConfig setExecutorService(ExecutorService executorService, boolean isExecutorShared)
ExecutorService which can be used to dispatch
AtmosphereResourceEvent. By default, an Executors.newFixedThreadPool(int)
of size 1 is used if this method is not invoked.executorService - to be used when broadcasting.isExecutorShared - true if the life cycle of the ExecutorService will be executed by the application.
It means Atmosphere will NOT invoke the shutdown method when destroy()
is invoked.public ExecutorService getExecutorService()
ExecutorService this Broadcaster supports.
By default it returns an Executors.newFixedThreadPool(int) of size 1.public BroadcasterConfig setAsyncWriteService(ExecutorService asyncWriteService)
ExecutorService which can be used to write
AtmosphereResourceEvent.getMessage(). By default, an Executors.newFixedThreadPool(int)
is used if this method is not invoked.asyncWriteService - to be used when writing events.public BroadcasterConfig setAsyncWriteService(ExecutorService asyncWriteService, boolean isAsyncExecutorShared)
ExecutorService which can be used to write
AtmosphereResourceEvent.getMessage(). By default, an Executors.newFixedThreadPool(int)
is used if this method is not invoked.asyncWriteService - to be used when writing events.isAsyncExecutorShared - true if the life cycle of the ExecutorService will be executed by the application.
It means Atmosphere will NOT invoke the shutdown method when this destroy()
is invoked.public ExecutorService getAsyncWriteService()
ExecutorService this Broadcaster use for executing asynchronous write of events.
By default it returns an Executors.newCachedThreadPool() of size 1.public boolean addFilter(BroadcastFilter e)
BroadcastFilter.e - BroadcastFilterprotected boolean addFilter(BroadcastFilter e, boolean init)
BroadcastFilter.e - BroadcastFilterpublic Collection<BroadcastFilter> filters()
BroadcastFilters.BroadcastFilterspublic void destroy()
protected void destroy(boolean force)
public void forceDestroy()
ExecutorServices.public boolean removeFilter(BroadcastFilter filter)
BroadcastFilter.filter - BroadcastFilterpublic void removeAllFilters()
BroadcastFilters.public boolean hasFilters()
BroadcastFilters.BroadcastFilterspublic boolean hasPerRequestFilters()
BroadcastFilters.BroadcastFiltersprotected BroadcastFilter.BroadcastAction filter(Object object)
BroadcastFilters in the order they were added.object - the broadcasted object.protected BroadcastFilter.BroadcastAction filter(AtmosphereResource r, Object message, Object originalMessage)
BroadcastFilters in the order they were added, with a unique AtmosphereRequest.r - AtmosphereResourcemessage - the broadcasted object.message - the broadcasted object.public List<Object> applyFilters(AtmosphereResource r, List<Object> cacheMessages)
AtmosphereResource and the provided List of messages.r - AtmosphereResourcecacheMessages - list of messagespublic BroadcasterConfig setScheduledExecutorService(ScheduledExecutorService scheduler)
ExecutorService which can be used to dispatch
AtmosphereResourceEvents. By default a ScheduledExecutorService
is used if this method is not invoked.scheduler - to be used when broadcasting.public ScheduledExecutorService getScheduledExecutorService()
ScheduledExecutorService this Broadcaster supports.
By default it returns an Executors.newScheduledThreadPool(int) and will use
the underlying number of core/protocol as an indication of the thread number.public BroadcasterConfig setBroadcasterCache(BroadcasterCache broadcasterCache)
BroadcasterCache.broadcasterCache - a BroadcasterCachepublic BroadcasterCache getBroadcasterCache()
BroadcasterCache used for this Broadcaster.BroadcasterCachepublic AtmosphereConfig getAtmosphereConfig()
AtmosphereConfig value. This value might be null
if the associated Broadcaster has been created manually.AtmosphereConfigCopyright © 2014. All Rights Reserved.