Package org.eclipse.team.ui.mapping
Class MergeActionHandler
java.lang.Object
org.eclipse.core.commands.common.EventManager
org.eclipse.core.commands.AbstractHandler
org.eclipse.team.ui.mapping.MergeActionHandler
An abstract superclass that enables models to create handlers
for the basic merge operations (merge, overwrite and mark-as-merged).
This class makes use of a
SynchronizationOperation
to determine its
enablement state and execute the handler. Enablement is determined
using SynchronizationOperation.shouldRun()
and the handler will
invoke TeamOperation.run()
when executed.- Since:
- 3.2
- See Also:
-
Constructor Summary
ConstructorDescriptionMergeActionHandler
(ISynchronizePageConfiguration configuration) Create the handler. -
Method Summary
Modifier and TypeMethodDescriptionvoid
dispose()
Deregister this handler from selection change events.execute
(ExecutionEvent event) Executes with the map of parameter values by name.protected final ISynchronizePageConfiguration
Return the configuration of the synchronize page that is surfacing the merge action to which this handler is registered.static IHandler
getDefaultHandler
(String mergeActionId, ISynchronizePageConfiguration configuration) Return an instance of the default handler for the given merge action id.protected abstract SynchronizationOperation
Return the synchronization operation that performs the merge operation.Return the saveable that is the target of this handler.protected final IStructuredSelection
Return the current selection.boolean
Whether this handler is capable of executing at this time.protected void
setEnabled
(boolean isEnabled) Set the enablement of this handler.protected void
updateEnablement
(IStructuredSelection selection) Update the enablement of this handler for the new selection.Methods inherited from class org.eclipse.core.commands.AbstractHandler
addHandlerListener, fireHandlerChanged, hasListeners, isHandled, removeHandlerListener, setBaseEnabled, setEnabled
Methods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.core.commands.IHandler
getHandlerLabel
-
Constructor Details
-
MergeActionHandler
Create the handler.- Parameters:
configuration
- the configuration for the synchronize page displaying the model.
-
-
Method Details
-
getDefaultHandler
public static IHandler getDefaultHandler(String mergeActionId, ISynchronizePageConfiguration configuration) Return an instance of the default handler for the given merge action id. Note that this handler must be disposed by the caller when it is no longer needed.- Parameters:
mergeActionId
- the merge action idconfiguration
- the synchronization page configuration- Returns:
- the default handler for the given merge action or
null
-
dispose
public void dispose()Deregister this handler from selection change events.- Specified by:
dispose
in interfaceIHandler
- Overrides:
dispose
in classAbstractHandler
-
updateEnablement
Update the enablement of this handler for the new selection. By default, this method uses theshouldRun
method of the handler's operation to determine the enablement of this handler. Subclasses may override but should either still invoke this method or callsetEnabled(boolean)
to set the enablement.- Parameters:
selection
- the selection
-
getConfiguration
Return the configuration of the synchronize page that is surfacing the merge action to which this handler is registered.- Returns:
- the synchronize page configuration
-
getStructuredSelection
Return the current selection.- Returns:
- the current selection.
-
isEnabled
public boolean isEnabled()Description copied from class:AbstractHandler
Whether this handler is capable of executing at this time. Subclasses may override this method. If clients override this method they should also consider overridingAbstractHandler.setEnabled(Object)
so they can be notified about framework execution contexts.- Specified by:
isEnabled
in interfaceIHandler
- Overrides:
isEnabled
in classAbstractHandler
- Returns:
true
- See Also:
-
setEnabled
protected void setEnabled(boolean isEnabled) Set the enablement of this handler.- Parameters:
isEnabled
- whether the handler is enabled
-
execute
Description copied from interface:IHandler
Executes with the map of parameter values by name.- Parameters:
event
- An event containing all the information about the current state of the application; must not benull
.- Returns:
- the result of the execution. Reserved for future use, must be
null
. - Throws:
ExecutionException
- if an exception occurred during execution.
-
getOperation
Return the synchronization operation that performs the merge operation.- Returns:
- a synchronization operation
-
getSaveable
Return the saveable that is the target of this handler. By default, the saveable of this handlers operation is returned.- Returns:
- the saveable that is the target of this operation
-