36#ifndef INCLUDED_BLPAPI_SERVICE
37#define INCLUDED_BLPAPI_SERVICE
74#ifndef INCLUDED_BLPAPI_DEFS
78#ifndef INCLUDED_BLPAPI_TYPES
82#ifndef INCLUDED_BLPAPI_SCHEMA
86#ifndef INCLUDED_BLPAPI_REQUEST
90#ifndef INCLUDED_BLPAPI_CORRELATIONID
94#ifndef INCLUDED_BLPAPI_STREAMPROXY
110const char *blpapi_Operation_name(blpapi_Operation_t *operation);
113const char *blpapi_Operation_description(blpapi_Operation_t *operation);
116int blpapi_Operation_requestDefinition(blpapi_Operation_t *operation,
117 blpapi_SchemaElementDefinition_t **requestDefinition);
120int blpapi_Operation_numResponseDefinitions(blpapi_Operation_t *operation);
123int blpapi_Operation_responseDefinition(blpapi_Operation_t *operation,
124 blpapi_SchemaElementDefinition_t **responseDefinition,
128int blpapi_Operation_responseDefinitionFromName(blpapi_Operation_t *operation,
129 blpapi_SchemaElementDefinition_t **responseDefinition,
130 const blpapi_Name_t *name);
133const char *blpapi_Service_name(blpapi_Service_t *service);
136const char *blpapi_Service_description(blpapi_Service_t *service);
139int blpapi_Service_numOperations(blpapi_Service_t *service);
142int blpapi_Service_numEventDefinitions(blpapi_Service_t *service);
145int blpapi_Service_addRef(blpapi_Service_t *service);
148void blpapi_Service_release(blpapi_Service_t *service);
151const char *blpapi_Service_authorizationServiceName(blpapi_Service_t *service);
154int blpapi_Service_getOperation(blpapi_Service_t *service,
155 blpapi_Operation_t **operation,
156 const char *nameString,
157 const blpapi_Name_t *name);
160int blpapi_Service_getOperationAt(blpapi_Service_t *service,
161 blpapi_Operation_t **operation,
165int blpapi_Service_getEventDefinition(blpapi_Service_t *service,
166 blpapi_SchemaElementDefinition_t **result,
167 const char *nameString,
168 const blpapi_Name_t *name);
171int blpapi_Service_getEventDefinitionAt(blpapi_Service_t *service,
172 blpapi_SchemaElementDefinition_t **result,
176int blpapi_Service_createRequest(blpapi_Service_t *service,
177 blpapi_Request_t **request,
178 const char *operation);
181int blpapi_Service_createAuthorizationRequest(blpapi_Service_t *service,
182 blpapi_Request_t **request,
183 const char *operation);
186int blpapi_Service_createPublishEvent(
187 blpapi_Service_t *service, blpapi_Event_t **event);
190int blpapi_Service_createAdminEvent(
191 blpapi_Service_t *service, blpapi_Event_t **event);
194int blpapi_Service_createResponseEvent(blpapi_Service_t *service,
195 const blpapi_CorrelationId_t *correlationId,
196 blpapi_Event_t **event);
198BLPAPI_EXPORT
int blpapi_Service_print(
const blpapi_Service_t *service,
199 blpapi_StreamWriter_t streamWriter,
210#ifndef INCLUDED_BLPAPI_EXCEPTION
238 blpapi_Operation_t *d_handle;
248 const char *
name()
const;
286 blpapi_Operation_t *
handle()
const;
322 blpapi_Service_t *d_handle;
379 const char *authorizationOperation = 0)
const;
413 const char *
name()
const;
518 blpapi_Service_t *
handle()
const;
521 std::ostream& stream,
int level = 0,
int spacesPerLevel = 4)
const;
561 : d_handle(newHandle)
573 return blpapi_Operation_name(d_handle);
582 return blpapi_Operation_description(d_handle);
587 blpapi_SchemaElementDefinition_t *definition = 0;
590 blpapi_Operation_requestDefinition(d_handle, &definition));
600 return blpapi_Operation_numResponseDefinitions(d_handle);
606 blpapi_SchemaElementDefinition_t *definition = 0;
609 blpapi_Operation_responseDefinition(d_handle, &definition, index));
616 blpapi_SchemaElementDefinition_t *definition = 0;
619 BLPAPI_CALL(blpapi_Operation_responseDefinitionFromName)(
620 d_handle, &definition,
name.impl()));
637 : d_handle(original.d_handle)
643 : d_handle(newHandle)
661 swap(tmp.d_handle, d_handle);
666inline void Service::addRef()
669 blpapi_Service_addRef(d_handle);
673inline void Service::release()
676 blpapi_Service_release(d_handle);
682 blpapi_Request_t *request = 0;
684 blpapi_Service_createRequest(d_handle, &request, operation));
689 const char *authorizationOperation)
const
691 blpapi_Request_t *request = 0;
693 d_handle, &request, authorizationOperation));
699 blpapi_Event_t *
event = 0;
701 blpapi_Service_createPublishEvent(d_handle, &event));
707 blpapi_Event_t *
event = 0;
709 blpapi_Service_createAdminEvent(d_handle, &event));
716 blpapi_Event_t *
event = 0;
718 d_handle, &correlationId.impl(), &event));
732 return blpapi_Service_name(d_handle);
741 return blpapi_Service_description(d_handle);
750 return static_cast<size_t>(blpapi_Service_numOperations(d_handle));
755 blpapi_Operation_t *operation = 0;
756 return blpapi_Service_getOperation(d_handle, &operation, operationName, 0)
762 blpapi_Operation_t *operation = 0;
763 return blpapi_Service_getOperation(
764 d_handle, &operation, 0, operationName.
impl())
770 blpapi_Operation_t *operation = 0;
772 blpapi_Service_getOperationAt(d_handle, &operation, index));
778 blpapi_Operation_t *operation = 0;
780 d_handle, &operation, operationName, 0));
786 blpapi_Operation_t *operation = 0;
788 d_handle, &operation, 0, operationName.
impl()));
798 return blpapi_Service_numEventDefinitions(d_handle);
803 blpapi_SchemaElementDefinition_t *eventDefinition = 0;
805 return blpapi_Service_getEventDefinition(
806 d_handle, &eventDefinition, definitionName, 0)
814 blpapi_SchemaElementDefinition_t *eventDefinition = 0;
816 return blpapi_Service_getEventDefinition(
817 d_handle, &eventDefinition, 0, definitionName.
impl())
825 blpapi_SchemaElementDefinition_t *eventDefinition = 0;
828 d_handle, &eventDefinition, index));
833 const char *definitionName)
const
835 blpapi_SchemaElementDefinition_t *eventDefinition = 0;
837 d_handle, &eventDefinition, definitionName, 0));
842 const Name& definitionName)
const
844 blpapi_SchemaElementDefinition_t *eventDefinition = 0;
846 d_handle, &eventDefinition, 0, definitionName.
impl()));
856 return blpapi_Service_authorizationServiceName(d_handle);
860 std::ostream& stream,
int level,
int spacesPerLevel)
const
862 blpapi_Service_print(d_handle,
872 return service.
print(stream, 0, -1);
#define BLPAPI_CALL(FUNCNAME)
Definition blpapi_call.h:361
Provide a key to identify individual subscriptions or requests.
Common definitions used by the library.
Defines Exceptions that can be thrown by the blpapi library.
Defines a request which can be sent for a service.
Provide a representation of a schema describing structured messages.
A signature for callback on print and default C++ implementation.
Definition blpapi_correlationid.h:225
static void throwOnError(int errorCode)
Definition blpapi_exception.h:541
Definition blpapi_name.h:242
blpapi_Name_t * impl() const
Definition blpapi_name.h:495
Definition blpapi_service.h:236
~Operation()
Definition blpapi_service.h:565
bool isValid() const
Definition blpapi_service.h:626
Operation(blpapi_Operation_t *handle)
Definition blpapi_service.h:560
const char * name() const
Definition blpapi_service.h:567
const char * description() const
Definition blpapi_service.h:576
SchemaElementDefinition responseDefinition(size_t index) const
Definition blpapi_service.h:603
SchemaElementDefinition requestDefinition() const
Definition blpapi_service.h:585
blpapi_Operation_t * handle() const
Definition blpapi_service.h:624
int numResponseDefinitions() const
Definition blpapi_service.h:594
Definition blpapi_request.h:163
Definition blpapi_schema.h:342
Definition blpapi_service.h:320
int numEventDefinitions() const
Definition blpapi_service.h:792
blpapi_Event_t * createPublishEvent() const
Definition blpapi_service.h:697
Service & operator=(const Service &rhs)
Definition blpapi_service.h:656
Request createRequest(const char *operation) const
Definition blpapi_service.h:680
Service()
Definition blpapi_service.h:631
blpapi_Event_t * createResponseEvent(const CorrelationId &correlationId) const
Definition blpapi_service.h:713
~Service()
Definition blpapi_service.h:654
bool hasOperation(const char *name) const
Definition blpapi_service.h:753
bool isValid() const
Definition blpapi_service.h:724
blpapi_Service_t * handle() const
Definition blpapi_service.h:722
std::ostream & print(std::ostream &stream, int level=0, int spacesPerLevel=4) const
Definition blpapi_service.h:859
Request createAuthorizationRequest(const char *authorizationOperation=0) const
Definition blpapi_service.h:688
Operation getOperation(size_t index) const
Definition blpapi_service.h:768
SchemaElementDefinition getEventDefinition(size_t index) const
Definition blpapi_service.h:823
const char * name() const
Definition blpapi_service.h:726
size_t numOperations() const
Definition blpapi_service.h:744
const char * description() const
Definition blpapi_service.h:735
bool hasEventDefinition(const char *name) const
Definition blpapi_service.h:801
const char * authorizationServiceName() const
Definition blpapi_service.h:850
blpapi_Event_t * createAdminEvent() const
Definition blpapi_service.h:705
void swap(Event::iterator &lhs, Event::iterator &rhs)
Swap the contents of the lhs and rhs iterators.
Definition blpapi_event.h:739
Definition blpapi_abstractsession.h:212
std::ostream & operator<<(std::ostream &os, const CorrelationId &correlator)
Definition blpapi_correlationid.h:680
Definition blpapi_abstractsession.h:211
Definition blpapi_service.h:329
static int writeToStream(const char *data, int length, void *stream)
Definition blpapi_streamproxy.h:109