Eclipse Platform
Release 3.2

org.eclipse.ui.handlers
Interface IHandlerActivation

All Superinterfaces:
Comparable, org.eclipse.ui.internal.services.IEvaluationResultCache

public interface IHandlerActivation
extends org.eclipse.ui.internal.services.IEvaluationResultCache, Comparable

A token representing the activation of a handler. This token can later be used to cancel that activation. Without this token, then handler will only become inactive if the component in which the handler was activated is destroyed.

This interface is not intended to be implemented or extended by clients.

Since:
3.1
See Also:
ISources, ISourceProvider

Field Summary
static int ROOT_DEPTH
          The depth at which the root exists.
 
Method Summary
 void clearActive()
          Deprecated. Use IEvaluationResultCache.clearResult() instead.
 String getCommandId()
          Returns the identifier of the command whose handler is being activated.
 int getDepth()
          Returns the depth at which this activation was created within the services hierarchy.
 IHandler getHandler()
          Returns the handler that should be activated.
 IHandlerService getHandlerService()
          Returns the handler service from which this activation was requested.
 boolean isActive(IEvaluationContext context)
          Deprecated. Use IEvaluationResultCache.evaluate(IEvaluationContext) instead.
 
Methods inherited from interface org.eclipse.ui.internal.services.IEvaluationResultCache
clearResult, evaluate, getExpression, getSourcePriority
 
Methods inherited from interface java.lang.Comparable
compareTo
 

Field Detail

ROOT_DEPTH

public static final int ROOT_DEPTH
The depth at which the root exists.

Since:
3.2
See Also:
Constant Field Values
Method Detail

clearActive

public void clearActive()
Deprecated. Use IEvaluationResultCache.clearResult() instead.

Clears the cached computation of the isActive method, if any. This method is only intended for internal use. It provides a mechanism by which ISourceProvider events can invalidate state on a IHandlerActivation instance.


getCommandId

public String getCommandId()
Returns the identifier of the command whose handler is being activated.

Returns:
The command identifier; never null.

getDepth

public int getDepth()
Returns the depth at which this activation was created within the services hierarchy. The root of the hierarchy is at a depth of 1. This is used as the final tie-breaker in the event that no other method can be used to determine a winner.

Returns:
The depth at which the handler was inserted into the services hierarchy; should be a positive integer.
Since:
3.2

getHandler

public IHandler getHandler()
Returns the handler that should be activated.

Returns:
The handler; may be null.

getHandlerService

public IHandlerService getHandlerService()
Returns the handler service from which this activation was requested. This is used to ensure that an activation can only be retracted from the same service which issued it.

Returns:
The handler service; never null.

isActive

public boolean isActive(IEvaluationContext context)
Deprecated. Use IEvaluationResultCache.evaluate(IEvaluationContext) instead.

Returns whether this handler activation is currently active -- given the current state of the workbench. This method should cache its computation. The cache will be cleared by a call to clearActive.

Parameters:
context - The context in which this state should be evaluated; must not be null.
Returns:
true if the activation is currently active; false otherwise.

Eclipse Platform
Release 3.2

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2006. All rights reserved.