Package org.atmosphere.util
Class AbstractBroadcasterProxy
- java.lang.Object
-
- org.atmosphere.cpr.DefaultBroadcaster
-
- org.atmosphere.util.AbstractBroadcasterProxy
-
- All Implemented Interfaces:
Broadcaster
public abstract class AbstractBroadcasterProxy extends DefaultBroadcaster
AbstractBroadcasterthat delegates the internal processing to a proxy.- Author:
- Jeanfrancois Arcand
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.atmosphere.cpr.DefaultBroadcaster
DefaultBroadcaster.AsyncWriteToken, DefaultBroadcaster.WriteQueue
-
Nested classes/interfaces inherited from interface org.atmosphere.cpr.Broadcaster
Broadcaster.POLICY, Broadcaster.SCOPE
-
-
Field Summary
-
Fields inherited from class org.atmosphere.cpr.DefaultBroadcaster
asyncWriteFuture, bc, broadcasterListeners, broadcastOnResume, CACHED, candidateForPoolable, config, delayedBroadcast, destroyed, dispatchThread, initialized, lifeCycleListeners, messages, name, notifierFuture, POLLING_DEFAULT, resources, scope, sharedListeners, started, uniqueWriteQueue, uri, usingTokenIdForAttribute, waitTime, writeQueues, writeTimeoutInSecond
-
Fields inherited from interface org.atmosphere.cpr.Broadcaster
ROOT_MASTER
-
-
Constructor Summary
Constructors Constructor Description AbstractBroadcasterProxy()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected java.util.concurrent.Future<java.lang.Object>b(java.lang.Object msg)java.util.concurrent.Future<java.lang.Object>broadcast(java.lang.Object msg)Broadcast theObjectto all suspended responses, eg.java.util.concurrent.Future<java.lang.Object>broadcast(java.lang.Object msg, java.util.Set<AtmosphereResource> subset)Broadcast theObjectto all suspended response, eg.java.util.concurrent.Future<java.lang.Object>broadcast(java.lang.Object msg, AtmosphereResource r)Broadcast theObjectto all suspended responses, eg.protected voidbroadcastReceivedMessage(java.lang.Object message)protected java.lang.RunnablegetBroadcastHandler()abstract voidincomingBroadcast()Implement this method to broadcast message received from an external source like JGroups, Redis, etc.Broadcasterinitialize(java.lang.String id, java.net.URI uri, AtmosphereConfig config)Configure a Broadcaster.protected voidinvokeOnStateChange(AtmosphereResource r, AtmosphereResourceEvent e)abstract voidoutgoingBroadcast(java.lang.Object message)Implement this method to broadcast message to external source like JGroups, Redis, etc.protected voidreconfigure()-
Methods inherited from class org.atmosphere.cpr.DefaultBroadcaster
addAtmosphereResource, addBroadcasterLifeCyclePolicyListener, addBroadcasterListener, awaitAndBroadcast, broadcasterListeners, broadcastOnResume, broadcastOnResume, cacheAndSuspend, cacheLostMessage, cacheLostMessage, cacheLostMessage, cacheMessageOnIOException, checkCachedAndPush, createBroadcasterConfig, currentLifecycleTask, currentLifecycleTask, delayBroadcast, delayBroadcast, deliverPush, destroy, dispatchMessages, endBroadcast, entryDone, executeAsyncWrite, executeBlockingWrite, filter, futureDone, getAsyncWriteHandler, getAtmosphereResources, getBroadcasterConfig, getBroadcasterLifeCyclePolicy, getID, getScope, initialize, isDestroyed, killReactiveThreads, lifecycleHandler, lifecycleHandler, lifeCycleListeners, lifeCyclePolicy, messages, notifyAndAdd, notifyBroadcastListener, notifyOnAddAtmosphereResourceListener, notifyOnMessage, notifyOnRemoveAtmosphereResourceListener, onException, onException, outOfOrderBroadcastSupported, perRequestFilter, policy, prepareInvokeOnStateChange, push, queueWriteIO, reactiveThreadsCount, recentActivity, releaseExternalResources, removeAtmosphereResource, removeAtmosphereResource, removeBroadcasterLifeCyclePolicyListener, removeBroadcasterListener, rename, resumeAll, retrieveTrackedBroadcast, scheduleFixedBroadcast, scheduleFixedBroadcast, setBroadcasterConfig, setBroadcasterLifeCyclePolicy, setID, setScope, setSuspendPolicy, spawnReactor, start, toString, writeQueues
-
-
-
-
Method Detail
-
initialize
public Broadcaster initialize(java.lang.String id, java.net.URI uri, AtmosphereConfig config)
Description copied from interface:BroadcasterConfigure a Broadcaster.- Specified by:
initializein interfaceBroadcaster- Overrides:
initializein classDefaultBroadcasterconfig- anAtmosphereConfig- Returns:
- a usable Broadcaster.
-
incomingBroadcast
public abstract void incomingBroadcast()
Implement this method to broadcast message received from an external source like JGroups, Redis, etc.
-
outgoingBroadcast
public abstract void outgoingBroadcast(java.lang.Object message)
Implement this method to broadcast message to external source like JGroups, Redis, etc.- Parameters:
message- outgoing message
-
getBroadcastHandler
protected java.lang.Runnable getBroadcastHandler()
- Overrides:
getBroadcastHandlerin classDefaultBroadcaster
-
reconfigure
protected void reconfigure()
-
invokeOnStateChange
protected void invokeOnStateChange(AtmosphereResource r, AtmosphereResourceEvent e)
- Overrides:
invokeOnStateChangein classDefaultBroadcaster
-
broadcastReceivedMessage
protected void broadcastReceivedMessage(java.lang.Object message)
-
broadcast
public java.util.concurrent.Future<java.lang.Object> broadcast(java.lang.Object msg)
Description copied from interface:BroadcasterBroadcast theObjectto all suspended responses, eg. invokeAtmosphereHandler.onStateChange(org.atmosphere.cpr.AtmosphereResourceEvent).- Specified by:
broadcastin interfaceBroadcaster- Overrides:
broadcastin classDefaultBroadcaster- Parameters:
msg- theObjectto be broadcasted- Returns:
- a
Futurethat can be used to synchronize using theFuture.get()
-
b
protected java.util.concurrent.Future<java.lang.Object> b(java.lang.Object msg)
-
broadcast
public java.util.concurrent.Future<java.lang.Object> broadcast(java.lang.Object msg, AtmosphereResource r)Description copied from interface:BroadcasterBroadcast theObjectto all suspended responses, eg. invokeAtmosphereHandler.onStateChange(org.atmosphere.cpr.AtmosphereResourceEvent)with an instance ofAtmosphereResource, representing a single suspended response.- Specified by:
broadcastin interfaceBroadcaster- Overrides:
broadcastin classDefaultBroadcaster- Parameters:
msg- theObjectto be broadcastedr- anAtmosphereResource- Returns:
- a
Futurethat can be used to synchronize using theFuture.get()
-
broadcast
public java.util.concurrent.Future<java.lang.Object> broadcast(java.lang.Object msg, java.util.Set<AtmosphereResource> subset)Description copied from interface:BroadcasterBroadcast theObjectto all suspended response, eg. invokeAtmosphereHandler.onStateChange(org.atmosphere.cpr.AtmosphereResourceEvent)with aSetofAtmosphereResource, representing a set ofAtmosphereHandler.- Specified by:
broadcastin interfaceBroadcaster- Overrides:
broadcastin classDefaultBroadcaster- Parameters:
msg- theObjectto be broadcastedsubset- a Set ofAtmosphereResource- Returns:
- a
Futurethat can be used to synchronize using theFuture.get()
-
-