package de.jpaw.enums.examples;
import de.jpaw.enums.XEnumFactory;
/** Extendable enum instance type. This class has immutable instances. Also, after static initialization, no additional members can be created. */
public class XAccountType1 extends XAccountType0 {
/////public static final int MAX_TOKEN_LENGTH = 1;
public static final String PQON = "base.XAccountType1";
public static final int NUM_VALUES_TOTAL = XAccountType0.NUM_VALUES_TOTAL + AccountType1.values().length;
static {
// create all the instances
// create a factory instance
AccountType1 [] values = AccountType1.values();
for (int i = 0; i < values.length; ++i) {
AccountType1 e = values[i];
myFactory.publishInstance(new XAccountType1(e, i + XAccountType0.NUM_VALUES_TOTAL, e.name(), e.getToken(), myFactory));
}
myFactory.register(PQON, XAccountType1.class);
}
public static XAccountType0 valueOf(AccountType1 enumVal) {
return myFactory.getByEnum(enumVal);
}
// constructor may not be accessible from the outside
protected XAccountType1(Enum<?> enumVal, int ordinal, String name, String token, XEnumFactory<XAccountType0> myFactory) {
super(enumVal, ordinal, name, token, myFactory);
}
}