Interface PofHandler
-
- All Known Implementing Classes:
AbstractPofHandler
,DuplexingPofHandler
,LoggingPofHandler
,NullImplementation.NullPofHandler
,ValidatingPofHandler
,WritingPofHandler
public interface PofHandler
This interface defines the handler for an event-driven approach to parsing (or assembling) a POF stream.- Since:
- Coherence 3.2
- Author:
- cp 2006.07.10
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
beginArray(int iPos, int cElements)
Report that an array of values has been encountered in the POF stream.void
beginCollection(int iPos, int cElements)
Report that a collection of values has been encountered in the POF stream.void
beginMap(int iPos, int cElements)
Report that a map of key/value pairs has been encountered in the POF stream.void
beginSparseArray(int iPos, int cElements)
Report that a sparse array of values has been encountered in the POF stream.void
beginUniformArray(int iPos, int cElements, int nType)
Report that a uniform array of values has been encountered in the POF stream.void
beginUniformCollection(int iPos, int cElements, int nType)
Report that a uniform collection of values has been encountered in the POF stream.void
beginUniformKeysMap(int iPos, int cElements, int nTypeKeys)
Report that a map of key/value pairs (with the keys being of a uniform type) has been encountered in the POF stream.void
beginUniformMap(int iPos, int cElements, int nTypeKeys, int nTypeValues)
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.void
beginUniformSparseArray(int iPos, int cElements, int nType)
Report that a uniform sparse array of values has been encountered in the POF stream.void
beginUserType(int iPos, int nUserTypeId, int nVersionId)
Report that a value of a "user type" has been encountered in the POF stream.void
endComplexValue()
Signifies the termination of the current complex value.void
onBoolean(int iPos, boolean f)
Report that a boolean value has been encountered in the POF stream.void
onChar(int iPos, char ch)
Report that a character value has been encountered in the POF stream.void
onCharString(int iPos, String s)
Report that a character string value has been encountered in the POF stream.void
onDate(int iPos, int nYear, int nMonth, int nDay)
Report that a date value has been encountered in the POF stream.void
onDateTime(int iPos, int nYear, int nMonth, int nDay, int nHour, int nMinute, int nSecond, int nNano, boolean fUTC)
Report that a date-time value has been encountered in the POF stream.void
onDateTime(int iPos, int nYear, int nMonth, int nDay, int nHour, int nMinute, int nSecond, int nNano, int nHourOffset, int nMinuteOffset)
Report that a date-time value (with a timezone offset) has been encountered in the POF stream.void
onDayTimeInterval(int iPos, int cDays, int cHours, int cMinutes, int cSeconds, int cNanos)
Report that a day-time interval value has been encountered in the POF stream.void
onDecimal128(int iPos, BigDecimal dec)
Report that a quad-precision decimal value (a base-10 floating point) has been encountered in the POF stream.void
onDecimal32(int iPos, BigDecimal dec)
Report that a single-precision decimal value (a base-10 floating point) has been encountered in the POF stream.void
onDecimal64(int iPos, BigDecimal dec)
Report that a double-precision decimal value (a base-10 floating point) has been encountered in the POF stream.void
onFloat128(int iPos, RawQuad qfl)
Report that a base-2 quad-precision floating point value has been encountered in the POF stream.void
onFloat32(int iPos, float fl)
Report that a base-2 single-precision floating point value has been encountered in the POF stream.void
onFloat64(int iPos, double dfl)
Report that a base-2 double-precision floating point value has been encountered in the POF stream.void
onIdentityReference(int iPos, int nId)
Specifies that a reference to a previously-identified value has been encountered in the POF stream.void
onInt128(int iPos, BigInteger n)
Report that a 128-bit integer value has been encountered in the POF stream.void
onInt16(int iPos, short n)
Report that a short integer value has been encountered in the POF stream.void
onInt32(int iPos, int n)
Report that an integer value has been encountered in the POF stream.void
onInt64(int iPos, long n)
Report that a long integer value has been encountered in the POF stream.void
onNullReference(int iPos)
Specifies that a null value has been encountered in the POF stream.void
onOctet(int iPos, int b)
Report that an octet value (a byte) has been encountered in the POF stream.void
onOctetString(int iPos, Binary bin)
Report that a octet string value has been encountered in the POF stream.void
onTime(int iPos, int nHour, int nMinute, int nSecond, int nNano, boolean fUTC)
Report that a time value has been encountered in the POF stream.void
onTime(int iPos, int nHour, int nMinute, int nSecond, int nNano, int nHourOffset, int nMinuteOffset)
Report that a time value (with a timezone offset) has been encountered in the POF stream.void
onTimeInterval(int iPos, int cHours, int cMinutes, int cSeconds, int cNanos)
Report that a time interval value has been encountered in the POF stream.void
onYearMonthInterval(int iPos, int cYears, int cMonths)
Report that a year-month interval value has been encountered in the POF stream.void
registerIdentity(int nId)
This method is invoked when an identity is encountered in the POF stream.
-
-
-
Method Detail
-
registerIdentity
void registerIdentity(int nId)
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 theonIdentityReference(int, int)
method.- Parameters:
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)
-
onNullReference
void onNullReference(int iPos)
Specifies that a null value has been encountered in the POF stream.- Parameters:
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
-
onIdentityReference
void onIdentityReference(int iPos, int nId)
Specifies that a reference to a previously-identified value has been encountered in the POF stream.- Parameters:
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 otherwisenId
- the identity of the previously encountered value, as was specified in a previous call toregisterIdentity(int)
-
onInt16
void onInt16(int iPos, short n)
Report that a short integer value has been encountered in the POF stream.- Parameters:
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 otherwisen
- the integer value as a short
-
onInt32
void onInt32(int iPos, int n)
Report that an integer value has been encountered in the POF stream.- Parameters:
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 otherwisen
- the integer value as an int
-
onInt64
void onInt64(int iPos, long n)
Report that a long integer value has been encountered in the POF stream.- Parameters:
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 otherwisen
- the integer value as a long
-
onInt128
void onInt128(int iPos, BigInteger n)
Report that a 128-bit integer value has been encountered in the POF stream.- Parameters:
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 otherwisen
- the integer value as a BigInteger
-
onFloat32
void onFloat32(int iPos, float fl)
Report that a base-2 single-precision floating point value has been encountered in the POF stream.- Parameters:
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 otherwisefl
- the floating point value as a float
-
onFloat64
void onFloat64(int iPos, double dfl)
Report that a base-2 double-precision floating point value has been encountered in the POF stream.- Parameters:
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 otherwisedfl
- the floating point value as a double
-
onFloat128
void onFloat128(int iPos, RawQuad qfl)
Report that a base-2 quad-precision floating point value has been encountered in the POF stream.- Parameters:
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 otherwiseqfl
- the floating point value as a quad
-
onDecimal32
void onDecimal32(int iPos, BigDecimal dec)
Report that a single-precision decimal value (a base-10 floating point) has been encountered in the POF stream.- Parameters:
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 otherwisedec
- the decimal value as a BigDecimal
-
onDecimal64
void onDecimal64(int iPos, BigDecimal dec)
Report that a double-precision decimal value (a base-10 floating point) has been encountered in the POF stream.- Parameters:
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 otherwisedec
- the decimal value as a BigDecimal
-
onDecimal128
void onDecimal128(int iPos, BigDecimal dec)
Report that a quad-precision decimal value (a base-10 floating point) has been encountered in the POF stream.- Parameters:
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 otherwisedec
- the decimal value as a BigDecimal
-
onBoolean
void onBoolean(int iPos, boolean f)
Report that a boolean value has been encountered in the POF stream.- Parameters:
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 otherwisef
- the boolean value
-
onOctet
void onOctet(int iPos, int b)
Report that an octet value (a byte) has been encountered in the POF stream.- Parameters:
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 otherwiseb
- the octet value as an int whose value is in the range 0 to 255 (0x00-0xFF) inclusive
-
onOctetString
void onOctetString(int iPos, Binary bin)
Report that a octet string value has been encountered in the POF stream.- Parameters:
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 otherwisebin
- the octet string value as a Binary object
-
onChar
void onChar(int iPos, char ch)
Report that a character value has been encountered in the POF stream.- Parameters:
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 otherwisech
- the character value as a char
-
onCharString
void onCharString(int iPos, String s)
Report that a character string value has been encountered in the POF stream.- Parameters:
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 otherwises
- the character string value as a String object
-
onDate
void onDate(int iPos, int nYear, int nMonth, int nDay)
Report that a date value has been encountered in the POF stream.- Parameters:
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 otherwisenYear
- the year number as defined by ISO8601; note the difference with the Java Date class, whose year is relative to 1900nMonth
- the month number between 1 and 12 inclusive as defined by ISO8601; note the difference from the Java Date class, whose month value is 0-based (0-11)nDay
- the day number between 1 and 31 inclusive as defined by ISO8601
-
onYearMonthInterval
void onYearMonthInterval(int iPos, int cYears, int cMonths)
Report that a year-month interval value has been encountered in the POF stream.- Parameters:
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 otherwisecYears
- the number of years in the year-month intervalcMonths
- the number of months in the year-month interval
-
onTime
void onTime(int iPos, int nHour, int nMinute, int nSecond, int nNano, boolean fUTC)
Report that a time value has been encountered in the POF stream.- Parameters:
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 otherwisenHour
- the hour between 0 and 23 inclusivenMinute
- the minute value between 0 and 59 inclusivenSecond
- the second value between 0 and 59 inclusive (and theoretically 60 for a leap-second)nNano
- the nanosecond value between 0 and 999999999 inclusivefUTC
- true if the time value is UTC or false if the time value does not have an explicit time zone
-
onTime
void onTime(int iPos, int nHour, int nMinute, int nSecond, int nNano, int nHourOffset, int nMinuteOffset)
Report that a time value (with a timezone offset) has been encountered in the POF stream.- Parameters:
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 otherwisenHour
- the hour between 0 and 23 inclusivenMinute
- the minute value between 0 and 59 inclusivenSecond
- the second value between 0 and 59 inclusive (and theoretically 60 for a leap-second)nNano
- the nanosecond value between 0 and 999999999 inclusivenHourOffset
- the timezone offset in hours from UTC, for example 0 for BST, -5 for EST and 1 for CETnMinuteOffset
- the timezone offset in minutes, for example 0 (in most cases) or 30- See Also:
- worldtimezone.com
-
onTimeInterval
void onTimeInterval(int iPos, int cHours, int cMinutes, int cSeconds, int cNanos)
Report that a time interval value has been encountered in the POF stream.- Parameters:
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 otherwisecHours
- the number of hours in the time intervalcMinutes
- the number of minutes in the time interval, from 0 to 59 inclusivecSeconds
- the number of seconds in the time interval, from 0 to 59 inclusivecNanos
- the number of nanoseconds, from 0 to 999999999 inclusive
-
onDateTime
void onDateTime(int iPos, int nYear, int nMonth, int nDay, int nHour, int nMinute, int nSecond, int nNano, boolean fUTC)
Report that a date-time value has been encountered in the POF stream.- Parameters:
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 otherwisenYear
- the year number as defined by ISO8601; note the difference with the Java Date class, whose year is relative to 1900nMonth
- the month number between 1 and 12 inclusive as defined by ISO8601; note the difference from the Java Date class, whose month value is 0-based (0-11)nDay
- the day number between 1 and 31 inclusive as defined by ISO8601nHour
- the hour between 0 and 23 inclusivenMinute
- the minute value between 0 and 59 inclusivenSecond
- the second value between 0 and 59 inclusive (and theoretically 60 for a leap-second)nNano
- the nanosecond value between 0 and 999999999 inclusivefUTC
- true if the time value is UTC or false if the time value does not have an explicit time zone
-
onDateTime
void onDateTime(int iPos, int nYear, int nMonth, int nDay, int nHour, int nMinute, int nSecond, int nNano, int nHourOffset, int nMinuteOffset)
Report that a date-time value (with a timezone offset) has been encountered in the POF stream.- Parameters:
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 otherwisenYear
- the year number as defined by ISO8601; note the difference with the Java Date class, whose year is relative to 1900nMonth
- the month number between 1 and 12 inclusive as defined by ISO8601; note the difference from the Java Date class, whose month value is 0-based (0-11)nDay
- the day number between 1 and 31 inclusive as defined by ISO8601nHour
- the hour between 0 and 23 inclusivenMinute
- the minute value between 0 and 59 inclusivenSecond
- the second value between 0 and 59 inclusive (and theoretically 60 for a leap-second)nNano
- the nanosecond value between 0 and 999999999 inclusivenHourOffset
- the timezone offset in hours from UTC, for example 0 for BST, -5 for EST and 1 for CETnMinuteOffset
- the timezone offset in minutes, for example 0 (in most cases) or 30
-
onDayTimeInterval
void onDayTimeInterval(int iPos, int cDays, int cHours, int cMinutes, int cSeconds, int cNanos)
Report that a day-time interval value has been encountered in the POF stream.- Parameters:
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 otherwisecDays
- the number of days in the day-time intervalcHours
- the number of hours in the day-time interval, from 0 to 23 inclusivecMinutes
- the number of minutes in the day-time interval, from 0 to 59 inclusivecSeconds
- the number of seconds in the day-time interval, from 0 to 59 inclusivecNanos
- the number of nanoseconds in the day-time interval, from 0 to 999999999 inclusive
-
beginCollection
void beginCollection(int iPos, int cElements)
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()
.- Parameters:
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 otherwisecElements
- the exact number of values (elements) in the collection
-
beginUniformCollection
void beginUniformCollection(int iPos, int cElements, int nType)
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()
.- Parameters:
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 otherwisecElements
- the exact number of values (elements) in the collectionnType
- the type identifier for all of the values in the uniform collection
-
beginArray
void beginArray(int iPos, int cElements)
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()
.- Parameters:
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 otherwisecElements
- the exact number of values (elements) in the array
-
beginUniformArray
void beginUniformArray(int iPos, int cElements, int nType)
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()
.- Parameters:
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 otherwisecElements
- the exact number of values (elements) in the arraynType
- the type identifier for all of the values in the uniform array
-
beginSparseArray
void beginSparseArray(int iPos, int cElements)
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()
.- Parameters:
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 otherwisecElements
- 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
-
beginUniformSparseArray
void beginUniformSparseArray(int iPos, int cElements, int nType)
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()
.- Parameters:
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 otherwisecElements
- 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 numbernType
- the type identifier for all of the values in the uniform sparse array
-
beginMap
void beginMap(int iPos, int cElements)
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()
.- Parameters:
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 otherwisecElements
- the exact number of key/value pairs (entries) in the map
-
beginUniformKeysMap
void beginUniformKeysMap(int iPos, int cElements, int nTypeKeys)
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()
.- Parameters:
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 otherwisecElements
- the exact number of key/value pairs (entries) in the mapnTypeKeys
- the type identifier for all of the keys in the uniform-keys map
-
beginUniformMap
void beginUniformMap(int iPos, int cElements, int nTypeKeys, int nTypeValues)
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()
.- Parameters:
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 otherwisecElements
- the exact number of key/value pairs (entries) in the mapnTypeKeys
- the type identifier for all of the keys in the uniform mapnTypeValues
- the type identifier for all of the values in the uniform map
-
beginUserType
void beginUserType(int iPos, int nUserTypeId, int nVersionId)
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()
.- Parameters:
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 otherwisenUserTypeId
- the user type identifier, (nUserTypeId >= 0)nVersionId
- the version identifier for the user data type data in the POF stream, (nVersionId >= 0)
-
endComplexValue
void endComplexValue()
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.
-
-