org.eclipse.ltk.core.refactoring

## Class GroupCategorySet

- java.lang.Object
- - org.eclipse.ltk.core.refactoring.GroupCategorySet

    public class GroupCategorySet
    extends Object

A special set to manage group categories. Group category sets are value objects and are therefore best used as static final fields to share a group category set between n `TextEditBasedChangeGroup`s.

Note: this class is not intended to be subclassed

Since:
  3.2
Restriction:
  This class is not intended to be subclassed by clients.

### Field Summary

Fields
`static GroupCategorySet` `NONE` Constant representing a group category set containing no group categories.

### Constructor Summary

Constructors
Constructor and Description
`GroupCategorySet(GroupCategory category)` Creates a new list of group categories initialized with the given group category.
`GroupCategorySet(GroupCategory[] categories)` Creates a new set of group categories initialized from the given array of group categories

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`List<GroupCategory>` `asList()` Converts the group categories into a a unmodifiable list.
`boolean` `contains(GroupCategory category)` Returns whether the given category is contained in this set of group categories
`boolean` `containsOneCategory(List<GroupCategory> categories)` Returns whether one of the given categories is contained in this set of group categories
`static GroupCategorySet` `union(GroupCategorySet one, GroupCategorySet two)` Creates a new group category set containing the union of the given two group category sets

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### NONE

    public static final GroupCategorySet NONE

Constant representing a group category set containing no group categories.

### Constructor Detail

#### GroupCategorySet

    public GroupCategorySet(GroupCategory category)

Creates a new list of group categories initialized with the given group category.

Parameters:
  `category` - the first category

#### GroupCategorySet

    public GroupCategorySet(GroupCategory[] categories)

Creates a new set of group categories initialized from the given array of group categories

Parameters:
  `categories` - the initial group categories

### Method Detail

#### union

    public static GroupCategorySet union(GroupCategorySet one,
                                         GroupCategorySet two)

Creates a new group category set containing the union of the given two group category sets

Parameters:
  `one` - the first set of group categories
  `two` - the second set of group categories
Returns:
  the union

#### contains

    public boolean contains(GroupCategory category)

Returns whether the given category is contained in this set of group categories

Parameters:
  `category` - the category to test containment for
Returns:
  `true` if the category is contained in this set; otherwise `false`

#### containsOneCategory

    public boolean containsOneCategory(List<GroupCategory> categories)

Returns whether one of the given categories is contained in this set of group categories

Parameters:
  `categories` - the categories to test containment for
Returns:
  `true` if one of the given categories is contained in this set; otherwise `false`

#### asList

    public List<GroupCategory> asList()

Converts the group categories into a a unmodifiable list.

Returns:
  an unmodifiable list containing all group categories