package com.revolsys.util;
import java.util.List;
import com.revolsys.collection.list.Lists;
public enum Parity {
CONTINUOUS("Continuous"), EVEN("Even"), ODD("Odd");
public static List<Parity> VALUES = Lists.newArray(EVEN, ODD);
public static Parity getParity(final String code) {
if (Property.hasValue(code)) {
switch (Character.toUpperCase(code.charAt(0))) {
case 'E':
return Parity.EVEN;
case 'O':
return Parity.ODD;
case 'C':
return Parity.CONTINUOUS;
default:
return null;
}
}
return null;
}
public static boolean isEven(final Parity parity) {
return parity == EVEN;
}
public static boolean isOdd(final Parity parity) {
return parity == ODD;
}
public static Parity opposite(final Parity parity) {
if (parity == null) {
return null;
} else {
return parity.opposite();
}
}
private char letter;
private String name;
private Parity(final String name) {
this.name = name;
this.letter = name.charAt(0);
}
public char getLetter() {
return this.letter;
}
public String getName() {
return this.name;
}
public boolean isEven() {
return this == EVEN;
}
public boolean isOdd() {
return this == ODD;
}
public Parity opposite() {
if (this == EVEN) {
return ODD;
} else {
return EVEN;
}
}
@Override
public String toString() {
return this.name;
}
}