Interface IDebugCommandHandler
- All Known Subinterfaces:
IDisconnectHandler
,IDropToFrameHandler
,IRestartHandler
,IResumeHandler
,IStepFiltersHandler
,IStepIntoHandler
,IStepOverHandler
,IStepReturnHandler
,ISuspendHandler
,ITerminateHandler
- All Known Implementing Classes:
AbstractDebugCommand
The debug platform provides actions for common debug commands that operate against
these handler interfaces. For example, the platform provides a terminate action that
operates on the active debug context (selected element in the debug view). The action
delegates to the active context's ITerminateHandler
implementation to update
its enabled state and execute the command. Debug model elements may implement supported
command handler interfaces directly or provide them as adapters. The debug platform
provides implementations of handlers for standard debug models.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
canExecute
(IEnabledStateRequest request) Determines whether this handler can execute on the elements specified in the given request by reporting enabled state to the request.boolean
execute
(IDebugCommandRequest request) Executes this command on the elements specified in the given request reporting status to the given request and returns whether this handler should remain enabled while the command is executing.
-
Method Details
-
canExecute
Determines whether this handler can execute on the elements specified in the given request by reporting enabled state to the request.Implementations must be non-blocking and may respond asynchronously to the given request. Errors can reported by setting an appropriate status on the given request. A request can be canceled by this handler or caller. A
null
status is equivalent to an OK status. When a request succeeds, fails, or is canceled, implementations must calldone()
on the given request.Clients are expected to poll the request (using
isCanceled
) periodically and abort at their earliest convenience callingdone()
on the request.- Parameters:
request
- specifies elements to operate on and collects enabled state
-
execute
Executes this command on the elements specified in the given request reporting status to the given request and returns whether this handler should remain enabled while the command is executing.Implementations must be non-blocking and may respond asynchronously to the given request. Errors can reported by setting an appropriate status on the given request. A request can be canceled by this handler or the caller. A
null
status is equivalent to an OK status. When a request is complete, has encountered an error, or canceled, implementations must calldone()
on the given collector.Handlers are expected to poll the request (using
isCanceled
) periodically and abort at their earliest convenience callingdone()
on the request.- Parameters:
request
- specifies elements to operate on and collects execution status- Returns:
- whether this handler remains enabled while command is executing
-