|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.sleepycat.persist.impl.Format
com.sleepycat.persist.impl.EnumFormat
public class EnumFormat
Format for all enum types. In this class we resort to using reflection to allocate arrays of enums. If there is a need for it, reflection could be avoided in the future by generating code as new array formats are encountered.
| Field Summary |
|---|
| Fields inherited from class com.sleepycat.persist.impl.Format |
|---|
ID_BIGDEC, ID_BIGINT, ID_BOOL, ID_BOOL_W, ID_BYTE, ID_BYTE_W, ID_CHAR, ID_CHAR_W, ID_DATE, ID_DOUBLE, ID_DOUBLE_W, ID_FLOAT, ID_FLOAT_W, ID_INT, ID_INT_W, ID_LONG, ID_LONG_W, ID_NULL, ID_NUMBER, ID_OBJECT, ID_PREDEFINED, ID_SHORT, ID_SHORT_W, ID_SIMPLE_MAX, ID_SIMPLE_MIN, ID_STRING |
| Constructor Summary | |
|---|---|
EnumFormat(java.lang.Class type)
|
|
| Method Summary | |
|---|---|
(package private) void |
collectRelatedFormats(Catalog catalog,
java.util.Map<java.lang.String,Format> newFormats)
Calls catalog.createFormat for formats that this format depends on, or that should also be persistent. |
(package private) java.lang.Object |
convertRawObject(Catalog catalog,
boolean rawAccess,
RawObject rawObject,
java.util.IdentityHashMap converted)
Converts a RawObject to a current class object and adds the converted pair to the converted map. |
(package private) boolean |
evolve(Format newFormatParam,
Evolver evolver)
Called for an existing format that may not equal the current format for the same class. |
java.util.List<java.lang.String> |
getEnumConstants()
Returns an unmodifiable list of the names of the enum instances, or null if this is not an enum type. |
(package private) void |
initialize(Catalog catalog,
int initVersion)
Initializes an uninitialized format, initializing its related formats (superclass formats and array component formats) first. |
boolean |
isEnum()
Returns whether this is an enum type. |
(package private) java.lang.Object |
newArray(int len)
Creates an array of the format's class of the given length, as if Array.newInstance(getType(), len) were called. |
java.lang.Object |
newInstance(EntityInput input,
boolean rawAccess)
Creates a new instance of the target class using its default constructor. |
java.lang.Object |
readObject(java.lang.Object o,
EntityInput input,
boolean rawAccess)
Called after newInstance() to read the rest of the data bytes and fill in the object contents. |
(package private) void |
skipContents(RecordInput input)
Skips over the object's contents, as if readObject() were called, but without returning an object. |
(package private) void |
writeObject(java.lang.Object o,
EntityOutput output,
boolean rawAccess)
Writes a given instance of the target class to the output data bytes. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
EnumFormat(java.lang.Class type)
| Method Detail |
|---|
public boolean isEnum()
RawTypeIf true is returned, a value of this type is a RawObject and
the enum constant String is available via RawObject.getEnum().
If false is returned, then this is a complex type, an array type (see
RawType.isArray()), or a simple type (see RawType.isSimple()).
isEnum in interface RawTypeisEnum in class Formatpublic java.util.List<java.lang.String> getEnumConstants()
RawType
getEnumConstants in interface RawTypegetEnumConstants in class Format
void collectRelatedFormats(Catalog catalog,
java.util.Map<java.lang.String,Format> newFormats)
Format
collectRelatedFormats in class Format
void initialize(Catalog catalog,
int initVersion)
Format
initialize in class Formatjava.lang.Object newArray(int len)
Format
newArray in class Format
public java.lang.Object newInstance(EntityInput input,
boolean rawAccess)
Format
newInstance in interface ReadernewInstance in class Format
public java.lang.Object readObject(java.lang.Object o,
EntityInput input,
boolean rawAccess)
Format
readObject in interface ReaderreadObject in class Format
void writeObject(java.lang.Object o,
EntityOutput output,
boolean rawAccess)
Format
writeObject in class Format
java.lang.Object convertRawObject(Catalog catalog,
boolean rawAccess,
RawObject rawObject,
java.util.IdentityHashMap converted)
Format
convertRawObject in class Formatvoid skipContents(RecordInput input)
Format
skipContents in class Format
boolean evolve(Format newFormatParam,
Evolver evolver)
FormatIf this method returns true, then it must have determined that the old and new formats are equal, and it must have called either Evolver.useOldFormat or useEvolvedFormat. If this method returns false, then it must have determined that the old format could not be evolved to the new format, and it must have called Evolver.addInvalidMutation, addMissingMutation or addEvolveError.
evolve in class Format
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||