org.apache.camel.support
Class TimerListenerManager

java.lang.Object
  extended by org.apache.camel.support.ServiceSupport
      extended by org.apache.camel.support.TimerListenerManager
All Implemented Interfaces:
Runnable, Service, ShutdownableService, StatefulService, SuspendableService

public class TimerListenerManager
extends ServiceSupport
implements Runnable

A TimerListener manager which triggers the TimerListener listeners once every second.

The setExecutorService(java.util.concurrent.ScheduledExecutorService) method must be invoked prior to starting this manager using the ServiceSupport.start() method.

Also ensure when adding and remove listeners, that they are correctly removed to avoid leaking memory.

See Also:
TimerListener

Field Summary
 
Fields inherited from class org.apache.camel.support.ServiceSupport
shutdown, shuttingdown, started, starting, stopped, stopping, suspended, suspending
 
Constructor Summary
TimerListenerManager()
           
 
Method Summary
 void addTimerListener(TimerListener listener)
          Adds the listener.
protected  void doShutdown()
          Implementations override this method to perform customized shutdown.
protected  void doStart()
          Implementations override this method to support customized start/stop.
protected  void doStop()
          Implementations override this method to support customized start/stop.
 long getInterval()
          Gets the interval in millis.
 void removeTimerListener(TimerListener listener)
          Removes the listener.
 void run()
           
 void setExecutorService(ScheduledExecutorService executorService)
           
 void setInterval(long interval)
          Sets the interval in millis.
 
Methods inherited from class org.apache.camel.support.ServiceSupport
doResume, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, resume, shutdown, start, stop, suspend
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TimerListenerManager

public TimerListenerManager()
Method Detail

setExecutorService

public void setExecutorService(ScheduledExecutorService executorService)

getInterval

public long getInterval()
Gets the interval in millis.

The default interval is 1000 millis.

Returns:
interval in millis.

setInterval

public void setInterval(long interval)
Sets the interval in millis.

Parameters:
interval - interval in millis.

run

public void run()
Specified by:
run in interface Runnable

addTimerListener

public void addTimerListener(TimerListener listener)
Adds the listener.

It may be important to implement Object.equals(Object) and Object.hashCode() for the listener to ensure that we can remove the same listener again, when invoking remove.

Parameters:
listener - listener

removeTimerListener

public void removeTimerListener(TimerListener listener)
Removes the listener.

It may be important to implement Object.equals(Object) and Object.hashCode() for the listener to ensure that we can remove the same listener again, when invoking remove.

Parameters:
listener - listener.

doStart

protected void doStart()
                throws Exception
Description copied from class: ServiceSupport
Implementations override this method to support customized start/stop.

Important: See ServiceSupport.doStop() for more details.

Specified by:
doStart in class ServiceSupport
Throws:
Exception
See Also:
ServiceSupport.doStop()

doStop

protected void doStop()
               throws Exception
Description copied from class: ServiceSupport
Implementations override this method to support customized start/stop.

Important: Camel will invoke this ServiceSupport.doStop() method when the service is being stopped. This method will also be invoked if the service is still in uninitialized state (eg has not been started). The method is always called to allow the service to do custom logic when the service is being stopped, such as when CamelContext is shutting down.

Specified by:
doStop in class ServiceSupport
Throws:
Exception
See Also:
ServiceSupport.doStart()

doShutdown

protected void doShutdown()
                   throws Exception
Description copied from class: ServiceSupport
Implementations override this method to perform customized shutdown.

Overrides:
doShutdown in class ServiceSupport
Throws:
Exception


Apache CAMEL