|
|||||||||||||||||||
| 30 day Evaluation Version distributed via the Maven Jar Repository. Clover is not free. You have 30 days to evaluate it. Please visit http://www.thecortex.net/clover to obtain a licensed version of Clover | |||||||||||||||||||
| Source file | Conditionals | Statements | Methods | TOTAL | |||||||||||||||
| ValuedEnum.java | 83.3% | 91.7% | 100% | 90.9% |
|
||||||||||||||
| 1 |
/*
|
|
| 2 |
* Joey and its relative products are published under the terms
|
|
| 3 |
* of the Apache Software License.
|
|
| 4 |
*/
|
|
| 5 |
/*
|
|
| 6 |
* Created on 2004/01/07
|
|
| 7 |
*/
|
|
| 8 |
package org.asyrinx.brownie.core.lang.enum;
|
|
| 9 |
|
|
| 10 |
import java.util.Iterator;
|
|
| 11 |
import java.util.List;
|
|
| 12 |
|
|
| 13 |
import org.apache.commons.lang.enum.Enum;
|
|
| 14 |
|
|
| 15 |
/**
|
|
| 16 |
* @author akima
|
|
| 17 |
*/
|
|
| 18 |
public class ValuedEnum extends Enum { |
|
| 19 |
|
|
| 20 |
/**
|
|
| 21 |
* @param name
|
|
| 22 |
*/
|
|
| 23 | 12 |
public ValuedEnum(String name, Object value) {
|
| 24 | 12 |
super(name);
|
| 25 | 12 |
this.value = value;
|
| 26 |
} |
|
| 27 |
|
|
| 28 |
private final Object value;
|
|
| 29 |
|
|
| 30 |
/**
|
|
| 31 |
* @return
|
|
| 32 |
*/
|
|
| 33 | 20 |
public Object getValue() {
|
| 34 | 20 |
return value;
|
| 35 |
} |
|
| 36 |
|
|
| 37 | 3 |
public static ValuedEnum getEnum(Class enumClass, Object value) { |
| 38 | 3 |
if (enumClass == null) { |
| 39 | 0 |
throw new IllegalArgumentException( |
| 40 |
"The Enum Class must not be null");
|
|
| 41 |
} |
|
| 42 | 3 |
final List list = Enum.getEnumList(enumClass); |
| 43 | 3 |
for (Iterator it = list.iterator(); it.hasNext();) {
|
| 44 | 5 |
ValuedEnum enum = (ValuedEnum) it.next(); |
| 45 | 5 |
if (enum.getValue().equals(value))
|
| 46 | 2 |
return enum;
|
| 47 |
} |
|
| 48 | 1 |
return null; |
| 49 |
} |
|
| 50 |
|
|
| 51 | 6 |
public static ValuedEnum getEnumByName(Class enumClass, String name) { |
| 52 | 6 |
return (ValuedEnum) Enum.getEnum(enumClass, name);
|
| 53 |
} |
|
| 54 |
} |
|
||||||||||