Class ExternalizableLitePofSerializer
- java.lang.Object
- 
- com.tangosol.util.Base
- 
- com.tangosol.io.pof.PofHelper
- 
- com.tangosol.io.pof.ExternalizableLitePofSerializer
 
 
 
- 
- All Implemented Interfaces:
- PofConstants,- PofSerializer
 
 public class ExternalizableLitePofSerializer extends PofHelper implements PofSerializer PofSerializerimplementation that supports the serialization and deserialization of any class that implementsExternalizableLiteto and from a POF stream. This implementation is provided to ease migration of ExternalizableLite implementations to support the POF stream format.Warning: This implementation does not correctly support all possible ExternalizableLite implementations. It will likely support most simple ExternalizableLite implementations that read and write their properties is a manner analogous to a proper implementation of the PortableObject interface. Incompatibilities are likely when the user type does direct (or indirect) binary-level I/O through the DataInput and DataOutput stream objects passed to the ExternalizableLite.readExternal(java.io.DataInput)andExternalizableLite.writeExternal(java.io.DataOutput)methods respectively. Note that the helper methods on ExternalizableHelper are POF aware, and thus safe to use within the readExternal and writeExternal methods.- Since:
- Coherence 3.2
- Author:
- cp 2006.07.31
 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class com.tangosol.io.pof.PofHelperPofHelper.ReadableEntrySetMap, PofHelper.WriteableEntrySetMap
 - 
Nested classes/interfaces inherited from class com.tangosol.util.BaseBase.LoggingWriter
 
- 
 - 
Field SummaryFields Modifier and Type Field Description protected intm_nTypeIdThe type identifier of the user type to serialize and deserialize.- 
Fields inherited from class com.tangosol.io.pof.PofHelperBIGDECIMAL_ZERO, BIGINTEGER_MAX_LONG, BIGINTEGER_MIN_LONG, BINARY_EMPTY, BOOLEAN_ARRAY_EMPTY, BYTE_ARRAY_EMPTY, CHAR_ARRAY_EMPTY, COLLECTION_EMPTY, DOUBLE_ARRAY_EMPTY, FLOAT_ARRAY_EMPTY, INT_ARRAY_EMPTY, LONG_ARRAY_EMPTY, OBJECT_ARRAY_EMPTY, SHORT_ARRAY_EMPTY
 - 
Fields inherited from class com.tangosol.util.BaseLOG_ALWAYS, LOG_CONFIG, LOG_DEBUG, LOG_ERR, LOG_INFO, LOG_MAX, LOG_MIN, LOG_QUIET, LOG_WARN, POWER_0, POWER_G, POWER_K, POWER_M, POWER_T, UNIT_D, UNIT_H, UNIT_M, UNIT_MS, UNIT_NS, UNIT_S, UNIT_US
 - 
Fields inherited from interface com.tangosol.io.pof.PofConstantsJ_BIG_DECIMAL, J_BIG_INTEGER, J_BINARY, J_BOOLEAN, J_BOOLEAN_ARRAY, J_BYTE, J_BYTE_ARRAY, J_CHAR_ARRAY, J_CHARACTER, J_COLLECTION, J_DATE, J_DATETIME, J_DOUBLE, J_DOUBLE_ARRAY, J_FLOAT, J_FLOAT_ARRAY, J_INT_ARRAY, J_INTEGER, J_LOCAL_DATE, J_LOCAL_DATETIME, J_LOCAL_TIME, J_LONG, J_LONG_ARRAY, J_MAP, J_NULL, J_OBJECT_ARRAY, J_OFFSET_DATETIME, J_OFFSET_TIME, J_QUAD, J_RAW_DATE, J_RAW_DATETIME, J_RAW_DAY_TIME_INTERVAL, J_RAW_TIME, J_RAW_TIME_INTERVAL, J_RAW_YEAR_MONTH_INTERVAL, J_SHORT, J_SHORT_ARRAY, J_SPARSE_ARRAY, J_STRING, J_TIME, J_TIMESTAMP, J_USER_TYPE, J_ZONED_DATETIME, MAX_DECIMAL128_SCALE, MAX_DECIMAL128_UNSCALED, MAX_DECIMAL32_SCALE, MAX_DECIMAL32_UNSCALED, MAX_DECIMAL64_SCALE, MAX_DECIMAL64_UNSCALED, MIN_DECIMAL128_SCALE, MIN_DECIMAL32_SCALE, MIN_DECIMAL64_SCALE, T_ARRAY, T_BOOLEAN, T_CHAR, T_CHAR_STRING, T_COLLECTION, T_DATE, T_DATETIME, T_DAY_TIME_INTERVAL, T_DECIMAL128, T_DECIMAL32, T_DECIMAL64, T_FLOAT128, T_FLOAT32, T_FLOAT64, T_IDENTITY, T_INT128, T_INT16, T_INT32, T_INT64, T_MAP, T_OCTET, T_OCTET_STRING, T_REFERENCE, T_SPARSE_ARRAY, T_TIME, T_TIME_INTERVAL, T_UNIFORM_ARRAY, T_UNIFORM_COLLECTION, T_UNIFORM_KEYS_MAP, T_UNIFORM_MAP, T_UNIFORM_SPARSE_ARRAY, T_UNKNOWN, T_YEAR_MONTH_INTERVAL, V_BOOLEAN_FALSE, V_BOOLEAN_TRUE, V_COLLECTION_EMPTY, V_FP_NAN, V_FP_NEG_INFINITY, V_FP_POS_INFINITY, V_INT_0, V_INT_1, V_INT_10, V_INT_11, V_INT_12, V_INT_13, V_INT_14, V_INT_15, V_INT_16, V_INT_17, V_INT_18, V_INT_19, V_INT_2, V_INT_20, V_INT_21, V_INT_22, V_INT_3, V_INT_4, V_INT_5, V_INT_6, V_INT_7, V_INT_8, V_INT_9, V_INT_NEG_1, V_REFERENCE_NULL, V_STRING_ZERO_LENGTH
 
- 
 - 
Constructor SummaryConstructors Constructor Description ExternalizableLitePofSerializer(int nTypeId)Create a new ExternalizableLitePofSerializer for the user type with the given type identifier.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectdeserialize(PofReader in)Deserialize a user type instance from a POF stream by reading its state using the specified PofReader object.voidserialize(PofWriter out, Object o)Serialize a user type instance to a POF stream by writing its state using the specified PofWriter object.- 
Methods inherited from class com.tangosol.io.pof.PofHelpercalcDecimalSize, checkDate, checkDayTimeInterval, checkDecimalRange, checkElementCount, checkReferenceRange, checkTime, checkTimeInterval, checkTimeZone, checkType, checkYearMonthInterval, convertNumber, convertToDate, decodeTinyInt, encodeTinyInt, formatDate, formatTime, formatTime, getJavaTypeId, getPofTypeId, isIntrinsicPofType, readAsBigDecimal, readAsBigInteger, readAsChar, readAsDouble, readAsFloat, readAsInt, readAsLong, readAsQuad, readBigDecimal, readBigInteger, readChar, readLocalDate, readLocalDateTime, readLocalTime, readOffsetDateTime, readOffsetTime, readQuad, readRawDate, readRawTime, resizeArray, skipPackedInts, skipUniformValue, skipValue, writeBigDecimal, writeBigInteger, writeDate, writeTime
 - 
Methods inherited from class com.tangosol.util.Baseazzert, azzert, azzert, azzertFailed, breakLines, breakLines, capitalize, checkNotEmpty, checkNotNull, checkRange, computeSafeWaitTime, decimalValue, dup, dup, ensureBigDecimal, ensureClassLoader, ensureRuntimeException, ensureRuntimeException, equals, equalsDeep, err, err, err, err, err, escape, formatDateTime, getCallerStackFrame, getCommonMonitor, getCommonMonitor, getCommonMonitor, getContextClassLoader, getContextClassLoader, getDeepMessage, getErr, getLastSafeTimeMillis, getLog, getMaxDecDigits, getMaxHexDigits, getOriginalException, getOut, getProcessRandom, getRandom, getRandomBinary, getRandomBinary, getRandomString, getSafeTimeMillis, getStackFrame, getStackFrames, getStackTrace, getStackTrace, getStackTrace, getThreadFactory, getTimeZone, getUpTimeMillis, hashCode, hexValue, indentString, indentString, isDecimal, isHex, isLogEcho, isOctal, log, log, log, log, log, makeInteger, makeLong, makeThread, mergeArray, mergeBooleanArray, mergeByteArray, mergeCharArray, mergeDoubleArray, mergeFloatArray, mergeIntArray, mergeLongArray, mod, mod, octalValue, out, out, out, out, out, pad, parseBandwidth, parseBandwidth, parseDelimitedString, parseHex, parseHex, parseMemorySize, parseMemorySize, parsePercentage, parseTime, parseTime, parseTimeNanos, parseTimeNanos, printStackTrace, randomize, randomize, randomize, randomize, read, read, read, read, read, read, read, replace, setErr, setLog, setLogEcho, setOut, sleep, toBandwidthString, toBandwidthString, toCharEscape, toCrc, toCrc, toCrc, toCrc, toCrc, toDecString, toDelimitedString, toDelimitedString, toDelimitedString, toDelimitedString, toHex, toHex, toHexDump, toHexEscape, toHexEscape, toHexEscape, toHexEscape, toHexString, toMemorySizeString, toMemorySizeString, toQuotedCharEscape, toQuotedStringEscape, toSqlString, toString, toString, toStringEscape, toUnicodeEscape, trace, trace, trace, trace, trace, trace, trace, trace, trace, truncateString, truncateString, wait
 
- 
 
- 
- 
- 
Method Detail- 
serializepublic void serialize(PofWriter out, Object o) throws IOException Serialize a user type instance to a POF stream by writing its state using the specified PofWriter object.An implementation of PofSerializer is required to follow the following steps in sequence for writing out an object of a user type: - If the object is evolvable, the implementation must set the version
     by calling PofWriter.setVersionId(int).
- The implementation may write any combination of the properties of the user type by using the "write" methods of the PofWriter, but it must do so in the order of the property indexes.
- After all desired properties of the user type have been written,
     the implementation must terminate the writing of the user type by
     calling PofWriter.writeRemainder(com.tangosol.util.Binary).
 - Specified by:
- serializein interface- PofSerializer
- Parameters:
- out- the PofWriter with which to write the object's state
- o- the object to serialize
- Throws:
- IOException- if an I/O error occurs
 
- If the object is evolvable, the implementation must set the version
     by calling 
 - 
deserializepublic Object deserialize(PofReader in) throws IOException Deserialize a user type instance from a POF stream by reading its state using the specified PofReader object.An implementation of PofSerializer is required to follow the following steps in sequence for reading in an object of a user type: - If the object is evolvable, the implementation must get the version
     by calling PofReader.getVersionId().
- The implementation may read any combination of the properties of
     the user type by using "read" methods of the PofReader, but it must
     do so in the order of the property indexes. Additionally, the
     implementation must call PofReader.registerIdentity(java.lang.Object)with the new instance prior to reading any properties which are user type instances themselves.
- After all desired properties of the user type have been read, the
     implementation must terminate the reading of the user type by
     calling PofReader.readRemainder().
 - Specified by:
- deserializein interface- PofSerializer
- Parameters:
- in- the PofReader with which to read the object's state
- Returns:
- the deserialized user type instance
- Throws:
- IOException- if an I/O error occurs
 
- If the object is evolvable, the implementation must get the version
     by calling 
 
- 
 
-