Easy example that listens to a specific IResolve.
Will do its best to reduce the IResolveChangeEvent to:
- start() - called after create with valid handle
- stop() - called before remove while handle is still valid
- dispose() - called after remove while handle is invalid
- refresh() - called when handle has changed
- replace() - called when handle is replaced
- reset() - called when handle is replaced, and replacement is unknown
Note 1: The IResolveDelta does not always include information about *your* handle. If your parent
is being replaced - your direct replacement may not be available until you ask for it.
Translation repalce with a null newResolve = reset. This indicates you need to find your handle
again from first principles.
Note 2: HandleListener only holds onto a IResolve with a weak reference. Although this protects
you a little bit, you still need to remove zombie listeners from the catalog (they cannot do it
themselves).
However when the weak reference is cleaned up, we will notice and call dispose for you.
author: jgarnett since: 0.9.0 |