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();
649 : d_handle_p(blpapi_ResolutionList_create(0))
654 : d_handle_p(blpapi_ResolutionList_create(original.d_handle_p))
660 blpapi_ResolutionList_destroy(d_handle_p);
666 return blpapi_ResolutionList_add(d_handle_p, topic, &correlationId.impl());
672 return blpapi_ResolutionList_addFromMessage(
673 d_handle_p, topicSubscribedMessage.impl(), &correlationId.impl());
681 return BLPAPI_ERROR_UNSUPPORTED_OPERATION;
686 blpapi_CorrelationId_t correlationId;
688 d_handle_p, &correlationId, index));
696 const char *topic = 0;
698 d_handle_p, &topic, &correlationId.impl()));
705 const char *topic = 0;
707 blpapi_ResolutionList_topicStringAt(d_handle_p, &topic, index));
716 d_handle_p, &result, &correlationId.impl()));
725 blpapi_ResolutionList_statusAt(d_handle_p, &result, index));
750 blpapi_Message_t *messageByCid = 0;
752 d_handle_p, &messageByCid, &correlationId.impl()));
754 bool makeMessageCopyable =
true;
755 BLPAPI_CALL_MESSAGE_ADDREF(messageByCid);
756 return Message(messageByCid, makeMessageCopyable);
761 blpapi_Message_t *messageByIndex = 0;
763 d_handle_p, &messageByIndex, index));
765 bool makeMessageCopyable =
true;
766 BLPAPI_CALL_MESSAGE_ADDREF(messageByIndex);
767 return Message(messageByIndex, makeMessageCopyable);
772 return static_cast<size_t>(blpapi_ResolutionList_size(d_handle_p));
776inline const blpapi_ResolutionList_t *ResolutionList::impl()
const
781inline blpapi_ResolutionList_t *ResolutionList::impl() {
return d_handle_p; }
795 return "RESOLUTION_FAILURE_BAD_SERVICE";
797 return "RESOLUTION_FAILURE_SERVICE_AUTHORIZATION_FAILED";
799 return "RESOLUTION_FAILURE_BAD_TOPIC";
801 return "RESOLUTION_FAILURE_TOPIC_AUTHORIZATION_FAILED";
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:322
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:739
virtual const char * topicString(const CorrelationId &correlationId) const
Definition blpapi_resolutionlist.h:693
virtual ~ResolutionList()
Definition blpapi_resolutionlist.h:658
virtual Message const message(const CorrelationId &correlationId) const
Definition blpapi_resolutionlist.h:747
virtual const char * topicStringAt(size_t index) const
Definition blpapi_resolutionlist.h:703
virtual size_t size() const
Definition blpapi_resolutionlist.h:770
static Element extractAttributeFromResolutionSuccess(Message const &message, Name const &attribute)
Definition blpapi_resolutionlist.h:639
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:730
virtual int statusAt(size_t index) const
Definition blpapi_resolutionlist.h:721
virtual CorrelationId correlationIdAt(size_t index) const
Definition blpapi_resolutionlist.h:684
int addAttribute(const Name &attribute)
Definition blpapi_resolutionlist.h:676
virtual int status(const CorrelationId &correlationId) const
Definition blpapi_resolutionlist.h:712
ResolutionList()
Definition blpapi_resolutionlist.h:648
virtual int add(const char *topic, const CorrelationId &correlationId=CorrelationId())
Definition blpapi_resolutionlist.h:663
virtual Message const messageAt(size_t index) const
Definition blpapi_resolutionlist.h:759
constexpr const char * to_string(CorrelationId::ValueType valueType)
Definition blpapi_correlationid.h:830
Definition blpapi_abstractsession.h:448
Definition blpapi_abstractsession.h:447