Package org.eclipse.ui.activities
Class WorkbenchActivityHelper
- java.lang.Object
-
- org.eclipse.ui.activities.WorkbenchActivityHelper
-
public final class WorkbenchActivityHelper extends Object
A utility class that contains helpful methods for interacting with the activities API.- Since:
- 3.0
-
-
Field Summary
Fields Modifier and Type Field Description static String
TRIGGER_PRE_UI_POINT
The ID of the trigger point that only returns activities with core expressions.
-
Method Summary
All Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static boolean
allowUseOf(Object object)
Deprecated.static boolean
allowUseOf(ITriggerPoint triggerPoint, Object object)
Answers whether a given contribution is allowed to be used based on activity enablement.static String
createUnifiedId(IPluginContribution contribution)
Utility method to create aString
containing the plugin and extension ids of a contribution.static Set<String>
expandActivityDependencies(Set<String> baseActivities)
Return the expanded activities for the given activity set.static Object[]
filterArray(Object[] array)
Returns an array with those objects of the argument array that pass thefilterItem(Object)
test.static <T> Collection<T>
filterCollection(Collection<T> toBeFiltered, Collection<T> result)
Fills and returns the second argument with those objects of the first argument that pass thefilterItem(Object)
test.static boolean
filterItem(Object object)
Answers whether the provided object should be filtered from the UI based on activity state.static Set<String>
getActivityIdsForCategory(ICategory category)
Return the activities directly required by a given category.static Set<String>
getContainedCategories(IActivityManager activityManager, String categoryId)
Return a list of category ids that are implicitly contained within the given category.static Set<String>
getDisabledCategories(IActivityManager activityManager, String categoryId)
Return a list of category ids that will become implicity disabled if the given category becomes disabled Note that the set returned by this set represents the delta of categories that would be enabled - if the category is already enabled then it is omitted.static Set<String>
getEnabledCategories(IActivityManager activityManager)
Return the set of enabled categories.static Set<String>
getEnabledCategories(IActivityManager activityManager, String categoryId)
Return a list of category ids that will become implicity enabled if the given category becomes enabled Note that the set returned by this set represents the delta of categories that would be enabled - if the category is already enabled then it is omitted.static Set<String>
getEnabledCategoriesForActivity(IActivityManager activityManager, String activityId)
Return the number of enabled categories that this activity belongs to.static IIdentifier
getIdentifier(IPluginContribution contribution)
Return the identifier that maps to the given contribution.static Set<String>
getPartiallyEnabledCategories(IActivityManager activityManager)
Return the set of partially enabled categories.static Set<String>
getRequiredActivityIds(String activityId)
Return the activities required for this activity.static boolean
isEnabled(IActivityManager activityManager, String categoryId)
Returns whether the given category is enabled.static boolean
isFiltering()
Returns whether the UI is set up to filter contributions.static boolean
isPartiallyEnabled(IActivityManager activityManager, String categoryId)
Returns whether the given category is partially enabled.static ICategory[]
resolveCategories(IMutableActivityManager activityManager, Set<String> categoryIds)
Resolve the collection of category ids to an array ofICategory
objects.static Object[]
restrictArray(Object[] array)
Returns an array with those objects of the argument array that pass therestrictUseOf(Object)
test.static <T> Collection<T>
restrictCollection(Collection<T> toBeFiltered, Collection<T> result)
Fills and returns the second argument with those objects of the first argument that pass therestrictUseOf(Object)
test.static boolean
restrictUseOf(Object object)
Restrict the use of the object only if it is matched by an activity with a core expression.
-
-
-
Field Detail
-
TRIGGER_PRE_UI_POINT
public static final String TRIGGER_PRE_UI_POINT
The ID of the trigger point that only returns activities with core expressions.- Since:
- 3.4
- See Also:
- Constant Field Values
-
-
Method Detail
-
getIdentifier
public static IIdentifier getIdentifier(IPluginContribution contribution)
Return the identifier that maps to the given contribution.- Parameters:
contribution
- the contribution- Returns:
- the identifier
- Since:
- 3.1
-
allowUseOf
@Deprecated public static boolean allowUseOf(Object object)
Deprecated.Answers whether a given contribution is allowed to be used based on activity enablement. If it is currently disabled, then a dialog is opened and the user is prompted to activate the required activities. If the user declines their activation then false is returned. In all other casestrue
is returned.- Parameters:
object
- the contribution to test.- Returns:
- whether the contribution is allowed to be used based on activity enablement.
- See Also:
allowUseOf(ITriggerPoint, Object)
-
allowUseOf
public static boolean allowUseOf(ITriggerPoint triggerPoint, Object object)
Answers whether a given contribution is allowed to be used based on activity enablement. If it is currently disabled, then a dialog is opened and the user is prompted to activate the required activities. If the user declines their activation then false is returned. In all other casestrue
is returned.- Parameters:
triggerPoint
- the trigger point being hitobject
- the contribution to test.- Returns:
- whether the contribution is allowed to be used based on activity enablement.
-
restrictUseOf
public static boolean restrictUseOf(Object object)
Restrict the use of the object only if it is matched by an activity with a core expression. A normal disabled activity will not restrict the use of this object.- Parameters:
object
- the object to restrict- Returns:
true
if this object is matched by a disabled activity with an expression.- Since:
- 3.4
-
createUnifiedId
public static String createUnifiedId(IPluginContribution contribution)
Utility method to create aString
containing the plugin and extension ids of a contribution. This will have the formpluginId / extensionId
. If the IPluginContribution does not define a plugin id then the extension id alone is returned.- Parameters:
contribution
- the contribution to use- Returns:
- the unified id
-
filterItem
public static boolean filterItem(Object object)
Answers whether the provided object should be filtered from the UI based on activity state. Returnsfalse
except when the object is an instance ofIPluginContribution
whos unified id matches anIIdentifier
that is currently disabled.- Parameters:
object
- the object to test- Returns:
- whether the object should be filtered
- See Also:
createUnifiedId(IPluginContribution)
-
isFiltering
public static boolean isFiltering()
Returns whether the UI is set up to filter contributions. This is the case if there are defined activities.- Returns:
- whether the UI is set up to filter contributions
-
getEnabledCategories
public static Set<String> getEnabledCategories(IActivityManager activityManager, String categoryId)
Return a list of category ids that will become implicity enabled if the given category becomes enabled Note that the set returned by this set represents the delta of categories that would be enabled - if the category is already enabled then it is omitted.- Parameters:
activityManager
- the activity manager to test againstcategoryId
- the category to be enabled- Returns:
- a list of category ids that will become implicity enabled if the given category becomes enabled
- Since:
- 3.1
-
expandActivityDependencies
public static Set<String> expandActivityDependencies(Set<String> baseActivities)
Return the expanded activities for the given activity set. This will resolve all activity requirement bindings.- Parameters:
baseActivities
- the set of activities to expand- Returns:
- the expanded activities
- Since:
- 3.1
-
getRequiredActivityIds
public static Set<String> getRequiredActivityIds(String activityId)
Return the activities required for this activity.- Parameters:
activityId
- the activity id- Returns:
- the activities required for this activity
- Since:
- 3.1
-
getActivityIdsForCategory
public static Set<String> getActivityIdsForCategory(ICategory category)
Return the activities directly required by a given category.- Parameters:
category
- the category- Returns:
- the activities directly required by a given category
- Since:
- 3.1
-
getDisabledCategories
public static Set<String> getDisabledCategories(IActivityManager activityManager, String categoryId)
Return a list of category ids that will become implicity disabled if the given category becomes disabled Note that the set returned by this set represents the delta of categories that would be enabled - if the category is already enabled then it is omitted.- Parameters:
activityManager
- the activity manager to test againstcategoryId
- the category to be enabled- Returns:
- a list of category ids that will become implicity enabled if the given category becomes enabled
- Since:
- 3.1
-
getContainedCategories
public static Set<String> getContainedCategories(IActivityManager activityManager, String categoryId)
Return a list of category ids that are implicitly contained within the given category.- Parameters:
activityManager
- the activity manager to test agaisntcategoryId
- the category to be enabled- Returns:
- a list of category ids that will become implicity enabled if the given category becomes enabled
- Since:
- 3.1
-
getEnabledCategories
public static Set<String> getEnabledCategories(IActivityManager activityManager)
Return the set of enabled categories. An enabled category is one in which all contained activities are enabled.- Parameters:
activityManager
- the activity manager to test against- Returns:
- the set of enabled categories.
- Since:
- 3.1
-
getPartiallyEnabledCategories
public static Set<String> getPartiallyEnabledCategories(IActivityManager activityManager)
Return the set of partially enabled categories.- Parameters:
activityManager
- the activity manager to test against- Returns:
- the set of partially enabled categories
- Since:
- 3.2
-
isPartiallyEnabled
public static boolean isPartiallyEnabled(IActivityManager activityManager, String categoryId)
Returns whether the given category is partially enabled. A partially enabled category is one in which the number of enabled activites is both non-zero and less than the total number of activities in the category.- Parameters:
activityManager
- the activity manager to test againstcategoryId
- the category id- Returns:
- whether the category is enabled
- Since:
- 3.2
-
getEnabledCategoriesForActivity
public static Set<String> getEnabledCategoriesForActivity(IActivityManager activityManager, String activityId)
Return the number of enabled categories that this activity belongs to.- Parameters:
activityManager
- the activity manager to test against *activityId
- the activity id to query on- Returns:
- the set of enabled category ids that this activity belongs to
- Since:
- 3.1
-
isEnabled
public static boolean isEnabled(IActivityManager activityManager, String categoryId)
Returns whether the given category is enabled. A category is enabled if all of its activities are enabled.- Parameters:
activityManager
- the activity manager to test againstcategoryId
- the category id- Returns:
- whether the category is enabled
- Since:
- 3.1
-
resolveCategories
public static ICategory[] resolveCategories(IMutableActivityManager activityManager, Set<String> categoryIds)
Resolve the collection of category ids to an array ofICategory
objects.- Parameters:
activityManager
- the activity manager to test againstcategoryIds
- the category ids- Returns:
- the array of category ids resolved to
ICategory
objects - Since:
- 3.1
-
restrictCollection
public static <T> Collection<T> restrictCollection(Collection<T> toBeFiltered, Collection<T> result)
Fills and returns the second argument with those objects of the first argument that pass therestrictUseOf(Object)
test.- Parameters:
toBeFiltered
- the input collectionresult
- the collection to which objects passing the test should be added- Returns:
- the
result
collection for convenience - Since:
- 3.4
-
restrictArray
public static Object[] restrictArray(Object[] array)
Returns an array with those objects of the argument array that pass therestrictUseOf(Object)
test.- Parameters:
array
- the input array- Returns:
- a new array of the same type as the argument array, containing objects that pass the test
- Since:
- 3.4
-
filterCollection
public static <T> Collection<T> filterCollection(Collection<T> toBeFiltered, Collection<T> result)
Fills and returns the second argument with those objects of the first argument that pass thefilterItem(Object)
test.- Parameters:
toBeFiltered
- the input collectionresult
- the collection to which objects passing the test should be added- Returns:
- the
result
collection for convenience - Since:
- 3.4
-
filterArray
public static Object[] filterArray(Object[] array)
Returns an array with those objects of the argument array that pass thefilterItem(Object)
test.- Parameters:
array
- the input array- Returns:
- a new array of the same type as the argument array, containing objects that pass the test
- Since:
- 3.4
-
-