r01f.enums
Class EnumValuesWithCodeWrapper<T extends CodeEnum<T>>

java.lang.Object
  extended by r01f.enums.EnumValuesWithCodeWrapper<T>
Type Parameters:
T - el Enum concreto
Direct Known Subclasses:
EnumValuesWithCodeAndDescriptionsWrapper, EnumValuesWithCodeAndDescriptionWrapper

public class EnumValuesWithCodeWrapper<T extends CodeEnum<T>>
extends java.lang.Object

Encapsula las operaciones habituales en un Enum que implementa CodeAndDescriptionEnum de forma que en el enum únicamente hay que poner el siguiente código: Uso: 1.- Crear un enum tal que: enum MyEnum implements CodeAndDescriptionEnum 2.- Implementar los métodos del interfaz ayudándose de la clase Enums: // --- Metodos estaticos private static EnumValuesWithCodeWrapper enums = new EnumValuesWithCodeWrapper(DataType.values()); public static DataType fromCode(int code) { return enums.fromCode(code); } public static DataType fromDescription(String desc) { return enums.fromDescription(desc); } public static DataType fromName(String name) { return enums.fromName(name); }


Field Summary
(package private)  boolean _strict
           
(package private)  T[] _values
           
 
Constructor Summary
EnumValuesWithCodeWrapper(T[] values)
          Constructor en base a los valores del enum
 
Method Summary
 T fromCode(int code)
          Obtiene el elemento del enum a partir del código
 T fromName(java.lang.String name)
          Obtiene el elemento del enum a partir del nombre
 boolean isIn(T el, T... els)
          Devuelve true si el elemento el está entre los que se pasan
 EnumValuesWithCodeWrapper<T> strict()
          Establece el modo de funcionamiento a "estricto", de forma que se lanza una excepcion IllegalArgumentException si NO se encuentra el elemento al invocar a los métodos fromXX
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_values

T extends CodeEnum<T>[] _values

_strict

boolean _strict
Constructor Detail

EnumValuesWithCodeWrapper

public EnumValuesWithCodeWrapper(T[] values)
Constructor en base a los valores del enum

Parameters:
values -
Method Detail

strict

public EnumValuesWithCodeWrapper<T> strict()
Establece el modo de funcionamiento a "estricto", de forma que se lanza una excepcion IllegalArgumentException si NO se encuentra el elemento al invocar a los métodos fromXX


fromCode

public T fromCode(int code)
Obtiene el elemento del enum a partir del código

Parameters:
code - codigo del elemento
Returns:
el elemento del enum

fromName

public T fromName(java.lang.String name)
Obtiene el elemento del enum a partir del nombre

Parameters:
name - nombre del elemento
Returns:
el elemento del enum

isIn

public boolean isIn(T el,
                    T... els)
Devuelve true si el elemento el está entre los que se pasan

Parameters:
el - el elemento a contrastar
els - el conjunto de elementos
Returns:
true si el está en els