org.springframework.data.gemfire.wan
Class AsyncEventQueueFactoryBean

java.lang.Object
  extended by org.springframework.data.gemfire.wan.AbstractWANComponentFactoryBean<com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue>
      extended by org.springframework.data.gemfire.wan.AsyncEventQueueFactoryBean
All Implemented Interfaces:
Aware, BeanNameAware, DisposableBean, FactoryBean<com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue>, InitializingBean

public class AsyncEventQueueFactoryBean
extends AbstractWANComponentFactoryBean<com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue>

FactoryBean for creating GemFire AsyncEventQueues.


Field Summary
 
Fields inherited from class org.springframework.data.gemfire.wan.AbstractWANComponentFactoryBean
cache, factory, log, VALID_ORDER_POLICIES
 
Constructor Summary
AsyncEventQueueFactoryBean(com.gemstone.gemfire.cache.Cache cache)
          Constructs an instance of the AsyncEventQueueFactoryBean for creating an GemFire AsyncEventQueue.
AsyncEventQueueFactoryBean(com.gemstone.gemfire.cache.Cache cache, com.gemstone.gemfire.cache.asyncqueue.AsyncEventListener asyncEventListener)
          Constructs an instance of the AsyncEventQueueFactoryBean for creating an GemFire AsyncEventQueue.
 
Method Summary
 void destroy()
           
protected  void doInit()
           
 com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue getObject()
           
 Class<?> getObjectType()
           
 boolean isParallelEventQueue()
           
 boolean isSerialEventQueue()
           
 void setAsyncEventListener(com.gemstone.gemfire.cache.asyncqueue.AsyncEventListener listener)
           
 void setAsyncEventQueue(com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue asyncEventQueue)
           
 void setBatchConflationEnabled(Boolean batchConflationEnabled)
          Enable or disable the Async Event Queue's (AEQ) should conflate messages.
 void setBatchSize(Integer batchSize)
           
 void setBatchTimeInterval(Integer batchTimeInterval)
          Set the Aysync Event Queue's (AEQ) interval between sending batches.
 void setDiskStoreRef(String diskStoreRef)
           
 void setDiskSynchronous(Boolean diskSynchronous)
          Set the Async Event Queue (AEQ) disk write synchronization policy.
 void setDispatcherThreads(Integer dispatcherThreads)
          Set the number of dispatcher threads used to process Region events from the associated Aysnc Event Queue (AEQ).
 void setMaximumQueueMemory(Integer maximumQueueMemory)
           
 void setOrderPolicy(String orderPolicy)
          Set the Async Event Queue (AEQ) ordering policy (e.g.
 void setParallel(Boolean parallel)
           
 void setPersistent(Boolean persistent)
           
 
Methods inherited from class org.springframework.data.gemfire.wan.AbstractWANComponentFactoryBean
afterPropertiesSet, getName, isSingleton, setBeanName, setFactory, setName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AsyncEventQueueFactoryBean

public AsyncEventQueueFactoryBean(com.gemstone.gemfire.cache.Cache cache)
Constructs an instance of the AsyncEventQueueFactoryBean for creating an GemFire AsyncEventQueue.

Parameters:
cache - the GemFire Cache reference.
See Also:
AsyncEventQueueFactoryBean(com.gemstone.gemfire.cache.Cache, com.gemstone.gemfire.cache.asyncqueue.AsyncEventListener)

AsyncEventQueueFactoryBean

public AsyncEventQueueFactoryBean(com.gemstone.gemfire.cache.Cache cache,
                                  com.gemstone.gemfire.cache.asyncqueue.AsyncEventListener asyncEventListener)
Constructs an instance of the AsyncEventQueueFactoryBean for creating an GemFire AsyncEventQueue.

Parameters:
cache - the GemFire Cache reference.
asyncEventListener - required AsyncEventListener
Method Detail

getObject

public com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue getObject()
                                                                throws Exception
Specified by:
getObject in interface FactoryBean<com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue>
Specified by:
getObject in class AbstractWANComponentFactoryBean<com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue>
Throws:
Exception

getObjectType

public Class<?> getObjectType()
Specified by:
getObjectType in interface FactoryBean<com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue>
Specified by:
getObjectType in class AbstractWANComponentFactoryBean<com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue>

doInit

protected void doInit()
Specified by:
doInit in class AbstractWANComponentFactoryBean<com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue>

destroy

public void destroy()
             throws Exception
Specified by:
destroy in interface DisposableBean
Overrides:
destroy in class AbstractWANComponentFactoryBean<com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue>
Throws:
Exception

setAsyncEventListener

public final void setAsyncEventListener(com.gemstone.gemfire.cache.asyncqueue.AsyncEventListener listener)

setDiskStoreRef

public void setDiskStoreRef(String diskStoreRef)

setBatchSize

public void setBatchSize(Integer batchSize)

setMaximumQueueMemory

public void setMaximumQueueMemory(Integer maximumQueueMemory)

setPersistent

public void setPersistent(Boolean persistent)

setParallel

public void setParallel(Boolean parallel)

isSerialEventQueue

public boolean isSerialEventQueue()

isParallelEventQueue

public boolean isParallelEventQueue()

setAsyncEventQueue

public void setAsyncEventQueue(com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue asyncEventQueue)
Parameters:
asyncEventQueue - overrides Async Event Queue returned by this FactoryBean.

setDispatcherThreads

public void setDispatcherThreads(Integer dispatcherThreads)
Set the number of dispatcher threads used to process Region events from the associated Aysnc Event Queue (AEQ).

Parameters:
dispatcherThreads - an integer indicating the number of dispatcher threads used to process Region events from the associated queue.

setBatchTimeInterval

public void setBatchTimeInterval(Integer batchTimeInterval)
Set the Aysync Event Queue's (AEQ) interval between sending batches.

Parameters:
batchTimeInterval - an integer value indicating the maximum number of milliseconds that can elapse between sending batches.

setBatchConflationEnabled

public void setBatchConflationEnabled(Boolean batchConflationEnabled)
Enable or disable the Async Event Queue's (AEQ) should conflate messages.

Parameters:
batchConflationEnabled - a boolean value indicating whether to conflate queued events.

setDiskSynchronous

public void setDiskSynchronous(Boolean diskSynchronous)
Set the Async Event Queue (AEQ) disk write synchronization policy.

Parameters:
diskSynchronous - a boolean value indicating whether disk writes are synchronous.

setOrderPolicy

public void setOrderPolicy(String orderPolicy)
Set the Async Event Queue (AEQ) ordering policy (e.g. KEY, PARTITION, THREAD). When dispatcher threads are greater than 1, the ordering policy configures the way in which multiple dispatcher threads process Region events from the queue.

Parameters:
orderPolicy - a String to indicate the AEQ order policy.