com.tivoli.twg.engine
Interface TWGManagedObjectLifeCycleListener

All Known Implementing Classes:
TWGClusterManagedObjectFactory, TWGSNMPDevice

public interface TWGManagedObjectLifeCycleListener

Listener interface for notification of creation, deletion, and significant modifications of TWGManagedObject instances. These changes specifically do NOT include on-line/off-line state changes, or other configuration changes which do not have a bearing on the nature of the managed object (i.e. name changes, ping rate, etc). All listener methods are required to be executed quickly by the listener (either by doing only a trivial operation, or by enqueuing the notification to some other handler to be executed after the callback). Failure to follow this behavior can have significant impacts on server performance. Specifically, a listener cannot invoke blocking ServiceNode calls (such as SendCommand()), and must instead use non-blocking versions (such as SendAsynchCommand()).


Method Summary
 void managedObjectChanged(TWGManagedObject twgmo, int reason)
          Notification method for TWGManagedObject type and/or content change.
 void managedObjectCreated(TWGManagedObject twgmo)
          Notification method for TWGManagedObject creation.
 void managedObjectDestroyed(TWGManagedObject twgmo)
          Notification method for TWGManagedObject deletion.
 

Method Detail

managedObjectCreated

public void managedObjectCreated(TWGManagedObject twgmo)
Notification method for TWGManagedObject creation. This method is called after the object has been fully created (including being assigned an object ID and being saved to the persistent store). Implementations of this callback must execute quickly without blocking.

Parameters:
twgmo - - Reference to newly created TWGManagedObject

managedObjectDestroyed

public void managedObjectDestroyed(TWGManagedObject twgmo)
Notification method for TWGManagedObject deletion. This method is called while the object is being Destroy()-ed, but before it is Delete()-ed. Implementations of this callback must execute quickly without blocking. Also, listener MUST NOT maintain any references to the provided object after the callback returns.

Parameters:
twgmo - - Reference to TWGManagedObject to be deleted

managedObjectChanged

public void managedObjectChanged(TWGManagedObject twgmo,
                                 int reason)
Notification method for TWGManagedObject type and/or content change. This notification is used to signal the occurance of a "significant" change to the nature or content of the TWGManagedObject, including a "morph" to a new type (subclass or superclass), an operating system or hardware change, etc. This notification is intended to allow listeners to "reconsider" any characterizations they may have of the device (i.e. rerun an inventory, or invalidate other cached information). This notification is NOT sent for on-line/off-line changes, or changes in the configuration of the managed object (i.e. name, ping rate, task associations, etc). Implementations of this callback must execute quickly without blocking.

Parameters:
twgmo - - Reference to modified TWGManagedObject
reason - - reason for change notification