Overview | Package | Class | Tree | Index | Help

Oracle® Coherence Java API Reference
v3.5.3
E15583-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.tangosol.io.pof
Class PofBufferReader.UserTypeReader

    java.lang.Object
      com.tangosol.util.Base
          com.tangosol.io.pof.PofHelper
              com.tangosol.io.pof.PofBufferReader
                  com.tangosol.io.pof.PofBufferReader.UserTypeReader

All Implemented Interfaces:
  PofConstants, PofReader

Enclosing class:
  PofBufferReader

    public static class PofBufferReader.UserTypeReader

extends PofBufferReader

The UserTypeReader implementation is a contextually-aware PofReader whose purpose is to advance through the properties of a value of a specified user type. The "contextual awareness" refers to the fact that the UserTypeReader maintains state about the type identifier and version of the user type, the parser's property index position within the user type value, and a PofContext that may differ from the PofContext that provided the PofSerializer which is using this UserTypeReader to parse a user type.

Nested Class Summary

Nested classes/interfaces inherited from class com.tangosol.io.pof.PofBufferReader
`PofBufferReader.UserTypeReader`

Nested classes/interfaces inherited from class com.tangosol.io.pof.PofHelper
`PofHelper.ReadableEntrySetMap, PofHelper.WriteableEntrySetMap`

Field Summary

Fields inherited from class com.tangosol.io.pof.PofBufferReader
`m_arrayRefs, m_ctx, m_in`

Fields inherited from class com.tangosol.io.pof.PofHelper
`BIGDECIMAL_ZERO, 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 interface com.tangosol.io.pof.PofConstants
`J_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_LONG, J_LONG_ARRAY, J_MAP, J_NULL, J_OBJECT_ARRAY, 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, 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 Summary
`PofBufferReader.UserTypeReader(ReadBuffer.BufferInput in, PofContext ctx, int nTypeId, int nVersionId)` Construct a parser for parsing the property values of a user type.

Method Summary
`protected boolean` | `advanceTo(int iProp)` Advance through the POF stream until the specified property is found.
`protected void` | `complete(int iProp)` Register the completion of the parsing of a value.
`int` | `getUserTypeId()` Determine the user type that is currently being parsed.
`int` | `getVersionId()` Determine the version identifier of the user type that is currently being parsed.
`Binary` | `readRemainder()` Read all remaining indexed properties of the current user type from the POF stream. As part of reading in a user type, this method must be called by the PofSerializer that is reading the user type, or the read position within the POF stream will be corrupted.

Subsequent calls to the various `readXYZ` methods of this interface will fail after this method is called.

Methods inherited from class com.tangosol.io.pof.PofBufferReader
`ensureReferenceRegistry, getParentParser, getPofContext, lookupIdentity, readAsObject, readAsObjectArray, readBigDecimal, readBigInteger, readBinary, readBinary, readBoolean, readBooleanArray, readByte, readByteArray, readChar, readCharArray, readCollection, readDate, readDouble, readDoubleArray, readFloat, readFloatArray, readInt, readIntArray, readLong, readLongArray, readLongArray, readMap, readObject, readObjectArray, readRawDate, readRawDateTime, readRawDayTimeInterval, readRawQuad, readRawTime, readRawTimeInterval, readRawYearMonthInterval, readShort, readShortArray, readString, registerIdentity, setPofContext`

Methods inherited from class com.tangosol.io.pof.PofHelper
`calcDecimalSize, checkDate, checkDayTimeInterval, checkDecimalRange, checkElementCount, checkReferenceRange, checkTime, checkTimeInterval, checkTimeZone, checkType, checkYearMonthInterval, convertNumber, convertToDate, decodeTinyInt, encodeTinyInt, formatDate, formatTime, formatTime, getJavaTypeId, getPofTypeId, readAsBigDecimal, readAsBigInteger, readAsChar, readAsDouble, readAsFloat, readAsInt, readAsLong, readAsQuad, readBigDecimal, readBigInteger, readChar, readQuad, readRawDate, readRawTime, resizeArray, skipPackedInts, skipUniformValue, skipValue, writeBigDecimal, writeBigInteger, writeDate, writeTime`

Constructor Detail

### PofBufferReader.UserTypeReader

    public PofBufferReader.UserTypeReader(ReadBuffer.BufferInput in,
                                          PofContext ctx,
                                          int nTypeId,
                                          int nVersionId)
                                   throws java.io.IOException

  Construct a parser for parsing the property values of a user type.

  Parameters:
    `in` - the BufferInput that contains the user type data, except for the user type id itself (which is passed passed as a constructor argument)
    `ctx` - the PofContext to use for parsing the user type property values within the user type that this parser will be parsing
    `nTypeId` - the type id of the user type
    `nVersionId` - the version id of the user type
  Throws:
    `java.io.IOException` - if an I/O error occurs

Method Detail

### getUserTypeId

    public int getUserTypeId()

  Determine the user type that is currently being parsed.

  Specified by:
    `getUserTypeId` in interface `PofReader`
  Overrides:
    `getUserTypeId` in class `PofBufferReader`
  Returns:
    the user type information, or -1 if the PofReader is not currently parsing a user type

### getVersionId

    public int getVersionId()

  Determine the version identifier of the user type that is currently being parsed.

  Specified by:
    `getVersionId` in interface `PofReader`
  Overrides:
    `getVersionId` in class `PofBufferReader`
  Returns:
    the integer version ID read from the POF stream; always non-negative

### readRemainder

    public Binary readRemainder()
                         throws java.io.IOException

  Read all remaining indexed properties of the current user type from the POF stream. As part of reading in a user type, this method must be called by the PofSerializer that is reading the user type, or the read position within the POF stream will be corrupted.

  Subsequent calls to the various `readXYZ` methods of this interface will fail after this method is called.

  Specified by:
    `readRemainder` in interface `PofReader`
  Overrides:
    `readRemainder` in class `PofBufferReader`
  Returns:
    a Binary object containing zero or more indexed properties in binary POF encoded form
  Throws:
    `java.io.IOException` - if an I/O error occurs

### advanceTo

    protected boolean advanceTo(int iProp)
                         throws java.io.IOException

  Advance through the POF stream until the specified property is found. If the property is found, return true, otherwise return false and advance to the first property that follows the specified property.

  Overrides:
    `advanceTo` in class `PofBufferReader`
  Parameters:
    `iProp` - the index of the property to advance to
  Returns:
    true if the property is found
  Throws:
    `java.io.IOException` - if an I/O error occurs

### complete

    protected void complete(int iProp)
                     throws java.io.IOException

  Register the completion of the parsing of a value.

  Overrides:
    `complete` in class `PofBufferReader`
  Parameters:
    `iProp` - the property index
  Throws:
    `java.io.IOException` - if an I/O error occurs

Overview | Package | Class | Tree | Index | Help

Oracle® Coherence Java API Reference
v3.5.3
E15583-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000, 2010, Oracle. All rights reserved.