Oracle Coherence for C++ API
Release 3.7.0.0

E18684-01

PofHelper Class Reference

#include <coherence/io/pof/PofHelper.hpp>

Inherits PofConstants.

Inherited by PofBufferReader, PofBufferWriter, and WritingPofHandler.

List of all members.


Detailed Description

Collection of helper methods for POF streams.

Author:
jh 2008.04.09

Public Types

typedef spec::Handle Handle
 PofHelper Handle definition.
typedef spec::View View
 PofHelper View definition.
typedef spec::Holder Holder
 PofHelper Holder definition.

Static Public Member Functions

static int32_t getClassTypeId (Object::View v, PofContext::View vCtx)
 Return an identifier that represents the C++ type of the specified object.
static int32_t getPofTypeId (Class::View vClass, PofContext::View vCtx)
 Return an indentifier that represents the POF type of the specified class.
static int32_t encodeTinyInt32 (int32_t n)
 Encode an int32_t value into one of the reserved single-byte combined type and value indicators.
static int32_t decodeTinyInt32 (int32_t n)
 Decode an int32_t value from one of the reserved single-byte combined type and value indicators.
static char16_t readAsChar16 (ReadBuffer::BufferInput::Handle hIn, int32_t nType)
 Read a value of the specified encoding from the POF stream and convert it to a char16_t.
static int32_t readAsInt32 (ReadBuffer::BufferInput::Handle hIn, int32_t nType)
 Read a value of the specified encoding from the POF stream and convert it to an int32_t.
static int64_t readAsInt64 (ReadBuffer::BufferInput::Handle hIn, int32_t nType)
 Read a value of the specified encoding from the POF stream and convert it to an int64_t.
static float32_t readAsFloat32 (ReadBuffer::BufferInput::Handle hIn, int32_t nType)
 Read a value of the specified encoding from the POF stream and convert it to a float32_t.
static float64_t readAsFloat64 (ReadBuffer::BufferInput::Handle hIn, int32_t nType)
 Read a value of the specified encoding from the POF stream and convert it to a float64_t.
static RawDate::View readRawDate (ReadBuffer::BufferInput::Handle hIn)
 Read a RawDate value from the passed BufferInput.
static RawTime::View readRawTime (ReadBuffer::BufferInput::Handle hIn)
 Read a RawTime value from the passed BufferInput.
static void skipValue (ReadBuffer::BufferInput::Handle hIn)
 Within the POF stream, skip the next POF value.
static void skipUniformValue (ReadBuffer::BufferInput::Handle hIn, int32_t nType)
 Within the POF stream, skip the next POF value of the specified type.
static void skipInts (ReadBuffer::BufferInput::Handle hIn, int32_t c)
 Skip the specified number of integers in the passed POF stream.
static size32_t validateIncomingSize (int32_t cElements)
 Validate that the specified POF collection size as read from a POF stream is smaller than the largest value of the size32_t type, and if so, return the given size as a size32_t.
static int32_t validateOutgoingSize (size32_t cElements)
 Validate that the specified Collection size is smaller than the largest value of the int32_t type, and if so, return the given size as an in32_t.
static void checkDate (int32_t nYear, int32_t nMonth, int32_t nDay)
 Validate date information.
static void checkTime (int32_t nHour, int32_t nMinute, int32_t nSecond, int32_t nNano)
 Validate time information.
static void checkTimeZone (int32_t nHourOffset, int32_t nMinuteOffset)
 Check the specified timezone offset.
static void checkTimeInterval (int32_t cHours, int32_t cMinutes, int32_t cSeconds, int32_t cNanos)
 Validate a time interval.
static void checkDayTimeInterval (int32_t cDays, int32_t cHours, int32_t cMinutes, int32_t cSeconds, int32_t cNanos)
 Validate a day-time interval.
static void checkYearMonthInterval (int32_t cYears, int32_t cMonths)
 Validate a year-month interval.
static String::View formatDate (int32_t nYear, int32_t nMonth, int32_t nDay)
 Format a date in the form YYYY-MM-DD.
static String::View formatTime (int32_t nHour, int32_t nMinute, int32_t nSecond, int32_t nNano, bool fUTC)
 Format a time using the simplest applicable of the following formats:.
static String::View formatTime (int32_t nHour, int32_t nMinute, int32_t nSecond, int32_t nNano, int32_t nHourOffset, int32_t nMinuteOffset)
 Format a time using the simplest applicable of the following formats:.
static void writeDate (WriteBuffer::BufferOutput::Handle hOut, int32_t nYear, int32_t nMonth, int32_t nDay)
 Write a date value to a BufferOutput object.
static void writeTime (WriteBuffer::BufferOutput::Handle hOut, int32_t nHour, int32_t nMinute, int32_t nSecond, int32_t nNano, int32_t nTimeZoneType, int32_t nHourOffset, int32_t nMinuteOffset)
 Write a time value to a BufferOutput object.
static Array< bool >
::Handle 
getEmptyBooleanArray ()
 
Returns:
an empty array of bool.

static Array
< octet_t >::Handle 
getEmptyOctetArray ()
 
Returns:
an empty array of octet_t.

static Array
< char16_t >::Handle 
getEmptyChar16Array ()
 
Returns:
an empty array of char16_t.

static Array
< int16_t >::Handle 
getEmptyInt16Array ()
 
Returns:
an empty array of int16_t.

static Array
< int32_t >::Handle 
getEmptyInt32Array ()
 
Returns:
an empty array of int32_t.

static Array
< int64_t >::Handle 
getEmptyInt64Array ()
 
Returns:
an empty array of int64_t.

static Array
< float32_t >
::Handle 
getEmptyFloat32Array ()
 
Returns:
an empty array of float32_t.

static Array
< float64_t >
::Handle 
getEmptyFloat64Array ()
 
Returns:
an empty array of float64_t.

static
ObjectArray::Handle 
getEmptyObjectArray ()
 
Returns:
an empty array of objects.

static Binary::View getEmptyBinary ()
 A zero-length Binary.
static Collection::View getEmptyCollection ()
 
Returns:
an empty and immutable Collection


Classes

class  ReadableEntrySetMap
 Map implementation backed by a List of Map.Entry objects. More...
class  WriteableEntrySetMap
 Immutable Map implementation backed by a Set of Map::Entry objects. More...

Member Function Documentation

static int32_t getClassTypeId ( Object::View  v,
PofContext::View  vCtx 
) [static]

Return an identifier that represents the C++ type of the specified object.

Parameters:
v an object to determine the type of
vCtx the PofContext used to determine if the object is an instance of a valid user type; must not be NULL
Returns:
one of the PofConstants class C_* constants

static int32_t getPofTypeId ( Class::View  vClass,
PofContext::View  vCtx 
) [static]

Return an indentifier that represents the POF type of the specified class.

Parameters:
vClass the class; must not be NULL
vCtx the PofContext used to determine the type identifier of a user type; must not be NULL
Returns:
one of the PofConstants class T_* constants
Exceptions:
IllegalArgumentException if the user type associated with the given object is unknown to the specified PofContext

static int32_t encodeTinyInt32 ( int32_t  n  )  [static]

Encode an int32_t value into one of the reserved single-byte combined type and value indicators.

Parameters:
n an int32_t between -1 and 22 inclusive
Returns:
the int32_t value that the int32_t is encoded as

static int32_t decodeTinyInt32 ( int32_t  n  )  [static]

Decode an int32_t value from one of the reserved single-byte combined type and value indicators.

Parameters:
n the int32_t value that the int32_t is encoded as
Returns:
an int32_t between -1 and 22 inclusive

static char16_t readAsChar16 ( ReadBuffer::BufferInput::Handle  hIn,
int32_t  nType 
) [static]

Read a value of the specified encoding from the POF stream and convert it to a char16_t.

Parameters:
hIn the POF stream containing the value
nType the POF type of the value
Returns:
the POF value as an char
Exceptions:
IOException if an I/O error occurs reading the POF stream, or the POF value cannot be coerced to a char value

static int32_t readAsInt32 ( ReadBuffer::BufferInput::Handle  hIn,
int32_t  nType 
) [static]

Read a value of the specified encoding from the POF stream and convert it to an int32_t.

Parameters:
hIn the POF stream containing the value
nType the POF type of the value
Returns:
the POF value as an int32_t
Exceptions:
IOException if an I/O error occurs reading the POF stream, or the POF value cannot be coerced to an int32_t value

static int64_t readAsInt64 ( ReadBuffer::BufferInput::Handle  hIn,
int32_t  nType 
) [static]

Read a value of the specified encoding from the POF stream and convert it to an int64_t.

Parameters:
hIn the POF stream containing the value
nType the POF type of the value
Returns:
the POF value as an int64_t
Exceptions:
IOException if an I/O error occurs reading the POF stream, or the POF value cannot be coerced to an int64_t value

static float32_t readAsFloat32 ( ReadBuffer::BufferInput::Handle  hIn,
int32_t  nType 
) [static]

Read a value of the specified encoding from the POF stream and convert it to a float32_t.

Parameters:
hIn the POF stream containing the value
nType the POF type of the value
Returns:
the POF value as a float32_t
Exceptions:
IOException if an I/O error occurs reading the POF stream, or the POF value cannot be coerced to a float32_t value

static float64_t readAsFloat64 ( ReadBuffer::BufferInput::Handle  hIn,
int32_t  nType 
) [static]

Read a value of the specified encoding from the POF stream and convert it to a float64_t.

Parameters:
hIn the POF stream containing the value
nType the POF type of the value
Returns:
the POF value as a float64_t
Exceptions:
IOException if an I/O error occurs reading the POF stream, or the POF value cannot be coerced to a float64_t value

static RawDate::View readRawDate ( ReadBuffer::BufferInput::Handle  hIn  )  [static]

Read a RawDate value from the passed BufferInput.

Parameters:
hIn the BufferInput object to read from
Returns:
the RawDate value

static RawTime::View readRawTime ( ReadBuffer::BufferInput::Handle  hIn  )  [static]

Read a RawTime value from the passed BufferInput.

Parameters:
hIn the BufferInput object to read from
Returns:
the RawTime value

static void skipValue ( ReadBuffer::BufferInput::Handle  hIn  )  [static]

Within the POF stream, skip the next POF value.

Parameters:
hIn the BufferInput containing the POF stream

static void skipUniformValue ( ReadBuffer::BufferInput::Handle  hIn,
int32_t  nType 
) [static]

Within the POF stream, skip the next POF value of the specified type.

Parameters:
hIn the BufferInput containing the POF stream
nType the type of the value to skip

static void skipInts ( ReadBuffer::BufferInput::Handle  hIn,
int32_t  c 
) [static]

Skip the specified number of integers in the passed POF stream.

Parameters:
hIn the BufferInput containing the POF stream
c the number of integers to skip over

static size32_t validateIncomingSize ( int32_t  cElements  )  [inline, static]

Validate that the specified POF collection size as read from a POF stream is smaller than the largest value of the size32_t type, and if so, return the given size as a size32_t.

Parameters:
cElements the POF collection size
Returns:
the POF collection size as a size32_t
Exceptions:
Exception if the given POF collection size is greater than the largest value of the size32_t type

static int32_t validateOutgoingSize ( size32_t  cElements  )  [inline, static]

Validate that the specified Collection size is smaller than the largest value of the int32_t type, and if so, return the given size as an in32_t.

Parameters:
cElements the Collection size
Returns:
the Collection size as a int32_t
Exceptions:
Exception if the given Collection size is greater than the largest value of the int32_t type

static void checkDate ( int32_t  nYear,
int32_t  nMonth,
int32_t  nDay 
) [static]

Validate date information.

Parameters:
nYear the year number
nMonth the month number
nDay the day number

static void checkTime ( int32_t  nHour,
int32_t  nMinute,
int32_t  nSecond,
int32_t  nNano 
) [static]

Validate time information.

Parameters:
nHour the hour number
nMinute the minute number
nSecond the second number
nNano the nanosecond number

static void checkTimeZone ( int32_t  nHourOffset,
int32_t  nMinuteOffset 
) [static]

Check the specified timezone offset.

Parameters:
nHourOffset the hour offset
nMinuteOffset the minute offset

static void checkTimeInterval ( int32_t  cHours,
int32_t  cMinutes,
int32_t  cSeconds,
int32_t  cNanos 
) [static]

Validate a time interval.

Parameters:
cHours the number of hours
cMinutes the number of minutes
cSeconds the number of seconds
cNanos the number of nanoseconds

static void checkDayTimeInterval ( int32_t  cDays,
int32_t  cHours,
int32_t  cMinutes,
int32_t  cSeconds,
int32_t  cNanos 
) [static]

Validate a day-time interval.

See http://www.builderau.com.au/architect/database/soa/SQL_basics_Datetime_and_interval_data_types/0,39024547,20269031,00.htm

Parameters:
cDays the number of days
cHours the number of hours
cMinutes the number of minutes
cSeconds the number of seconds
cNanos the number of nanoseconds

static void checkYearMonthInterval ( int32_t  cYears,
int32_t  cMonths 
) [static]

Validate a year-month interval.

Parameters:
cYears the number of years
cMonths the number of months

static String::View formatDate ( int32_t  nYear,
int32_t  nMonth,
int32_t  nDay 
) [static]

Format a date in the form YYYY-MM-DD.

Parameters:
nYear the year number
nMonth the month number
nDay the day number

static String::View formatTime ( int32_t  nHour,
int32_t  nMinute,
int32_t  nSecond,
int32_t  nNano,
bool  fUTC 
) [static]

Format a time using the simplest applicable of the following formats:.

  1. HH:MM
  2. HH:MM:SS
  3. HH:MM:SS.MMM
  4. HH:MM:SS.NNNNNNNNN

Parameters:
nHour the hour number
nMinute the minute number
nSecond the second number
nNano the nanosecond number
fUTC true for UTC, false for no time zone
Returns:
a time String

static String::View formatTime ( int32_t  nHour,
int32_t  nMinute,
int32_t  nSecond,
int32_t  nNano,
int32_t  nHourOffset,
int32_t  nMinuteOffset 
) [static]

Format a time using the simplest applicable of the following formats:.

  1. HH:MMHH:MM
  2. HH:MM:SSHH:MM
  3. HH:MM:SS.MMMHH:MM
  4. HH:MM:SS.NNNNNNNNNHH:MM

Parameters:
nHour the hour number
nMinute the minute number
nSecond the second number
nNano the nanosecond number
nHourOffset the timezone offset in hours
nMinuteOffset the timezone offset in minutes
Returns:
a time String

static void writeDate ( WriteBuffer::BufferOutput::Handle  hOut,
int32_t  nYear,
int32_t  nMonth,
int32_t  nDay 
) [static]

Write a date value to a BufferOutput object.

Parameters:
hOut the BufferOutput to write to
nYear the year number as defined by ISO8601
nMonth the month number between 1 and 12 inclusive as defined by ISO8601
nDay the day number between 1 and 31 inclusive as defined by ISO8601
Exceptions:
IOException thrown if the passed BufferOutput object throws an IOException while the value is being written to it

static void writeTime ( WriteBuffer::BufferOutput::Handle  hOut,
int32_t  nHour,
int32_t  nMinute,
int32_t  nSecond,
int32_t  nNano,
int32_t  nTimeZoneType,
int32_t  nHourOffset,
int32_t  nMinuteOffset 
) [static]

Write a time value to a BufferOutput object.

Parameters:
hOut the BufferOutput to write to
nHour the hour between 0 and 23 inclusive
nMinute the minute value between 0 and 59 inclusive
nSecond the second value between 0 and 59 inclusive (and theoretically 60 for a leap-second)
nNano the nanosecond value between 0 and 999999999 inclusive
nTimeZoneType 0 if the time value does not have an explicit time zone, 1 if the time value is UTC and 2 if the time zone has an explicit hour and minute offset
nHourOffset the timezone offset in hours from UTC, for example 0 for BST, -5 for EST and 1 for CET
nMinuteOffset the timezone offset in minutes, for example 0 (in most cases) or 30
Exceptions:
IOException thrown if the passed BufferOutput object throws an IOException while the value is being written to it


The documentation for this class was generated from the following file:
Copyright © 2000, 2011, Oracle and/or its affiliates. All rights reserved.