38#ifndef INCLUDED_BLPAPI_RESOLUTIONLIST
39#define INCLUDED_BLPAPI_RESOLUTIONLIST
70#ifndef INCLUDED_BLPAPI_TYPES
74#ifndef INCLUDED_BLPAPI_CORRELATIONID
78#ifndef INCLUDED_BLPAPI_DEFS
82#ifndef INCLUDED_BLPAPI_ELEMENT
86#ifndef INCLUDED_BLPAPI_NAME
90#ifndef INCLUDED_BLPAPI_MESSAGE
96struct blpapi_ResolutionList;
102typedef struct blpapi_ResolutionList blpapi_ResolutionList_t;
121blpapi_Element_t *blpapi_ResolutionList_extractAttributeFromResolutionSuccess(
122 const blpapi_Message_t *message,
const blpapi_Name_t *attribute);
135blpapi_ResolutionList_t *blpapi_ResolutionList_create(
136 blpapi_ResolutionList_t *from);
146void blpapi_ResolutionList_destroy(blpapi_ResolutionList_t *list);
163int blpapi_ResolutionList_add(blpapi_ResolutionList_t *list,
165 const blpapi_CorrelationId_t *correlationId);
182int blpapi_ResolutionList_addFromMessage(blpapi_ResolutionList_t *list,
183 const blpapi_Message_t *topic,
184 const blpapi_CorrelationId_t *correlationId);
199int blpapi_ResolutionList_addAttribute(
200 blpapi_ResolutionList_t *list,
const blpapi_Name_t *name);
215int blpapi_ResolutionList_correlationIdAt(
const blpapi_ResolutionList_t *list,
216 blpapi_CorrelationId_t *result,
233int blpapi_ResolutionList_topicString(
const blpapi_ResolutionList_t *list,
235 const blpapi_CorrelationId_t *
id);
251int blpapi_ResolutionList_topicStringAt(
252 const blpapi_ResolutionList_t *list,
const char **topic,
size_t index);
270int blpapi_ResolutionList_status(
const blpapi_ResolutionList_t *list,
272 const blpapi_CorrelationId_t *
id);
289int blpapi_ResolutionList_statusAt(
290 const blpapi_ResolutionList_t *list,
int *status,
size_t index);
311int blpapi_ResolutionList_attribute(
const blpapi_ResolutionList_t *list,
312 blpapi_Element_t **element,
313 const blpapi_Name_t *attribute,
314 const blpapi_CorrelationId_t *
id);
335int blpapi_ResolutionList_attributeAt(
const blpapi_ResolutionList_t *list,
336 blpapi_Element_t **element,
337 const blpapi_Name_t *attribute,
355int blpapi_ResolutionList_message(
const blpapi_ResolutionList_t *list,
356 blpapi_Message_t **element,
357 const blpapi_CorrelationId_t *
id);
374int blpapi_ResolutionList_messageAt(
const blpapi_ResolutionList_t *list,
375 blpapi_Message_t **element,
386int blpapi_ResolutionList_size(
const blpapi_ResolutionList_t *list);
394#ifndef INCLUDED_BLPAPI_EXCEPTION
420 blpapi_ResolutionList_t *d_handle_p;
429 = BLPAPI_RESOLUTIONLIST_RESOLUTION_FAILURE_BAD_SERVICE,
435 = BLPAPI_RESOLUTIONLIST_RESOLUTION_FAILURE_SERVICE_AUTHORIZATION_FAILED,
440 = BLPAPI_RESOLUTIONLIST_RESOLUTION_FAILURE_BAD_TOPIC,
446 = BLPAPI_RESOLUTIONLIST_RESOLUTION_FAILURE_TOPIC_AUTHORIZATION_FAILED
482 virtual int add(
const char *topic,
491 virtual int add(
Message const& topicSubscribedMessage,
544 virtual int statusAt(
size_t index)
const;
601 virtual size_t size()
const;
607 const blpapi_ResolutionList_t *impl()
const;
609 blpapi_ResolutionList_t *impl();
634 : d_handle_p(blpapi_ResolutionList_create(0))
639 : d_handle_p(blpapi_ResolutionList_create(original.d_handle_p))
645 blpapi_ResolutionList_destroy(d_handle_p);
651 return blpapi_ResolutionList_add(d_handle_p, topic, &correlationId.impl());
657 return blpapi_ResolutionList_addFromMessage(
658 d_handle_p, topicSubscribedMessage.impl(), &correlationId.impl());
666 return BLPAPI_ERROR_UNSUPPORTED_OPERATION;
671 blpapi_CorrelationId_t correlationId;
673 d_handle_p, &correlationId, index));
681 const char *topic = 0;
683 d_handle_p, &topic, &correlationId.impl()));
690 const char *topic = 0;
692 blpapi_ResolutionList_topicStringAt(d_handle_p, &topic, index));
701 d_handle_p, &result, &correlationId.impl()));
710 blpapi_ResolutionList_statusAt(d_handle_p, &result, index));
735 blpapi_Message_t *messageByCid = 0;
737 d_handle_p, &messageByCid, &correlationId.impl()));
739 bool makeMessageCopyable =
true;
740 BLPAPI_CALL_MESSAGE_ADDREF(messageByCid);
741 return Message(messageByCid, makeMessageCopyable);
746 blpapi_Message_t *messageByIndex = 0;
748 d_handle_p, &messageByIndex, index));
750 bool makeMessageCopyable =
true;
751 BLPAPI_CALL_MESSAGE_ADDREF(messageByIndex);
752 return Message(messageByIndex, makeMessageCopyable);
757 return static_cast<size_t>(blpapi_ResolutionList_size(d_handle_p));
761inline const blpapi_ResolutionList_t *ResolutionList::impl()
const
766inline blpapi_ResolutionList_t *ResolutionList::impl() {
return d_handle_p; }
Provide a key to identify individual subscriptions or requests.
Common definitions used by the library.
Provide a representation of an item in a message.
Defines Exceptions that can be thrown by the blpapi library.
Defines a message containing elements.
Provide a representation of strings for use as container keys.
Definition blpapi_correlationid.h:306
Definition blpapi_element.h:1098
static void throwOnError(int errorCode)
Definition blpapi_exception.h:556
Definition blpapi_message.h:344
Definition blpapi_name.h:228
Definition blpapi_resolutionlist.h:418
Element attributeAt(const Name &attribute, size_t index) const
Definition blpapi_resolutionlist.h:724
virtual const char * topicString(const CorrelationId &correlationId) const
Definition blpapi_resolutionlist.h:678
virtual ~ResolutionList()
Definition blpapi_resolutionlist.h:643
virtual Message const message(const CorrelationId &correlationId) const
Definition blpapi_resolutionlist.h:732
virtual const char * topicStringAt(size_t index) const
Definition blpapi_resolutionlist.h:688
virtual size_t size() const
Definition blpapi_resolutionlist.h:755
static Element extractAttributeFromResolutionSuccess(Message const &message, Name const &attribute)
Definition blpapi_resolutionlist.h:624
Status
Definition blpapi_resolutionlist.h:423
@ RESOLUTION_FAILURE_SERVICE_AUTHORIZATION_FAILED
Definition blpapi_resolutionlist.h:434
@ RESOLUTION_FAILURE_BAD_SERVICE
Definition blpapi_resolutionlist.h:428
@ RESOLUTION_FAILURE_TOPIC_AUTHORIZATION_FAILED
Currently unused.
Definition blpapi_resolutionlist.h:445
@ RESOLUTION_FAILURE_BAD_TOPIC
Definition blpapi_resolutionlist.h:439
@ UNRESOLVED
Not yet resolved.
Definition blpapi_resolutionlist.h:424
@ RESOLVED
Resolved successfully.
Definition blpapi_resolutionlist.h:426
Element attribute(const Name &attribute, const CorrelationId &correlationId) const
Definition blpapi_resolutionlist.h:715
virtual int statusAt(size_t index) const
Definition blpapi_resolutionlist.h:706
virtual CorrelationId correlationIdAt(size_t index) const
Definition blpapi_resolutionlist.h:669
int addAttribute(const Name &attribute)
Definition blpapi_resolutionlist.h:661
virtual int status(const CorrelationId &correlationId) const
Definition blpapi_resolutionlist.h:697
ResolutionList()
Definition blpapi_resolutionlist.h:633
virtual int add(const char *topic, const CorrelationId &correlationId=CorrelationId())
Definition blpapi_resolutionlist.h:648
virtual Message const messageAt(size_t index) const
Definition blpapi_resolutionlist.h:744
Definition blpapi_abstractsession.h:452
Definition blpapi_abstractsession.h:451