com.atlassian.crowd.manager.directory.monitor
Class DirectoryMonitorManagerImpl

java.lang.Object
  extended by com.atlassian.crowd.manager.directory.monitor.DirectoryMonitorManagerImpl
All Implemented Interfaces:
DirectoryMonitorManager, com.atlassian.event.EventListener

public class DirectoryMonitorManagerImpl
extends Object
implements DirectoryMonitorManager, com.atlassian.event.EventListener


Constructor Summary
DirectoryMonitorManagerImpl(DirectoryManager directoryManager, DirectoryListenerManager directoryListenerManager, DirectoryPollerManager directoryPollerManager, com.atlassian.event.EventManager eventManager)
           
 
Method Summary
 void addMonitor(long directoryID)
          Adds a monitor to a particular directory.
 Class[] getHandledEventClasses()
           
 void handleEvent(com.atlassian.event.Event event)
           
 boolean hasMonitor(long directoryID)
          Determines whether a directory is currently being monitored.
protected  void removeAllMonitors()
           
 boolean removeMonitor(long directoryID)
          Removes a monitor from a monitored directory.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DirectoryMonitorManagerImpl

public DirectoryMonitorManagerImpl(DirectoryManager directoryManager,
                                   DirectoryListenerManager directoryListenerManager,
                                   DirectoryPollerManager directoryPollerManager,
                                   com.atlassian.event.EventManager eventManager)
Method Detail

addMonitor

public void addMonitor(long directoryID)
                throws ObjectNotFoundException,
                       DirectoryInstantiationException,
                       DirectoryMonitorCreationException,
                       DirectoryMonitorRegistrationException,
                       DirectoryMonitorAlreadyRegisteredException
Description copied from interface: DirectoryMonitorManager
Adds a monitor to a particular directory. The type of monitor added depends on whether the directory is PollingCapable or ListeningCapable.

Specified by:
addMonitor in interface DirectoryMonitorManager
Parameters:
directoryID - directory ID.
Throws:
ObjectNotFoundException - if a directory with the supplied ID does not exist.
DirectoryInstantiationException - if the raw remote directory cannot be instantiated.
DirectoryMonitorCreationException - if there was an error creating a monitor for the directory.
DirectoryMonitorRegistrationException - if there was an error registering the monitor.
DirectoryMonitorAlreadyRegisteredException - hasMonitor(directoryID) returns true.

removeMonitor

public boolean removeMonitor(long directoryID)
                      throws DirectoryMonitorUnregistrationException
Description copied from interface: DirectoryMonitorManager
Removes a monitor from a monitored directory.

Specified by:
removeMonitor in interface DirectoryMonitorManager
Parameters:
directoryID - directory ID.
Returns:
true if a monitor was removed.
Throws:
DirectoryMonitorUnregistrationException - if there was an error removing the monitor.

hasMonitor

public boolean hasMonitor(long directoryID)
Description copied from interface: DirectoryMonitorManager
Determines whether a directory is currently being monitored.

Specified by:
hasMonitor in interface DirectoryMonitorManager
Parameters:
directoryID - directory ID.
Returns:
true if an only if the directory is being monitored via a registered DirectoryListener or a DirectoryPoller.

removeAllMonitors

protected void removeAllMonitors()

handleEvent

public void handleEvent(com.atlassian.event.Event event)
Specified by:
handleEvent in interface com.atlassian.event.EventListener

getHandledEventClasses

public Class[] getHandledEventClasses()
Specified by:
getHandledEventClasses in interface com.atlassian.event.EventListener


Copyright © 2009 Atlassian Pty Ltd. All Rights Reserved.