Class MessageGroupStoreReaper
java.lang.Object
org.springframework.integration.store.MessageGroupStoreReaper
- All Implemented Interfaces:
Runnable,DisposableBean,InitializingBean,Lifecycle,Phased,SmartLifecycle
public class MessageGroupStoreReaper extends Object implements Runnable, DisposableBean, InitializingBean, SmartLifecycle
Convenient configurable component to allow explicit timed expiry of
MessageGroup instances in a
MessageGroupStore. This component provides a no-args run() method that is useful for remote or timed
execution and a destroy() method that can optionally be called on shutdown.- Author:
- Dave Syer, Dave Turanski, Artem Bilan
-
Field Summary
-
Constructor Summary
Constructors Constructor Description MessageGroupStoreReaper()MessageGroupStoreReaper(MessageGroupStore messageGroupStore) -
Method Summary
Modifier and Type Method Description voidafterPropertiesSet()voiddestroy()intgetPhase()booleanisAutoStartup()booleanisRunning()voidrun()Expire all message groups older than thetimeoutprovided.voidsetAutoStartup(boolean autoStartup)voidsetExpireOnDestroy(boolean expireOnDestroy)Flag to indicate that the stores should be expired when this component is destroyed (i.e.voidsetMessageGroupStore(MessageGroupStore messageGroupStore)A message group store to expire according the other configurations.voidsetPhase(int phase)voidsetTimeout(long timeout)Timeout in milliseconds (default -1).voidstart()voidstop()
-
Constructor Details
-
MessageGroupStoreReaper
-
MessageGroupStoreReaper
public MessageGroupStoreReaper()
-
-
Method Details
-
setExpireOnDestroy
public void setExpireOnDestroy(boolean expireOnDestroy)Flag to indicate that the stores should be expired when this component is destroyed (i.e. usually when its enclosingApplicationContextis closed).- Parameters:
expireOnDestroy- the flag value to set
-
setTimeout
public void setTimeout(long timeout)Timeout in milliseconds (default -1). If negative then no groups ever time out. If greater than zero then all groups older than that value are expired when this component isrun().- Parameters:
timeout- the timeout to set
-
setMessageGroupStore
A message group store to expire according the other configurations.- Parameters:
messageGroupStore- theMessageGroupStoreto set
-
afterPropertiesSet
public void afterPropertiesSet()- Specified by:
afterPropertiesSetin interfaceInitializingBean
-
destroy
public void destroy()- Specified by:
destroyin interfaceDisposableBean
-
run
public void run()Expire all message groups older than thetimeoutprovided. Normally this method would be executed by a scheduled task. -
start
public final void start() -
stop
public void stop() -
isRunning
public final boolean isRunning() -
getPhase
public int getPhase()- Specified by:
getPhasein interfacePhased- Specified by:
getPhasein interfaceSmartLifecycle
-
setPhase
public void setPhase(int phase) -
isAutoStartup
public boolean isAutoStartup()- Specified by:
isAutoStartupin interfaceSmartLifecycle
-
setAutoStartup
public void setAutoStartup(boolean autoStartup)
-