Class AbstractHandlerWithState
- All Implemented Interfaces:
IHandler,IHandler2,IObjectWithState,IStateListener
- Direct Known Subclasses:
HandlerServiceHandler
An abstract implementation of IObjectWithState. This provides basic
handling for adding and remove state. When state is added, the handler
attaches itself as a listener and fire a handleStateChange event to notify
this handler. When state is removed, the handler removes itself as a
listener.
Clients may extend this class.
- Since:
- 3.2
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds a state to this handler.voiddispose()The default implementation does nothing.final StateGets the state with the given id.final String[]Gets the identifiers for all of the state associated with this object.voidremoveState(String stateId) Removes a state from this handler.Methods inherited from class org.eclipse.core.commands.AbstractHandler
addHandlerListener, fireHandlerChanged, hasListeners, isEnabled, isHandled, removeHandlerListener, setBaseEnabled, setEnabledMethods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObjectMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.core.commands.IHandler
execute, getHandlerLabelMethods inherited from interface org.eclipse.core.commands.IStateListener
handleStateChange
-
Constructor Details
-
AbstractHandlerWithState
public AbstractHandlerWithState()
-
-
Method Details
-
addState
Adds a state to this handler. This will add this handler as a listener to the state, and then fire a handleStateChange so that the handler can respond to the incoming state.
Clients may extend this method, but they should call this super method first before doing anything else.
- Specified by:
addStatein interfaceIObjectWithState- Parameters:
stateId- The identifier indicating the type of state being added; must not benull.state- The state to add; must not benull.- See Also:
-
getState
Description copied from interface:IObjectWithStateGets the state with the given id.- Specified by:
getStatein interfaceIObjectWithState- Parameters:
stateId- The identifier of the state to retrieve; must not benull.- Returns:
- The state; may be
nullif there is no state with the given id.
-
getStateIds
Description copied from interface:IObjectWithStateGets the identifiers for all of the state associated with this object.- Specified by:
getStateIdsin interfaceIObjectWithState- Returns:
- All of the state identifiers; may be empty, but never
null.
-
removeState
Removes a state from this handler. This will remove this handler as a listener to the state. No event is fired to notify the handler of this change.
Clients may extend this method, but they should call this super method first before doing anything else.
- Specified by:
removeStatein interfaceIObjectWithState- Parameters:
stateId- The identifier of the state to remove; must not benull.
-
dispose
public void dispose()Description copied from class:AbstractHandlerThe default implementation does nothing. Subclasses who attach listeners to other objects are encouraged to detach them in this method.- Specified by:
disposein interfaceIHandler- Overrides:
disposein classAbstractHandler
-