#include <coherence/io/pof/PofHandler.hpp>
Inherits Object.
Public Types | |
typedef spec::Handle | Handle |
PofHandler Handle definition. | |
typedef spec::View | View |
PofHandler View definition. | |
typedef spec::Holder | Holder |
PofHandler Holder definition. | |
Public Member Functions | |
virtual void | registerIdentity (int32_t nId)=0 |
This method is invoked when an identity is encountered in the POF stream. | |
virtual void | onNullReference (int32_t iPos)=0 |
Specifies that a NULL value has been encountered in the POF stream. | |
virtual void | onIdentityReference (int32_t iPos, int32_t nId)=0 |
Specifies that a reference to a previously-identified value has been encountered in the POF stream. | |
virtual void | onInt16 (int32_t iPos, int16_t n)=0 |
Report that a short integer value has been encountered in the POF stream. | |
virtual void | onInt32 (int32_t iPos, int32_t n)=0 |
Report that an integer value has been encountered in the POF stream. | |
virtual void | onInt64 (int32_t iPos, int64_t n)=0 |
Report that a long integer value has been encountered in the POF stream. | |
virtual void | onFloat32 (int32_t iPos, float32_t fl)=0 |
Report that a base-2 single-precision floating-point value has been encountered in the POF stream. | |
virtual void | onFloat64 (int32_t iPos, float64_t dfl)=0 |
Report that a base-2 double-precision floating-point value has been encountered in the POF stream. | |
virtual void | onBoolean (int32_t iPos, bool f)=0 |
Report that a boolean value has been encountered in the POF stream. | |
virtual void | onOctet (int32_t iPos, octet_t b)=0 |
Report that an octet value (a byte) has been encountered in the POF stream. | |
virtual void | onOctetString (int32_t iPos, Binary::View vBin)=0 |
Report that a octet string value has been encountered in the POF stream. | |
virtual void | onChar (int32_t iPos, wchar16_t ch)=0 |
Report that a character value has been encountered in the POF stream. | |
virtual void | onCharString (int32_t iPos, String::View vs)=0 |
Report that a character string value has been encountered in the POF stream. | |
virtual void | onDate (int32_t iPos, int32_t nYear, int32_t nMonth, int32_t nDay)=0 |
Report that a date value has been encountered in the POF stream. | |
virtual void | onYearMonthInterval (int32_t iPos, int32_t cYears, int32_t cMonths)=0 |
Report that a year-month interval value has been encountered in the POF stream. | |
virtual void | onTime (int32_t iPos, int32_t nHour, int32_t nMinute, int32_t nSecond, int32_t nNano, bool fUTC)=0 |
Report that a time value has been encountered in the POF stream. | |
virtual void | onTime (int32_t iPos, int32_t nHour, int32_t nMinute, int32_t nSecond, int32_t nNano, int32_t nHourOffset, int32_t nMinuteOffset)=0 |
Report that a time value (with a timezone offset) has been encountered in the POF stream. | |
virtual void | onTimeInterval (int32_t iPos, int32_t cHours, int32_t cMinutes, int32_t cSeconds, int32_t cNanos)=0 |
Report that a time interval value has been encountered in the POF stream. | |
virtual void | onDateTime (int32_t iPos, int32_t nYear, int32_t nMonth, int32_t nDay, int32_t nHour, int32_t nMinute, int32_t nSecond, int32_t nNano, bool fUTC)=0 |
Report that a date-time value has been encountered in the POF stream. | |
virtual void | onDateTime (int32_t iPos, int32_t nYear, int32_t nMonth, int32_t nDay, int32_t nHour, int32_t nMinute, int32_t nSecond, int32_t nNano, int32_t nHourOffset, int32_t nMinuteOffset)=0 |
Report that a date-time value (with a timezone offset) has been encountered in the POF stream. | |
virtual void | onDayTimeInterval (int32_t iPos, int32_t cDays, int32_t cHours, int32_t cMinutes, int32_t cSeconds, int32_t cNanos)=0 |
Report that a day-time interval value has been encountered in the POF stream. | |
virtual void | beginCollection (int32_t iPos, size32_t cElements)=0 |
Report that a collection of values has been encountered in the POF stream. | |
virtual void | beginUniformCollection (int32_t iPos, size32_t cElements, int32_t nType)=0 |
Report that a uniform collection of values has been encountered in the POF stream. | |
virtual void | beginArray (int32_t iPos, size32_t cElements)=0 |
Report that an array of values has been encountered in the POF stream. | |
virtual void | beginUniformArray (int32_t iPos, size32_t cElements, int32_t nType)=0 |
Report that a uniform array of values has been encountered in the POF stream. | |
virtual void | beginSparseArray (int32_t iPos, size32_t cElements)=0 |
Report that a sparse array of values has been encountered in the POF stream. | |
virtual void | beginUniformSparseArray (int32_t iPos, size32_t cElements, int32_t nType)=0 |
Report that a uniform sparse array of values has been encountered in the POF stream. | |
virtual void | beginMap (int32_t iPos, size32_t cElements)=0 |
Report that a map of key/value pairs has been encountered in the POF stream. | |
virtual void | beginUniformKeysMap (int32_t iPos, size32_t cElements, int32_t nTypeKeys)=0 |
Report that a map of key/value pairs (with the keys being of a uniform type) has been encountered in the POF stream. | |
virtual void | beginUniformMap (int32_t iPos, size32_t cElements, int32_t nTypeKeys, int32_t nTypeValues)=0 |
Report that a map of key/value pairs (with the keys being of a uniform type and the values being of a uniform type) has been encountered in the POF stream. | |
virtual void | beginUserType (int32_t iPos, int32_t nUserTypeId, int32_t nVersionId)=0 |
Report that a value of a "user type" has been encountered in the POF stream. | |
virtual void | endComplexValue ()=0 |
Signifies the termination of the current complex value. |
virtual void registerIdentity | ( | int32_t | nId | ) | [pure virtual] |
This method is invoked when an identity is encountered in the POF stream.
The identity is used to uniquely identify the next value in the POF stream, and can be later referenced by the onIdentityReference method.
nId | if (nId >= 0) , then this is the identity encountered in the POF stream, otherwise it is an indicator that the following value could have been assigned an identifier but was not (i.e. that the subsequent value is of a referenceable data type) |
virtual void onNullReference | ( | int32_t | iPos | ) | [pure virtual] |
Specifies that a NULL value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise |
virtual void onIdentityReference | ( | int32_t | iPos, | |
int32_t | nId | |||
) | [pure virtual] |
Specifies that a reference to a previously-identified value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
nId | the identity of the previously encountered value, as was specified in a previous call to registerIdentity |
virtual void onInt16 | ( | int32_t | iPos, | |
int16_t | n | |||
) | [pure virtual] |
Report that a short integer value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
n | the integer value as a short |
virtual void onInt32 | ( | int32_t | iPos, | |
int32_t | n | |||
) | [pure virtual] |
Report that an integer value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
n | the integer value as an int32_t |
virtual void onInt64 | ( | int32_t | iPos, | |
int64_t | n | |||
) | [pure virtual] |
Report that a long integer value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
n | the integer value as a long |
virtual void onFloat32 | ( | int32_t | iPos, | |
float32_t | fl | |||
) | [pure virtual] |
Report that a base-2 single-precision floating-point value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
fl | the floating-point value as a float32_t |
virtual void onFloat64 | ( | int32_t | iPos, | |
float64_t | dfl | |||
) | [pure virtual] |
Report that a base-2 double-precision floating-point value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
dfl | the floating-point value as a float64_t |
virtual void onBoolean | ( | int32_t | iPos, | |
bool | f | |||
) | [pure virtual] |
Report that a boolean value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
f | the boolean value |
virtual void onOctet | ( | int32_t | iPos, | |
octet_t | b | |||
) | [pure virtual] |
Report that an octet value (a byte) has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
b | the octet value |
virtual void onOctetString | ( | int32_t | iPos, | |
Binary::View | vBin | |||
) | [pure virtual] |
Report that a octet string value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
vBin | the octect string value as a Binary object |
virtual void onChar | ( | int32_t | iPos, | |
wchar16_t | ch | |||
) | [pure virtual] |
Report that a character value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
ch | the character value as a wchar16_t |
virtual void onCharString | ( | int32_t | iPos, | |
String::View | vs | |||
) | [pure virtual] |
Report that a character string value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
vs | the character string value as a String object |
virtual void onDate | ( | int32_t | iPos, | |
int32_t | nYear, | |||
int32_t | nMonth, | |||
int32_t | nDay | |||
) | [pure virtual] |
Report that a date value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
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 |
virtual void onYearMonthInterval | ( | int32_t | iPos, | |
int32_t | cYears, | |||
int32_t | cMonths | |||
) | [pure virtual] |
Report that a year-month interval value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cYears | the number of years in the year-month interval | |
cMonths | the number of months in the year-month interval |
virtual void onTime | ( | int32_t | iPos, | |
int32_t | nHour, | |||
int32_t | nMinute, | |||
int32_t | nSecond, | |||
int32_t | nNano, | |||
bool | fUTC | |||
) | [pure virtual] |
Report that a time value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
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 | |
fUTC | true if the time value is UTC or false if the time value does not have an explicit time zone |
virtual void onTime | ( | int32_t | iPos, | |
int32_t | nHour, | |||
int32_t | nMinute, | |||
int32_t | nSecond, | |||
int32_t | nNano, | |||
int32_t | nHourOffset, | |||
int32_t | nMinuteOffset | |||
) | [pure virtual] |
Report that a time value (with a timezone offset) has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
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 | |
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 |
virtual void onTimeInterval | ( | int32_t | iPos, | |
int32_t | cHours, | |||
int32_t | cMinutes, | |||
int32_t | cSeconds, | |||
int32_t | cNanos | |||
) | [pure virtual] |
Report that a time interval value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cHours | the number of hours in the time interval | |
cMinutes | the number of minutes in the time interval, from 0 to 59 inclusive | |
cSeconds | the number of seconds in the time interval, from 0 to 59 inclusive | |
cNanos | the number of nanoseconds, from 0 to 999999999 inclusive |
virtual void onDateTime | ( | int32_t | iPos, | |
int32_t | nYear, | |||
int32_t | nMonth, | |||
int32_t | nDay, | |||
int32_t | nHour, | |||
int32_t | nMinute, | |||
int32_t | nSecond, | |||
int32_t | nNano, | |||
bool | fUTC | |||
) | [pure virtual] |
Report that a date-time value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
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 | |
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 | |
fUTC | true if the time value is UTC or false if the time value does not have an explicit time zone |
virtual void onDateTime | ( | int32_t | iPos, | |
int32_t | nYear, | |||
int32_t | nMonth, | |||
int32_t | nDay, | |||
int32_t | nHour, | |||
int32_t | nMinute, | |||
int32_t | nSecond, | |||
int32_t | nNano, | |||
int32_t | nHourOffset, | |||
int32_t | nMinuteOffset | |||
) | [pure virtual] |
Report that a date-time value (with a timezone offset) has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
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 | |
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 | |
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 |
virtual void onDayTimeInterval | ( | int32_t | iPos, | |
int32_t | cDays, | |||
int32_t | cHours, | |||
int32_t | cMinutes, | |||
int32_t | cSeconds, | |||
int32_t | cNanos | |||
) | [pure virtual] |
Report that a day-time interval value has been encountered in the POF stream.
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cDays | the number of days in the day-time interval | |
cHours | the number of hours in the day-time interval, from 0 to 23 inclusive | |
cMinutes | the number of minutes in the day-time interval, from 0 to 59 inclusive | |
cSeconds | the number of seconds in the day-time interval, from 0 to 59 inclusive | |
cNanos | the number of nanoseconds in the day-time interval, from 0 to 999999999 inclusive |
virtual void beginCollection | ( | int32_t | iPos, | |
size32_t | cElements | |||
) | [pure virtual] |
Report that a collection of values has been encountered in the POF stream.
This method call will be followed by a separate call to an "on" or "begin" method for each of the cElements
elements in the collection, and the collection extent will then be terminated by a call to endComplexValue().
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cElements | the exact number of values (elements) in the collection |
virtual void beginUniformCollection | ( | int32_t | iPos, | |
size32_t | cElements, | |||
int32_t | nType | |||
) | [pure virtual] |
Report that a uniform collection of values has been encountered in the POF stream.
This method call will be followed by a separate call to an "on" or "begin" method for each of the cElements
elements in the collection, and the collection extent will then be terminated by a call to endComplexValue().
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cElements | the exact number of values (elements) in the collection | |
nType | the type identifier for all of the values in the uniform collection |
virtual void beginArray | ( | int32_t | iPos, | |
size32_t | cElements | |||
) | [pure virtual] |
Report that an array of values has been encountered in the POF stream.
This method call will be followed by a separate call to an "on" or "begin" method for each of the cElements
elements in the array, and the array extent will then be terminated by a call to endComplexValue().
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cElements | the exact number of values (elements) in the array |
virtual void beginUniformArray | ( | int32_t | iPos, | |
size32_t | cElements, | |||
int32_t | nType | |||
) | [pure virtual] |
Report that a uniform array of values has been encountered in the POF stream.
This method call will be followed by a separate call to an "on" or "begin" method for each of the cElements
elements in the array, and the array extent will then be terminated by a call to endComplexValue().
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cElements | the exact number of values (elements) in the array | |
nType | the type identifier for all of the values in the uniform array |
virtual void beginSparseArray | ( | int32_t | iPos, | |
size32_t | cElements | |||
) | [pure virtual] |
Report that a sparse array of values has been encountered in the POF stream.
This method call will be followed by a separate call to an "on" or "begin" method for present element in the sparse array (up to cElements
elements), and the array extent will then be terminated by a call to endComplexValue().
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cElements | the exact number of elements in the array, which is greater than or equal to the number of values in the sparse POF stream; in other words, the number of values that will subsequently be reported will not exceed this number |
virtual void beginUniformSparseArray | ( | int32_t | iPos, | |
size32_t | cElements, | |||
int32_t | nType | |||
) | [pure virtual] |
Report that a uniform sparse array of values has been encountered in the POF stream.
This method call will be followed by a separate call to an "on" or "begin" method for present element in the sparse array (up to cElements
elements), and the array extent will then be terminated by a call to endComplexValue().
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cElements | the exact number of elements in the array, which is greater than or equal to the number of values in the sparse POF stream; in other words, the number of values that will subsequently be reported will not exceed this number | |
nType | the type identifier for all of the values in the uniform sparse array |
virtual void beginMap | ( | int32_t | iPos, | |
size32_t | cElements | |||
) | [pure virtual] |
Report that a map of key/value pairs has been encountered in the POF stream.
This method call will be followed by a separate call to an "on" or "begin" method for each of the cElements
elements in the map, and the map extent will then be terminated by a call to endComplexValue().
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cElements | the exact number of key/value pairs (entries) in the map |
virtual void beginUniformKeysMap | ( | int32_t | iPos, | |
size32_t | cElements, | |||
int32_t | nTypeKeys | |||
) | [pure virtual] |
Report that a map of key/value pairs (with the keys being of a uniform type) has been encountered in the POF stream.
This method call will be followed by a separate call to an "on" or "begin" method for each of the cElements
elements in the map, and the map extent will then be terminated by a call to endComplexValue().
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cElements | the exact number of key/value pairs (entries) in the map | |
nTypeKeys | the type identifier for all of the keys in the uniform-keys map |
virtual void beginUniformMap | ( | int32_t | iPos, | |
size32_t | cElements, | |||
int32_t | nTypeKeys, | |||
int32_t | nTypeValues | |||
) | [pure virtual] |
Report that a map of key/value pairs (with the keys being of a uniform type and the values being of a uniform type) has been encountered in the POF stream.
This method call will be followed by a separate call to an "on" or "begin" method for each of the cElements
elements in the map, and the map extent will then be terminated by a call to endComplexValue().
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
cElements | the exact number of key/value pairs (entries) in the map | |
nTypeKeys | the type identifier for all of the keys in the uniform map | |
nTypeValues | the type identifier for all of the values in the uniform map |
virtual void beginUserType | ( | int32_t | iPos, | |
int32_t | nUserTypeId, | |||
int32_t | nVersionId | |||
) | [pure virtual] |
Report that a value of a "user type" has been encountered in the POF stream.
A user type is analogous to a "class", and a value of a user type is analogous to an "object".
This method call will be followed by a separate call to an "on" or "begin" method for each of the property values in the user type, and the user type will then be terminated by a call to endComplexValue().
iPos | context-sensitive position information: property index within a user type, array index within an array, element counter within a collection, entry counter within a map, -1 otherwise | |
nUserTypeId | the user type identifier, (nUserTypeId >= 0) | |
nVersionId | the version identifier for the user data type data in the POF stream, (nVersionId >= 0) |
virtual void endComplexValue | ( | ) | [pure virtual] |
Signifies the termination of the current complex value.
Complex values are any of the collection, array, map and user types. For each call to one of the "begin" methods, there will be a corresponding call to this method, even if there were no contents in the complex value.