|
BLPAPI C++
3.25.1
|
#include <blpapi_eventformatter.h>
Public Member Functions | |
| EventFormatter (Event &event) | |
| ~EventFormatter () | |
| void | appendMessage (const Name &messageType, const Topic &topic) |
| void | appendMessage (const Name &messageType, const Topic &topic, unsigned int sequenceNumber) |
| void | appendResponse (const Name &operationName) |
| void | appendRecapMessage (const Topic &topic, const CorrelationId *cid=0) |
| void | appendRecapMessage (const Topic &topic, Message::Fragment fragmentType) |
| void | appendRecapMessage (const Name &messageType, const Topic &topic, Message::Fragment fragmentType=Message::FRAGMENT_NONE) |
| void | appendRecapMessage (const Topic &topic, unsigned int sequenceNumber, const CorrelationId *cid=0) |
| void | appendRecapMessage (const Name &messageType, const Topic &topic, unsigned int sequenceNumber) |
| void | appendRecapMessage (const Topic &topic, Message::Fragment fragmentType, unsigned int sequenceNumber) |
| void | appendRecapMessage (const Name &messageType, const Topic &topic, Message::Fragment fragmentType, unsigned int sequenceNumber) |
| void | appendRecapMessage (const CorrelationId &cid, Message::Fragment fragmentType=Message::FRAGMENT_NONE) |
| void | appendRecapMessage (const Name &messageType, const CorrelationId &cid, Message::Fragment fragmentType=Message::FRAGMENT_NONE) |
| void | setElement (const Name &name, bool value) |
| void | setElement (const Name &name, char value) |
| void | setElement (const Name &name, Int32 value) |
| void | setElement (const Name &name, Int64 value) |
| void | setElement (const Name &name, Float32 value) |
| void | setElement (const Name &name, Float64 value) |
| void | setElement (const Name &name, const Datetime &value) |
| void | setElement (const Name &name, const Datetime::HighPrecision &value) |
| void | setElement (const Name &name, const char *value) |
| void | setElement (const Name &name, const std::string &value) |
| void | setElement (const Name &name, const Name &value) |
| void | setElement (const Name &name, const void *value, size_t length) |
| template<typename BYTES , typename std::enable_if< IsByteSequence< BYTES >::value, bool >::type = true> | |
| void | setElement (const Name &name, const BYTES &value) |
| void | setElementNull (const Name &name) |
| void | pushElement (const Name &name) |
| void | popElement () |
| void | appendValue (bool value) |
| void | appendValue (char value) |
| void | appendValue (Int32 value) |
| void | appendValue (Int64 value) |
| void | appendValue (Float32 value) |
| void | appendValue (Float64 value) |
| void | appendValue (const char *value) |
| void | appendValue (const std::string &value) |
| void | appendValue (const Name &value) |
| void | appendValue (const Datetime &value) |
| void | appendValue (const Datetime::HighPrecision &value) |
| void | appendElement () |
DEPRECATED: | |
These functions are deprecated and maintained only for backwards compatibility | |
| BLPAPI_DEPRECATE_STRING_NAME void | appendMessage (const char *messageType, const Topic &topic) |
| BLPAPI_DEPRECATE_STRING_NAME void | appendMessage (const char *messageType, const Topic &topic, unsigned int sequenceNumber) |
| BLPAPI_DEPRECATE_STRING_NAME void | appendResponse (const char *operationName) |
| BLPAPI_DEPRECATE_STRING_NAME void | appendRecapMessage (const char *messageType, const Topic &topic, Message::Fragment fragmentType=Message::FRAGMENT_NONE) |
| BLPAPI_DEPRECATE_STRING_NAME void | appendRecapMessage (const char *messageType, const Topic &topic, unsigned int sequenceNumber) |
| BLPAPI_DEPRECATE_STRING_NAME void | appendRecapMessage (const char *messageType, const Topic &topic, Message::Fragment fragmentType, unsigned int sequenceNumber) |
| BLPAPI_DEPRECATE_STRING_NAME void | appendRecapMessage (const char *messageType, const CorrelationId &cid, Message::Fragment fragmentType=Message::FRAGMENT_NONE) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElement (const char *name, bool value) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElement (const char *name, char value) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElement (const char *name, Int32 value) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElement (const char *name, Int64 value) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElement (const char *name, Float32 value) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElement (const char *name, Float64 value) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElement (const char *name, const Datetime &value) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElement (const char *name, const Datetime::HighPrecision &value) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElement (const char *name, const char *value) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElement (const char *name, const Name &value) |
| BLPAPI_DEPRECATE_STRING_NAME void | setElementNull (const char *name) |
| BLPAPI_DEPRECATE_STRING_NAME void | pushElement (const char *name) |
EventFormatter is used to populate Events for publishing.
An EventFormatter is created from an Event obtained from Service::createPublishEvent(). Once the Message or messages have been appended to the Event using the EventFormatter the Event can be published using ProviderSession::publish().
EventFormatter objects cannot be copied or assigned so as to ensure there is no ambiguity about what happens if two EventFormatters are both formatting the same Event.
The EventFormatter supports appending multiple messages of the same type to the same Event. However the EventFormatter supports write once only to each field. It is an error to call setElement() or pushElement() for the same name more than once at a particular level of the schema when creating a message.
The EventFormatter supports appending recap messages with an user-provided messageType. If the user doesn't specify the messageType for the recap message, then the type is determined by the service schema, with the FORCED_RECAP_TICK_TYPE (10000) message used for un-solicited recap messages, and RECAP_TICK_TYPE (9999) used for solicited recap messages. In addition to that, services can send recaps in more than one tick through the fragmentType flag for recap messages. Recap messages with fragmentType other than Message::FRAGMENT_NONE must send message fragments in order. A recap message with Message::FRAGMENT_START may be followed by zero or more messages with fragmentType Message::FRAGMENT_INTERMEDIATE. Publishers must also publish a recap message with Message::FRAGMENT_END for each recap that was started with Message::FRAGMENT_START. Trying to publish recap messages with flags in a different order is undefined behavior.
|
explicit |
Create an EventFormatter to create Messages in the specified Event. An Event may only be referenced by one EventFormatter at any time. Attempting to create a second EventFormatter referencing the same Event will result in an exception being thrown.
| ~EventFormatter | ( | ) |
Destroy this EventFormatter object.
| void appendElement | ( | ) |
Create an element and append it to the array element on which this EventFormatter is operating on. Throw an exception if the current element to which value is appended is not an array.
Append an (empty) message of the specified messageType that will be published under the specified topic to the Event referenced by this EventFormatter. After a message has been appended its elements can be set using the various setElement() methods.
Append an (empty) message of the specified messageType that will be published under the specified topic with the specified sequenceNumber to the Event referenced by this EventFormatter. It is expected that sequenceNumber is greater (unless the value wrapped) than the last value used in any previous message on this topic, otherwise the behavior is undefined. After a message has been appended its elements can be set using the various setElement() methods.
| void appendMessage | ( | const char * | messageType, |
| const Topic & | topic | ||
| ) |
Append an (empty) message of the specified messageType that will be published under the specified topic to the Event referenced by this EventFormatter. After a message has been appended its elements can be set using the various setElement() methods.
| void appendMessage | ( | const char * | messageType, |
| const Topic & | topic, | ||
| unsigned int | sequenceNumber | ||
| ) |
Append an (empty) message of the specified messageType that will be published under the specified topic with the specified sequenceNumber to the Event referenced by this EventFormatter. It is expected that sequenceNumber is greater (unless the value wrapped) than the last value used in any previous message on this topic, otherwise the behavior is undefined. After a message has been appended its elements can be set using the various setElement() methods.
| void appendRecapMessage | ( | const Topic & | topic, |
| const CorrelationId * | cid = 0 |
||
| ) |
Append an empty recap message with the default messageType that will be published under the specified topic to the event referenced by this EventFormatter. Specify the optional CorrelationId pointer cid if this recap message is added in response to a TOPIC_RECAP message. It is undefined behavior to call this function with a non-null cid for a TOPIC_RECAP message with a different Topic than that referenced by topic. This method will create a recap message with fragment type FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event.
cid is deprecated. Utilize the overload appendRecapMessage(const CorrelationId&, ...) to respond to TOPIC_RECAP messages. | void appendRecapMessage | ( | const Topic & | topic, |
| Message::Fragment | fragmentType | ||
| ) |
Append an empty recap message with the default messageType that will be published under the specified topic to the event referenced by this EventFormatter. The specified fragmentType determines what fragment flag to apply to this recap message. Single-tick recap messages should have fragmentType Message::FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event. Note that it is undefined behavior to send multi-tick recaps with a fragment ordering other than one Message::FRAGMENT_START, and zero or more Message::FRAGMENT_INTERMEDIATE followed by a Message::FRAGMENT_END fragment. Refer to the component documentation for more information on message fragments.
| void appendRecapMessage | ( | const Name & | messageType, |
| const Topic & | topic, | ||
| Message::Fragment | fragmentType = Message::FRAGMENT_NONE |
||
| ) |
Append an empty recap message of type messageType that will be published under the specified topic to the event referenced by this EventFormatter. Specify the optional fragmentType to create a recap message with fragment type other than Message::FRAGMENT_NONE, if fragmentType is not provided, append a recap message with fragment type Message::FRAGMENT_NONE. Single-tick recap messages should have fragmentType Message::FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event. Note that it is undefined behavior to send multi-tick recaps with a fragment ordering other than one Message::FRAGMENT_START, and zero or more Message::FRAGMENT_INTERMEDIATE followed by a Message::FRAGMENT_END fragment. Refer to the component documentation for more information on message fragments.
| void appendRecapMessage | ( | const Topic & | topic, |
| unsigned int | sequenceNumber, | ||
| const CorrelationId * | cid = 0 |
||
| ) |
Append an empty recap message with the default messageType that will be published under the specified topic with the specified sequenceNumber to the event referenced by this EventFormatter. Specify the optional CorrelationId pointer cid if this recap message is added in response to a TOPIC_RECAP message. It is undefined behavior to call this function with a non-null cid for a TOPIC_RECAP message with a different Topic than that referenced by topic. It is expected that sequenceNumber is greater (unless the value wrapped) than the last value used in any previous message on this topic, otherwise the behavior is undefined. This method will create a recap message with fragment type FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event.
cid is deprecated. Utilize the overload appendRecapMessage(const CorrelationId&, ...) to respond to TOPIC_RECAP messages. | void appendRecapMessage | ( | const Name & | messageType, |
| const Topic & | topic, | ||
| unsigned int | sequenceNumber | ||
| ) |
Append an empty recap message of type messageType that will be published under the specified topic with the specified sequenceNumber to the event referenced by this EventFormatter. It is expected that sequenceNumber is greater (unless the value wrapped) than the last value used in any previous message on this topic, otherwise the behavior is undefined. This method will create a recap message with fragment type FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event.
| void appendRecapMessage | ( | const Topic & | topic, |
| Message::Fragment | fragmentType, | ||
| unsigned int | sequenceNumber | ||
| ) |
Append an empty recap message with the default messageType that will be published under the specified topic with the specified sequenceNumber to the event referenced by this EventFormatter. It is expected that sequenceNumber is greater (unless the value wrapped) than the last value used in any previous message on this topic, otherwise the behavior is undefined. The specified fragmentType determines what fragment flag to apply to this recap message. Single-tick recap messages should have fragmentType Message::FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event. Note that it is undefined behavior to send multi-tick recaps with a fragment ordering other than one Message::FRAGMENT_START, and zero or more Message::FRAGMENT_INTERMEDIATE followed by a Message::FRAGMENT_END fragment. Refer to the component documentation for more information on message fragments.
| void appendRecapMessage | ( | const Name & | messageType, |
| const Topic & | topic, | ||
| Message::Fragment | fragmentType, | ||
| unsigned int | sequenceNumber | ||
| ) |
Append an empty recap message of the specified messageType that will be published under the specified topic with the specified sequenceNumber to the event referenced by this EventFormatter. It is expected that sequenceNumber is greater (unless the value wrapped) than the last value used in any previous message on this topic, otherwise the behavior is undefined.The specified fragmentType determines what fragment flag to apply to this recap message. Single-tick recap messages should have fragmentType Message::FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event. Note that it is undefined behavior to send multi-tick recaps with a fragment ordering other than one Message::FRAGMENT_START, and zero or more Message::FRAGMENT_INTERMEDIATE followed by a Message::FRAGMENT_END fragment. Refer to the component documentation for more information on message fragments.
| void appendRecapMessage | ( | const CorrelationId & | cid, |
| Message::Fragment | fragmentType = Message::FRAGMENT_NONE |
||
| ) |
Append an empty recap message with the default messageType that will be published to the event referenced by this EventFormatter. The specified cid identifies the TOPIC_RECAP message that this recap message is in response to. Specify the optional fragmentType to create a recap message with fragment type other than Message::FRAGMENT_NONE, if fragmentType is not provided, append a recap message with fragment type FRAGMENT_NONE. Single-tick recap messages should have fragmentType Message::FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event. Note that it is undefined behavior to send multi-tick recaps with a fragment ordering other than one Message::FRAGMENT_START, and zero or more Message::FRAGMENT_INTERMEDIATE followed by a Message::FRAGMENT_END fragment. Refer to the component documentation for more information on message fragments.
| void appendRecapMessage | ( | const Name & | messageType, |
| const CorrelationId & | cid, | ||
| Message::Fragment | fragmentType = Message::FRAGMENT_NONE |
||
| ) |
Append an empty recap message of type messageType that will be published to the event referenced by this EventFormatter. The specified cid identifies the TOPIC_RECAP message that this recap message is in response to. Specify the optional fragmentType to create a recap message with fragment type other than Message::FRAGMENT_NONE, if fragmentType is not provided, append a recap message with fragment type FRAGMENT_NONE. Single-tick recap messages should have fragmentType Message::FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event. Note that it is undefined behavior to send multi-tick recaps with a fragment ordering other than one Message::FRAGMENT_START, and zero or more Message::FRAGMENT_INTERMEDIATE followed by a Message::FRAGMENT_END fragment. Refer to the component documentation for more information on message fragments.
| void appendRecapMessage | ( | const char * | messageType, |
| const Topic & | topic, | ||
| Message::Fragment | fragmentType = Message::FRAGMENT_NONE |
||
| ) |
Append an empty recap message of type messageType that will be published under the specified topic to the event referenced by this EventFormatter. Specify the optional fragmentType to create a recap message with fragment type other than Message::FRAGMENT_NONE, if fragmentType is not provided, append a recap message with fragment type Message::FRAGMENT_NONE. Single-tick recap messages should have fragmentType Message::FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event. Note that it is undefined behavior to send multi-tick recaps with a fragment ordering other than one Message::FRAGMENT_START, and zero or more Message::FRAGMENT_INTERMEDIATE followed by a Message::FRAGMENT_END fragment. Refer to the component documentation for more information on message fragments.
| void appendRecapMessage | ( | const char * | messageType, |
| const Topic & | topic, | ||
| unsigned int | sequenceNumber | ||
| ) |
Append an empty recap message of type messageType that will be published under the specified topic with the specified sequenceNumber to the event referenced by this EventFormatter. It is expected that sequenceNumber is greater (unless the value wrapped) than the last value used in any previous message on this topic, otherwise the behavior is undefined. This method will create a recap message with fragment type'FRAGMENT_NONE'. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event.
| void appendRecapMessage | ( | const char * | messageType, |
| const Topic & | topic, | ||
| Message::Fragment | fragmentType, | ||
| unsigned int | sequenceNumber | ||
| ) |
Append an empty recap message of the specified messageType that will be published under the specified topic with the specified sequenceNumber to the event referenced by this EventFormatter. It is expected that sequenceNumber is greater (unless the value wrapped) than the last value used in any previous message on this topic, otherwise the behavior is undefined. The specified fragmentType determines what fragment flag to apply to this recap message. Single-tick recap messages should have fragmentType Message::FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event. Note that it is undefined behavior to send multi-tick recaps with a fragment ordering other than one Message::FRAGMENT_START, and zero or more Message::FRAGMENT_INTERMEDIATE followed by a Message::FRAGMENT_END fragment. Refer to the component documentation for more information on message fragments.
| void appendRecapMessage | ( | const char * | messageType, |
| const CorrelationId & | cid, | ||
| Message::Fragment | fragmentType = Message::FRAGMENT_NONE |
||
| ) |
Append an empty recap message of type messageType that will be published to the event referenced by this EventFormatter.The specified cid identifies the TOPIC_RECAP message that this recap message is in response to. Specify the optional fragmentType to create a recap message with fragment type other than Message::FRAGMENT_NONE, if fragmentType is not provided, append a recap message with fragment type FRAGMENT_NONE. Single-tick recap messages should have fragmentType Message::FRAGMENT_NONE. After a message has been appended its elements can be set using the various setElement() methods. It is an error to append a recap message to an Admin event. Note that it is undefined behavior to send multi-tick recaps with a fragment ordering other than one Message::FRAGMENT_START, and zero or more Message::FRAGMENT_INTERMEDIATE followed by a Message::FRAGMENT_END fragment. Refer to the component documentation for more information on message fragments.
| void appendResponse | ( | const Name & | operationName | ) |
Append an (empty) response message for the specified operationName (e.g. "ReferenceDataRequest") that will be sent in response to the previously received operation request. For "PermissionRequest" messages, use "PermissionResponse". After a message for this operation has been appended its elements can be set using the various setElement() methods. Only one response can be appended to an event. The behavior is undefined unless the Event is currently empty.
| void appendResponse | ( | const char * | operationName | ) |
Equivalent to appendResponse(const Name& operationName) with a Name object with the specified operationName value.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void appendValue | ( | bool | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void appendValue | ( | char | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void appendValue | ( | Int32 | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void appendValue | ( | Int64 | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void appendValue | ( | Float32 | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void appendValue | ( | Float64 | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void appendValue | ( | const char * | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void appendValue | ( | const std::string & | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void appendValue | ( | const Name & | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void appendValue | ( | const Datetime & | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void appendValue | ( | const Datetime::HighPrecision & | value | ) |
Append the specified value to the element on which this EventFormatter is operating. Throw an exception if the schema of the message is flat or the current element to which value is appended is not an array.
| void popElement | ( | ) |
Undoes the most recent call to pushElement() or appendElement() on this EventFormatter and returns the context of the EventFormatter to where it was before the call to pushElement() or appendElement(). Once popElement() has been called it is invalid to attempt to re-visit the same context.
| void pushElement | ( | const Name & | name | ) |
Changes the level at which this EventFormatter is operating to the specified element name. The element name must identify either a choice, a sequence or an array at the current level of the schema or the behavior is undefined. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown. After this returns the context of the EventFormatter is set to the element name in the schema and any calls to setElement() or pushElement() are applied at that level. If name represents an array of scalars then appendValue() must be used to add values. If name represents an array of complex types then appendElement() creates the first entry and set the context of the EventFormatter to that element. Calling appendElement() again will create another entry.
| void pushElement | ( | const char * | name | ) |
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElement | ( | const Name & | name, |
| bool | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
| void setElement | ( | const Name & | name, |
| char | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown. This function sets the Datetime value with millisecond resolution.
| void setElement | ( | const Name & | name, |
| const Datetime::HighPrecision & | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown. This function sets the Datetime value with full precision. Note that while Datetime supports picosecond resolution, messages on the wire won't have the full resolution.
| void setElement | ( | const Name & | name, |
| const char * | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown. The behavior is undefined unless value is not NULL. Clients wishing to format and publish null values (e.g. for the purpose of cache management) should not use this function; use setElementNull instead.
| void setElement | ( | const Name & | name, |
| const std::string & | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown. The behaviour is undefined if the specified value contains embedded zero-characters.
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
| void setElement | ( | const Name & | name, |
| const void * | value, | ||
| size_t | length | ||
| ) |
Set the element with the specified name to the specified value and length in bytes in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown. The behavior is undefined unless value is not NULL or length is zero. Clients wishing to format and publish null values (e.g. for the purpose of cache management) should not use this function; use setElementNull instead.
| void setElement | ( | const Name & | name, |
| const BYTES & | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown. This function accepts any BYTES that provides const BYTES::value_type * BYTES::data() const method, does not provide BYTES::c_str() method and sizeof(BYTES::value_type) == 1, for example std::vector\<char\>. The behaviour of this function is undefined unless data() returns a pointer to a contiguous block of memory.
| void setElement | ( | const char * | name, |
| bool | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElement | ( | const char * | name, |
| char | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElement | ( | const char * | name, |
| Int32 | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElement | ( | const char * | name, |
| Int64 | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElement | ( | const char * | name, |
| Float32 | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElement | ( | const char * | name, |
| Float64 | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElement | ( | const char * | name, |
| const Datetime & | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown. This function sets the Datetime value with millisecond resolution.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElement | ( | const char * | name, |
| const Datetime::HighPrecision & | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown. This function sets the Datetime value with full precision. Note that while Datetime supports picosecond resolution, messages on the wire won't have the full resolution.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElement | ( | const char * | name, |
| const char * | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown. The behavior is undefined unless value is not NULL. Clients wishing to format and publish null values (e.g. for the purpose of cache management) should not use this function; use setElementNull instead.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElement | ( | const char * | name, |
| const Name & | value | ||
| ) |
Set the element with the specified name to the specified value in the current message in the Event referenced by this EventFormatter. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.
| void setElementNull | ( | const Name & | name | ) |
Create a null element with the specified name. Note that whether or not fields containing null values are published to subscribers is dependent upon details of the service and schema configuration. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
| void setElementNull | ( | const char * | name | ) |
Create a null element with the specified name. Note that whether or not fields containing null values are published to subscribers is dependent upon details of the service and schema configuration. If the name is invalid for the current message, if appendMessage() has never been called or if the element identified by name has already been set an exception is thrown.
Note that using Name overloads is preferred, as the Name objects have better performance if they are re-used after being created.