/**
* Unknown enum
*/
- UNKNOWN("U", "BaseContact.gender.unknown.text"),
+ UNKNOWN("BaseContact.gender.unknown.text"),
/**
* Male enum
*/
- MALE("M", "BaseContact.gender.male.text"),
+ MALE("BaseContact.gender.male.text"),
/**
* Female enum
*/
- FEMALE("F", "BaseContact.gender.female.text"),
+ FEMALE("BaseContact.gender.female.text"),
/**
* Company enum
*/
- COMPANY("C", "BaseContact.gender.company.text");
-
- /**
- * Cache for valid chars
- */
- private static char[] validChars;
-
- /**
- * Getter for Gender enum from given character
- *
- * @param gender Gender character
- * @return Gender enum
- */
- public static Gender fromChar (final char gender) {
- Gender g = null;
- switch (gender) {
- case 'U': // Unknown
- g = UNKNOWN;
- break;
-
- case 'M': // Male
- g = MALE;
- break;
-
- case 'F': // Female
- g = FEMALE;
- break;
-
- case 'C': // Company
- g = COMPANY;
- break;
-
- default: // Unsupported
- throw new IllegalArgumentException("gender " + gender + " is invalid.");
- }
-
- // Return it
- //* NOISY-DEBUG: */ System.out.println("gender=" + g.getClass().getName());
- return g;
- }
-
- /**
- * Valid chars
- *
- * @return Valid chars
- */
- public static char[] validChars () {
- // Is cache set?
- if (validChars != null) {
- // Return it
- return validChars;
- }
-
- // Init array
- char[] valid = new char[3];
-
- // Get values
- int i = 0;
- for (Object value : values()) {
- // First cast
- Gender gender = (Gender) value;
-
- // Debug message
- //* NOISY-DEBUG: */ System.out.println("gender=" + gender);
- // Is it UNKNOWN?
- if (gender.equals(Gender.UNKNOWN)) {
- // Skip this
- continue;
- }
-
- // Debug message
- //* NOISY-DEBUG: */ System.out.println(MessageFormat.format("gender={0} - adding at pos {1} ...", gender, i));
- // Get database value as this is also the access
- valid[i] = gender.getDatabaseValue().charAt(0);
-
- // Increment index
- i++;
- }
-
- // Set it here
- validChars = valid;
-
- // Return finialized array
- return valid;
- }
-
- /**
- * Database value
- */
- private final String databaseValue;
+ COMPANY("BaseContact.gender.company.text");
/**
* Output value (for messages)
/**
* Constructor
*
- * @param databaseValue Value being stored in database
* @param messageKey Message key for resource file
*/
- private Gender (final String databaseValue, final String messageKey) {
- // Set both
- this.databaseValue = databaseValue;
+ private Gender (final String messageKey) {
this.messageKey = messageKey;
}
- /**
- * Database value
- *
- * @return the databaseValue
- */
- public String getDatabaseValue () {
- return this.databaseValue;
- }
-
/**
* Output value (for messages)
*