EMA C++ Edition
ServiceEndpointDiscoveryOption.h
Go to the documentation of this file.
1/*|-----------------------------------------------------------------------------
2 *| This source code is provided under the Apache 2.0 license
3 *| and is provided AS IS with no warranty or guarantee of fit for purpose.
4 *| See the project's LICENSE.md for details.
5 *| Copyright (C) 2019 LSEG. All rights reserved. --
6 *|-----------------------------------------------------------------------------
7 */
8
9#ifndef __refinitiv_ema_access_ServiceEndpointDiscoveryOption_h
10#define __refinitiv_ema_access_ServiceEndpointDiscoveryOption_h
11
13
14namespace refinitiv {
15
16namespace ema {
17
18namespace access {
19
20class ServiceEndpointDiscoveryImpl;
21
32{
33public:
34
36 {
37 UnknownTransportEnum = 0,
38 TcpEnum = 1,
39 WebsocketEnum = 2,
40 };
41
43 {
44 UnknownDataFormatEnum = 0,
45 RwfEnum = 1,
46 Json2Enum = 2,
47 };
48
50
51
55
57
58
62
64
65
69
75
81
87
93
99
104 ServiceEndpointDiscoveryOption& audience(const EmaString& audience = "https://login.ciam.refinitiv.com/as/token.oauth2");
105
110 ServiceEndpointDiscoveryOption & tokenScope(const EmaString& tokenScope = "trapi.streaming.pricing.read");
111
116 ServiceEndpointDiscoveryOption& takeExclusiveSignOnControl( bool takeExclusiveSignOnControl = true );
117
125
132
139
146
153
160
167
175
176private:
177
178 friend class ServiceEndpointDiscoveryImpl;
179
180 TransportProtocol _transport;
181 DataformatProtocol _dataFormat;
182 EmaString _username;
183 EmaString _password;
184 EmaString _clientId;
185 EmaString _clientSecret;
186 EmaString _clientJWK;
187 EmaString _audience;
188 EmaString _tokenScope;
189 bool _takeExclusiveSignOnControl;
190 EmaString _proxyHostName;
191 EmaString _proxyPort;
192 EmaString _proxyUserName;
193 EmaString _proxyPassword;
194 EmaString _proxyDomain;
195};
196
197}
198
199}
200
201}
202
203#endif // __refinitiv_ema_access_ServiceEndpointDiscoveryOption_h
#define EMA_ACCESS_API
Definition: Common.h:95
*|--------------------------------------------------------------------------—
Definition: AckMsg.h:62
The access namespace contains all interfaces and definitions specified for use with the EMA Access pa...
The ema namespace contains all interfaces and definitions specified for use with EMA.
EmaString class is a container of a null terminated Ascii character string.
Definition: EmaString.h:57
ServiceEndpointDiscoveryOption is used to specify query options for ServiceEndpointDiscovery::registe...
ServiceEndpointDiscoveryOption & clientJWK(const EmaString &clientJWK)
ServiceEndpointDiscoveryOption & audience(const EmaString &audience="https://login.ciam.refinitiv.com/as/token.oauth2")
ServiceEndpointDiscoveryOption & password(const EmaString &password)
ServiceEndpointDiscoveryOption & clientId(const EmaString &clientId)
ServiceEndpointDiscoveryOption & tokenScope(const EmaString &tokenScope="trapi.streaming.pricing.read")
ServiceEndpointDiscoveryOption & takeExclusiveSignOnControl(bool takeExclusiveSignOnControl=true)
ServiceEndpointDiscoveryOption & proxyUserName(const EmaString &proxyUserName)
ServiceEndpointDiscoveryOption & transport(TransportProtocol transport)
ServiceEndpointDiscoveryOption & username(const EmaString &username)
ServiceEndpointDiscoveryOption & dataFormat(DataformatProtocol dataFormat)
ServiceEndpointDiscoveryOption & proxyPort(const EmaString &proxyPort)
ServiceEndpointDiscoveryOption & proxyPassword(const EmaString &proxyPassword)
ServiceEndpointDiscoveryOption & clientSecret(const EmaString &clientSecret)
ServiceEndpointDiscoveryOption & transprot(TransportProtocol transport)
ServiceEndpointDiscoveryOption & proxyDomain(const EmaString &proxyDomain)
ServiceEndpointDiscoveryOption & proxyHostName(const EmaString &proxyHostName)