com.atlassian.crowd.acceptance.tests.directory
Class NoopPollerManager

java.lang.Object
  extended by com.atlassian.crowd.acceptance.tests.directory.NoopPollerManager
All Implemented Interfaces:
DirectoryPollerManager

public class NoopPollerManager
extends Object
implements DirectoryPollerManager

Noop instance of the poller manager that is used when driving the test harness.


Constructor Summary
NoopPollerManager()
           
 
Method Summary
 void addPoller(DirectoryPoller poller)
          Adds a configured DirectoryPoller to the scheduler.
 boolean hasPoller(long directoryID)
          Checks whether a DirectoryPoller is scheduled to poll a given directory.
 void removeAllPollers()
          Attempts to unregister all registered pollers.
 boolean removePoller(long directoryID)
          Removes the DirectoryPoller from the scheduler if one exists for the given directory.
 void triggerPoll(long directoryID, SynchronisationMode synchronisationMode)
          Manually triggers the directory poller to immediately poll the directory and synchronise changes.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NoopPollerManager

public NoopPollerManager()
Method Detail

addPoller

public void addPoller(DirectoryPoller poller)
               throws DirectoryMonitorRegistrationException
Description copied from interface: DirectoryPollerManager
Adds a configured DirectoryPoller to the scheduler.

Specified by:
addPoller in interface DirectoryPollerManager
Parameters:
poller - configured DirectoryPoller.
Throws:
DirectoryMonitorRegistrationException - error registering poller with scheduler.

hasPoller

public boolean hasPoller(long directoryID)
Description copied from interface: DirectoryPollerManager
Checks whether a DirectoryPoller is scheduled to poll a given directory.

Specified by:
hasPoller in interface DirectoryPollerManager
Parameters:
directoryID - directory ID.
Returns:
true if and only if a poller has been scheduled.

triggerPoll

public void triggerPoll(long directoryID,
                        SynchronisationMode synchronisationMode)
Description copied from interface: DirectoryPollerManager
Manually triggers the directory poller to immediately poll the directory and synchronise changes. This can be used to asynchronously start a directory synchronisation using the underlying scheduler. If a manual poll is triggered while another poll is running, the manual poll will not queue (i.e. it will do nothing). You can check if a directory is currently synchronising by calling the DirectoryManager.isSynchronising(long). If the directory does not exist or has no poller associated with it, this method will do nothing. You can check if a directory has a poller associated with it by calling DirectoryPollerManager.hasPoller(long).

Specified by:
triggerPoll in interface DirectoryPollerManager
Parameters:
directoryID - directory ID.
synchronisationMode - determines whether the poll only requests elements that have changed since a timestamp or if it queries for the entire user base from the remote directory and determines changes locally.

removePoller

public boolean removePoller(long directoryID)
                     throws DirectoryMonitorUnregistrationException
Description copied from interface: DirectoryPollerManager
Removes the DirectoryPoller from the scheduler if one exists for the given directory.

Specified by:
removePoller in interface DirectoryPollerManager
Parameters:
directoryID - directory ID.
Returns:
true if and only if a poller existed and was removed from polling the given directory.
Throws:
DirectoryMonitorUnregistrationException - If an error occurs during remove.

removeAllPollers

public void removeAllPollers()
Description copied from interface: DirectoryPollerManager
Attempts to unregister all registered pollers. Skips over any directories that fail unregistration.

Specified by:
removeAllPollers in interface DirectoryPollerManager


Copyright © 2013 Atlassian. All Rights Reserved.