com.atlassian.theplugin.commons.bamboo
Class BambooStatusChecker

java.lang.Object
  extended by com.atlassian.theplugin.commons.bamboo.BambooStatusChecker
All Implemented Interfaces:
SchedulableChecker

public final class BambooStatusChecker
extends java.lang.Object
implements SchedulableChecker

IDEA-specific class that uses to retrieve builds info and passes raw data to configured BambooStatusListeners.

Intended to be triggered by a Timer through the newTimerTask().

Thread safe.


Constructor Summary
BambooStatusChecker(ProjectId projectId, UIActionScheduler actionScheduler, BambooCfgManager cfgManager, PluginConfiguration pluginConfiguration, java.lang.Runnable missingPasswordHandler, Logger logger)
           
 
Method Summary
 boolean canSchedule()
          Provides info whether the component should be scheduled - ie.
 long getInterval()
          Preferred scheduling interval in milliseconds.
 java.lang.String getName()
           
 java.util.TimerTask newTimerTask()
          Create a new instance of TimerTask for Timer re-scheduling purposes.
 void registerListener(BambooStatusListener listener)
           
 void resetListenersState()
          Resets listeners (sets them to default state) Listeners should be set to default state if the checker topic list is empty
 void setActionScheduler(UIActionScheduler actionScheduler)
           
 void unregisterListener(BambooStatusListener listener)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BambooStatusChecker

public BambooStatusChecker(ProjectId projectId,
                           UIActionScheduler actionScheduler,
                           BambooCfgManager cfgManager,
                           PluginConfiguration pluginConfiguration,
                           java.lang.Runnable missingPasswordHandler,
                           Logger logger)
Method Detail

setActionScheduler

public void setActionScheduler(UIActionScheduler actionScheduler)

registerListener

public void registerListener(BambooStatusListener listener)

unregisterListener

public void unregisterListener(BambooStatusListener listener)

newTimerTask

public java.util.TimerTask newTimerTask()
Create a new instance of TimerTask for Timer re-scheduling purposes.

Specified by:
newTimerTask in interface SchedulableChecker
Returns:
new instance of TimerTask

canSchedule

public boolean canSchedule()
Description copied from interface: SchedulableChecker
Provides info whether the component should be scheduled - ie. if there is any work for it to be done on timer.

Specified by:
canSchedule in interface SchedulableChecker
Returns:
true when this component wants to be scheduled.

getInterval

public long getInterval()
Description copied from interface: SchedulableChecker
Preferred scheduling interval in milliseconds.

Will be used for Timer.schedule(java.util.TimerTask, long).

Specified by:
getInterval in interface SchedulableChecker
Returns:
Preferred scheduling interval in milliseconds.

resetListenersState

public void resetListenersState()
Resets listeners (sets them to default state) Listeners should be set to default state if the checker topic list is empty

Specified by:
resetListenersState in interface SchedulableChecker

getName

public java.lang.String getName()
Specified by:
getName in interface SchedulableChecker
Returns:
name of the checker which can be used for example in UI


Copyright © 2008-2009 Atlassian Pty Ltd. All Rights Reserved.