|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.commons.lang3.EnumUtils
public class EnumUtils
Utility library to provide helper methods for Java enums.
#ThreadSafe#
Constructor Summary | |
---|---|
EnumUtils()
This constructor is public to permit tools that require a JavaBean instance to operate. |
Method Summary | ||
---|---|---|
static
|
generateBitVector(Class<E> enumClass,
E... values)
Creates a long bit vector representation of the given array of Enum values. |
|
static
|
generateBitVector(Class<E> enumClass,
Iterable<E> values)
Creates a long bit vector representation of the given subset of an Enum. |
|
static
|
getEnum(Class<E> enumClass,
String enumName)
Gets the enum for the class, returning null if not found. |
|
static
|
getEnumList(Class<E> enumClass)
Gets the List of enums. |
|
static
|
getEnumMap(Class<E> enumClass)
Gets the Map of enums by name. |
|
static
|
isValidEnum(Class<E> enumClass,
String enumName)
Checks if the specified name is a valid enum for the class. |
|
static
|
processBitVector(Class<E> enumClass,
long value)
Convert a long value created by generateBitVector(java.lang.Class into the set of
enum values that it represents. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public EnumUtils()
Method Detail |
---|
public static <E extends Enum<E>> Map<String,E> getEnumMap(Class<E> enumClass)
Gets the Map
of enums by name.
This method is useful when you need a map of enums by name.
E
- the type of the enumerationenumClass
- the class of the enum to query, not null
public static <E extends Enum<E>> List<E> getEnumList(Class<E> enumClass)
Gets the List
of enums.
This method is useful when you need a list of enums rather than an array.
E
- the type of the enumerationenumClass
- the class of the enum to query, not null
public static <E extends Enum<E>> boolean isValidEnum(Class<E> enumClass, String enumName)
Checks if the specified name is a valid enum for the class.
This method differs from Enum.valueOf(java.lang.Class
in that checks if the name is
a valid enum without needing to catch the exception.
E
- the type of the enumerationenumClass
- the class of the enum to query, not nullenumName
- the enum name, null returns false
public static <E extends Enum<E>> E getEnum(Class<E> enumClass, String enumName)
Gets the enum for the class, returning null
if not found.
This method differs from Enum.valueOf(java.lang.Class
in that it does not throw an exception
for an invalid enum name.
E
- the type of the enumerationenumClass
- the class of the enum to query, not nullenumName
- the enum name, null returns null
public static <E extends Enum<E>> long generateBitVector(Class<E> enumClass, Iterable<E> values)
Creates a long bit vector representation of the given subset of an Enum.
This generates a value that is usable by processBitVector(java.lang.Class
.
Do not use this method if you have more than 64 values in your Enum, as this would create a value greater than a long can hold.
E
- the type of the enumerationenumClass
- the class of the enum we are working with, not null
values
- the values we want to convert, not null
NullPointerException
- if enumClass
or values
is null
IllegalArgumentException
- if enumClass
is not an enum class or has more than 64 valuespublic static <E extends Enum<E>> long generateBitVector(Class<E> enumClass, E... values)
Creates a long bit vector representation of the given array of Enum values.
This generates a value that is usable by processBitVector(java.lang.Class
.
Do not use this method if you have more than 64 values in your Enum, as this would create a value greater than a long can hold.
E
- the type of the enumerationenumClass
- the class of the enum we are working with, not null
values
- the values we want to convert, not null
NullPointerException
- if enumClass
or values
is null
IllegalArgumentException
- if enumClass
is not an enum class or has more than 64 valuespublic static <E extends Enum<E>> EnumSet<E> processBitVector(Class<E> enumClass, long value)
Convert a long value created by generateBitVector(java.lang.Class
into the set of
enum values that it represents.
If you store this value, beware any changes to the enum that would affect ordinal values.
E
- the type of the enumerationenumClass
- the class of the enum we are working with, not null
value
- the long value representation of a set of enum values
NullPointerException
- if enumClass
is null
IllegalArgumentException
- if enumClass
is not an enum class or has more than 64 values
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |