All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.testifyproject.apache.commons.lang.enum.EnumUtils Maven / Gradle / Ivy

There is a newer version: 1.0.0
Show newest version
/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in org.testifyproject.testifyprojectpliance with
 * the License.  You may obtain a copy of the License at
 * 
 *      http://www.apache.org.testifyproject/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.testifyproject.apache.org.testifyproject.testifyprojectmons.lang.enum;

import java.util.Iterator;
import java.util.List;
import java.util.Map;

/**
 * 

Utility class for accessing and manipulating {@link Enum}s.

* * @org.testifyproject.testifyprojectprecated Replaced by {@link org.testifyproject.apache.org.testifyproject.testifyprojectmons.lang.enums.EnumUtils org.testifyproject.apache.org.testifyproject.testifyprojectmons.lang.enums.EnumUtils} * and will be removed in version 3.0. All classes in this package are org.testifyproject.testifyprojectprecated and repackaged to * {@link org.testifyproject.apache.org.testifyproject.testifyprojectmons.lang.enums} since enum is a Java 1.5 keyword. * @see org.testifyproject.apache.org.testifyproject.testifyprojectmons.lang.enums.EnumUtils * @see Enum * @see ValuedEnum * @author Apache Software Foundation * @author Gary Gregory * @since 1.0 * @version $Id: EnumUtils.java 905636 2010-02-02 14:03:32Z niallp $ */ public class EnumUtils { /** * Public constructor. This class should not normally be instantiated. * @since 2.0 */ public EnumUtils() { super(); } /** *

Gets an Enum object by class and name.

* * @param enumClass the class of the Enum to get * @param name the name of the Enum to get, may be null * @return the enum object * @throws IllegalArgumentException if the enum class is null */ public static Enum getEnum(Class enumClass, String name) { return Enum.getEnum(enumClass, name); } /** *

Gets a ValuedEnum object by class and value.

* * @param enumClass the class of the Enum to get * @param value the value of the Enum to get * @return the enum object, or null if the enum does not exist * @throws IllegalArgumentException if the enum class is null */ public static ValuedEnum getEnum(Class enumClass, int value) { return (ValuedEnum) ValuedEnum.getEnum(enumClass, value); } /** *

Gets the Map of Enum objects by * name using the Enum class.

* *

If the requested class has no enum objects an empty * Map is returned. The Map is unmodifiable.

* * @param enumClass the class of the Enum to get * @return the enum object Map * @throws IllegalArgumentException if the enum class is null * @throws IllegalArgumentException if the enum class is not a subclass * of Enum */ public static Map getEnumMap(Class enumClass) { return Enum.getEnumMap(enumClass); } /** *

Gets the List of Enum objects using * the Enum class.

* *

The list is in the order that the objects were created * (source code order).

* *

If the requested class has no enum objects an empty * List is returned. The List is unmodifiable.

* * @param enumClass the class of the Enum to get * @return the enum object Map * @throws IllegalArgumentException if the enum class is null * @throws IllegalArgumentException if the enum class is not a subclass * of Enum */ public static List getEnumList(Class enumClass) { return Enum.getEnumList(enumClass); } /** *

Gets an Iterator over the Enum objects * in an Enum class.

* *

The iterator is in the order that the objects were created * (source code order).

* *

If the requested class has no enum objects an empty * Iterator is returned. The Iterator * is unmodifiable.

* * @param enumClass the class of the Enum to get * @return an Iterator of the Enum objects * @throws IllegalArgumentException if the enum class is null * @throws IllegalArgumentException if the enum class is not a subclass of Enum */ public static Iterator iterator(Class enumClass) { return Enum.getEnumList(enumClass).iterator(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy