public class PrimitiveArrayFormat extends Format
ObjectArrayFormat.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 and Description |
|---|
PrimitiveArrayFormat(Catalog catalog,
java.lang.Class type) |
| Modifier and Type | Method and Description |
|---|---|
(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,
IdentityHashMap converted)
Converts a RawObject to a current class object and adds the converted
pair to the converted map.
|
(package private) void |
copySecMultiKey(RecordInput input,
Format keyFormat,
java.util.Set results)
Called after skipToSecKey() to copy the data bytes of an array or
collection (XXX_TO_MANY) key field.
|
(package private) boolean |
evolve(Format newFormat,
Evolver evolver)
Called for an existing format that may not equal the current format for
the same class.
|
Format |
getComponentType()
Returns the array component type, or null if this is not an array type.
|
int |
getDimensions()
Returns the number of array dimensions, or zero if this is not an array
type.
|
(package private) void |
initialize(Catalog catalog,
EntityModel model,
int initVersion)
Initializes an uninitialized format, initializing its related formats
(superclass formats and array component formats) first.
|
boolean |
isArray()
Returns whether this is an array 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.
|
allowEvolveFromProxy, areNestedRefsProhibited, copySecKey, evolveMetadata, getAccessor, getCatalog, getClassMetadata, getClassName, getEntityFormat, getEntityMetadata, getEnumConstants, getEvolveNeeded, getExistingType, getFields, getId, getLatestVersion, getNewStringFormat, getOldKeyName, getPreviousVersion, getProxiedFormat, getReader, getSequenceKeyFormat, getSuperFormat, getSuperType, getType, getVersion, getWrapperFormat, initCatalog, initializeIfNeeded, initializeReader, isAssignableTo, isCurrentVersion, isDeleted, isEntity, isEnum, isInitialized, isModelClass, isNew, isPredefined, isPriKeyNullOrZero, isPrimitive, isSameClass, isSimple, migrateFromBeta, nullifySecKey, readPriKey, setDeleted, setEvolveNeeded, setId, setLatestVersion, setProxiedFormat, setReader, setSuperFormat, setUnused, skipToSecKey, toString, writePriKeyPrimitiveArrayFormat(Catalog catalog, java.lang.Class type)
public boolean isArray()
RawTypeRawObject instances.
If true is returned, the array component type is returned by RawType.getComponentType() and the number of array dimensions is returned by
RawType.getDimensions().
If false is returned, then this is a complex type, an enum type (see
RawType.isEnum()), or a simple type (see RawType.isSimple()).
public int getDimensions()
RawTypegetDimensions in interface RawTypegetDimensions in class Formatpublic Format getComponentType()
RawTypegetComponentType in interface RawTypegetComponentType in class Formatvoid collectRelatedFormats(Catalog catalog, java.util.Map<java.lang.String,Format> newFormats)
FormatcollectRelatedFormats in class Formatvoid initialize(Catalog catalog, EntityModel model, int initVersion)
Formatinitialize in class Formatjava.lang.Object newArray(int len)
Formatpublic java.lang.Object newInstance(EntityInput input, boolean rawAccess) throws RefreshException
FormatnewInstance in interface ReadernewInstance in class FormatRefreshExceptionpublic java.lang.Object readObject(java.lang.Object o,
EntityInput input,
boolean rawAccess)
throws RefreshException
FormatreadObject in interface ReaderreadObject in class FormatRefreshExceptionvoid writeObject(java.lang.Object o,
EntityOutput output,
boolean rawAccess)
throws RefreshException
FormatwriteObject in class FormatRefreshExceptionjava.lang.Object convertRawObject(Catalog catalog, boolean rawAccess, RawObject rawObject, IdentityHashMap converted) throws RefreshException
FormatconvertRawObject in class FormatRefreshExceptionvoid skipContents(RecordInput input)
FormatskipContents in class Formatvoid copySecMultiKey(RecordInput input, Format keyFormat, java.util.Set results)
FormatcopySecMultiKey in class Formatboolean evolve(Format newFormat, Evolver evolver)
FormatIf this method returns true, then it must have determined one of two things: - that the old and new formats are equal, and it must have called Evolver.useOldFormat; or - that the old format can be evolved to the new format, and it must have called Evolver.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.
Copyright (c) 2004-2012 Oracle. All rights reserved.