org.apache.xmlbeans
Class StringEnumAbstractBase

java.lang.Object
  extended by org.apache.xmlbeans.StringEnumAbstractBase
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
StringEnumValue

public class StringEnumAbstractBase
extends java.lang.Object
implements java.io.Serializable

The base class for code-generated string enumeration value classes.

Subclasses are intended to be final types with a finite set of singleton instances. Each instance has a string value, which it returns via toString(), and an int value for the purpose of switching in case statements, returned via intValue().

Each subclass manages an instance of StringEnumAbstractBase.Table, which holds all the singleton instances for the subclass. A Table can return a singleton instance given a String or an integer code.

See Also:
Serialized Form

Nested Class Summary
static class StringEnumAbstractBase.Table
          Used to manage singleton instances of enumerations.
 
Constructor Summary
protected StringEnumAbstractBase(java.lang.String s, int i)
          Singleton instances should only be created by subclasses.
 
Method Summary
 int hashCode()
          Returns the hash code of the underlying string
 int intValue()
          Returns an int code that can be used for switch statements
 java.lang.String toString()
          Returns the underlying string value
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

StringEnumAbstractBase

protected StringEnumAbstractBase(java.lang.String s,
                                 int i)
Singleton instances should only be created by subclasses.

Method Detail

toString

public final java.lang.String toString()
Returns the underlying string value

Overrides:
toString in class java.lang.Object

intValue

public final int intValue()
Returns an int code that can be used for switch statements


hashCode

public final int hashCode()
Returns the hash code of the underlying string

Overrides:
hashCode in class java.lang.Object