ClassesClassesClassesClasses | | | | Operators

get_message_objget_message_objGetMessageObjget_message_objGetMessageObjGetMessageObj (Operator)

Name

get_message_objget_message_objGetMessageObjget_message_objGetMessageObjGetMessageObj — Retrieve an object associated with the key from the message.

Signature

get_message_obj( : ObjectData : MessageHandle, Key : )

Herror get_message_obj(Hobject* ObjectData, const Hlong MessageHandle, const char* Key)

Herror T_get_message_obj(Hobject* ObjectData, const Htuple MessageHandle, const Htuple Key)

Herror get_message_obj(Hobject* ObjectData, const HTuple& MessageHandle, const HTuple& Key)

void GetMessageObj(HObject* ObjectData, const HTuple& MessageHandle, const HTuple& Key)

HObject HMessage::GetMessageObj(const HString& Key) const

HObject HMessage::GetMessageObj(const char* Key) const

void HOperatorSetX.GetMessageObj(
[out] IHUntypedObjectX*ObjectData, [in] VARIANT MessageHandle, [in] VARIANT Key)

IHUntypedObjectX* HMessageX.GetMessageObj([in] BSTR Key)

static void HOperatorSet.GetMessageObj(out HObject objectData, HTuple messageHandle, HTuple key)

HObject HMessage.GetMessageObj(string key)

Description

get_message_objget_message_objGetMessageObjget_message_objGetMessageObjGetMessageObj retrives an object associated with the KeyKeyKeyKeyKeykey from the message denoted by the MessageHandleMessageHandleMessageHandleMessageHandleMessageHandlemessageHandle. The object has to be previously stored to the message using set_message_objset_message_objSetMessageObjset_message_objSetMessageObjSetMessageObj.

The operator returns the data in the parameter ObjectDataObjectDataObjectDataObjectDataObjectDataobjectData. The iconic object is copied by the operation. Threrefore, clearing or reusing the message object afterwards will not have any side-effect on the returned iconic object, afterwards.

If the given KeyKeyKeyKeyKeykey is not present in the message or if the data associated with the key is not an object, get_message_objget_message_objGetMessageObjget_message_objGetMessageObjGetMessageObj fails. Presence of keys and information about the data associated with the key can be verified using get_message_paramget_message_paramGetMessageParamget_message_paramGetMessageParamGetMessageParam.

Parallelization

Parameters

ObjectDataObjectDataObjectDataObjectDataObjectDataobjectData (output_object)  object(-array) objectHObjectHObjectHObjectHObjectXHobject *

Tuple value retrieved from the message.

MessageHandleMessageHandleMessageHandleMessageHandleMessageHandlemessageHandle (input_control)  message HMessage, HTupleHTupleHMessage, HTupleHMessageX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Message handle.

Number of elements: MessageHandle == 1

Restriction: MessageHandle != 0

KeyKeyKeyKeyKeykey (input_control)  string HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Key string.

Number of elements: Key == 1

Restriction: length(Key) > 0

Example (HDevelop)

* ...
get_message_param (Message,'key_exists',['simple_string','foo','my_image'],\
                   KeysPresence)
get_message_param (Message,'key_data_type',['simple_string','my_image'],\
                   KeysType)
get_message_obj (Image, Message, 'my_image')

Result

If the operation succeeds, get_message_objget_message_objGetMessageObjget_message_objGetMessageObjGetMessageObj returns 2 (H_MSG_TRUE). Otherwise an exception is raised. Possible error conditions include invalid parameters (handle or key), the required key not found in the message or other than object data associated with given key.

Possible Predecessors

dequeue_messagedequeue_messageDequeueMessagedequeue_messageDequeueMessageDequeueMessage

Alternatives

get_message_tupleget_message_tupleGetMessageTupleget_message_tupleGetMessageTupleGetMessageTuple

See also

create_messagecreate_messageCreateMessagecreate_messageCreateMessageCreateMessage, clear_messageclear_messageClearMessageclear_messageClearMessageClearMessage, set_message_tupleset_message_tupleSetMessageTupleset_message_tupleSetMessageTupleSetMessageTuple, get_message_tupleget_message_tupleGetMessageTupleget_message_tupleGetMessageTupleGetMessageTuple, set_message_objset_message_objSetMessageObjset_message_objSetMessageObjSetMessageObj, set_message_paramset_message_paramSetMessageParamset_message_paramSetMessageParamSetMessageParam, get_message_paramget_message_paramGetMessageParamget_message_paramGetMessageParamGetMessageParam, enqueue_messageenqueue_messageEnqueueMessageenqueue_messageEnqueueMessageEnqueueMessage, dequeue_messagedequeue_messageDequeueMessagedequeue_messageDequeueMessageDequeueMessage

Module

Foundation


ClassesClassesClassesClasses | | | | Operators