EMA C++ Edition
List of all members | Public Types
refinitiv::ema::access::ServiceEndpointDiscoveryOption Class Reference

ServiceEndpointDiscoveryOption is used to specify query options for ServiceEndpointDiscovery::registerClient(). More...

Public Types

enum  DataformatProtocol {
  UnknownDataFormatEnum = 0 ,
  RwfEnum = 1 ,
  Json2Enum = 2
}
 
enum  TransportProtocol {
  UnknownTransportEnum = 0 ,
  TcpEnum = 1 ,
  WebsocketEnum = 2
}
 

Public Member Functions

Constructor
 ServiceEndpointDiscoveryOption ()
  More...
 
Destructor
virtual ~ServiceEndpointDiscoveryOption ()
  More...
 

Operations

class ServiceEndpointDiscoveryImpl
 
ServiceEndpointDiscoveryOptionclear ()
  More...
 
ServiceEndpointDiscoveryOptionusername (const EmaString &username)
  More...
 
ServiceEndpointDiscoveryOptionpassword (const EmaString &password)
  More...
 
ServiceEndpointDiscoveryOptionclientId (const EmaString &clientId)
  More...
 
ServiceEndpointDiscoveryOptionclientSecret (const EmaString &clientSecret)
  More...
 
ServiceEndpointDiscoveryOptionclientJWK (const EmaString &clientJWK)
  More...
 
ServiceEndpointDiscoveryOptionaudience (const EmaString &audience="https://login.ciam.refinitiv.com/as/token.oauth2")
  More...
 
ServiceEndpointDiscoveryOptiontokenScope (const EmaString &tokenScope="trapi.streaming.pricing.read")
  More...
 
ServiceEndpointDiscoveryOptiontakeExclusiveSignOnControl (bool takeExclusiveSignOnControl=true)
  More...
 
ServiceEndpointDiscoveryOptiontransprot (TransportProtocol transport)
  More...
 
ServiceEndpointDiscoveryOptiontransport (TransportProtocol transport)
  More...
 
ServiceEndpointDiscoveryOptiondataFormat (DataformatProtocol dataFormat)
  More...
 
ServiceEndpointDiscoveryOptionproxyHostName (const EmaString &proxyHostName)
  More...
 
ServiceEndpointDiscoveryOptionproxyPort (const EmaString &proxyPort)
  More...
 
ServiceEndpointDiscoveryOptionproxyUserName (const EmaString &proxyUserName)
  More...
 
ServiceEndpointDiscoveryOptionproxyPassword (const EmaString &proxyPassword)
  More...
 
ServiceEndpointDiscoveryOptionproxyDomain (const EmaString &proxyDomain)
  More...
 

Detailed Description

Remarks
All methods in this class are Lock-free Method.
See also
ServiceEndpointDiscovery

Definition at line 31 of file ServiceEndpointDiscoveryOption.h.

Member Enumeration Documentation

◆ DataformatProtocol

Enumerator
UnknownDataFormatEnum 

Indicates undefined data format protocol

RwfEnum 

Indicates RWF data format protocol

Json2Enum 

Indicates tr_json2 data format protocol

Definition at line 42 of file ServiceEndpointDiscoveryOption.h.

◆ TransportProtocol

Enumerator
UnknownTransportEnum 

Indicates undefined transport protocol

TcpEnum 

Indicates TCP transport protocol

WebsocketEnum 

Indicates Websocket transport protocol

Definition at line 35 of file ServiceEndpointDiscoveryOption.h.

Constructor & Destructor Documentation

◆ ServiceEndpointDiscoveryOption()

refinitiv::ema::access::ServiceEndpointDiscoveryOption::ServiceEndpointDiscoveryOption ( )

Create an ServiceEndpointDiscoveryOption that enables configuration of optional parameters.

◆ ~ServiceEndpointDiscoveryOption()

virtual refinitiv::ema::access::ServiceEndpointDiscoveryOption::~ServiceEndpointDiscoveryOption ( )
virtual

Destructor.

Member Function Documentation

◆ audience()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::audience ( const EmaString audience = "https://login.ciam.refinitiv.com/as/token.oauth2")

Specifies the audience claim used by OAuth client to authenticate to the Authorization Server. This is optional for OAuth V2 JWT interactions.

Parameters
[in]audiencespecifies the client audience claim
Returns
reference to this object

◆ clear()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::clear ( )

Clears the ServiceEndpointDiscoveryOption and sets all the defaults.

Returns
reference to this object

◆ clientId()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::clientId ( const EmaString clientId)

Specifies the clientID used for RDP token service. Mandatory, used to specify Application ID obtained from App Generator for V1 oAuth Password Credentials, or to specify Service Account username for V2 Client Credentials and V2 Client Credentials with JWT Logins.

Parameters
[in]clientIdspecifies the client ID
Returns
reference to this object

◆ clientJWK()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::clientJWK ( const EmaString clientJWK)

Specifies the clientJWK. This is used for login V2

Parameters
[in]clientJWKspecifies the client JWK for oAuth2 interactions.
Returns
reference to this object

◆ clientSecret()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::clientSecret ( const EmaString clientSecret)

Specifies the clientSecret, also known as the Service Account password, used to authenticate with RDP token service. Mandatory for V2 Client Credentials Logins and used in conjunction with clientID.

Parameters
[in]clientSecretspecifies a client secret.
Returns
reference to this object

◆ dataFormat()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::dataFormat ( DataformatProtocol  dataFormat)

Specifies a data format protocol to get endpoints according to the protocol.

Parameters
[in]dataFormatspecifies a data format protocol
Returns
reference to this object
Remarks
this is an optional option to limit number of endpoints

◆ password()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::password ( const EmaString password)

Specifies the password associated with the username for sending authorization request with the token service.

Parameters
[in]passwordspecifies password on login request
Returns
reference to this object

◆ proxyDomain()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::proxyDomain ( const EmaString proxyDomain)

Specifies a proxy domain of the user to perform authenticate.

Parameters
[in]proxyDomainspecifies a proxy domain
Returns
reference to this object \ Needed for NTLM or for Negotiate/Kerberos or for Kerberos authentication protocols.

◆ proxyHostName()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::proxyHostName ( const EmaString proxyHostName)

Specifies a proxy server hostname.

Parameters
[in]proxyHostNamespecifies a proxy server
Returns
reference to this object
Remarks
this is used to send the request via a proxy server

◆ proxyPassword()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::proxyPassword ( const EmaString proxyPassword)

Specifies a password to perform authorization with a proxy server.

Parameters
[in]proxyPasswordspecifies a proxy password
Returns
reference to this object
Remarks
this is used to send the request via a proxy server

◆ proxyPort()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::proxyPort ( const EmaString proxyPort)

Specifies a proxy server port.

Parameters
[in]proxyPortspecifies a proxy port
Returns
reference to this object
Remarks
this is used to send the request via a proxy server

◆ proxyUserName()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::proxyUserName ( const EmaString proxyUserName)

Specifies a username to perform authorization with a proxy server.

Parameters
[in]proxyUserNamespecifies a proxy user name
Returns
reference to this object
Remarks
this is used to send the request via a proxy server

◆ takeExclusiveSignOnControl()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::takeExclusiveSignOnControl ( bool  takeExclusiveSignOnControl = true)

Specifies optionally the exclusive sign on control to force sign-out of other applications using the same credentials.

Parameters
[in]takeExclusiveSignOnControlthe exclusive sign on control.
Returns
reference to this object

◆ tokenScope()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::tokenScope ( const EmaString tokenScope = "trapi.streaming.pricing.read")

Specifies optionally token scope to limit the scope of generated token from the token service.

Parameters
[in]tokenScopespecifies a token scope
Returns
reference to this object

◆ transport()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::transport ( TransportProtocol  transport)

Specifies a transport protocol to get endpoints according to the protocol.

Parameters
[in]transportspecifies a transport protocol
Returns
reference to this object
Remarks
this is an optional option to limit number of endpoints

◆ transprot()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::transprot ( TransportProtocol  transport)
Deprecated:
the transport() function should be used instead. Specifies a transport protocol to get endpoints according to the protocol.
Parameters
[in]transportspecifies a transport protocol
Returns
reference to this object
Remarks
this is an optional option to limit number of endpoints

◆ username()

ServiceEndpointDiscoveryOption& refinitiv::ema::access::ServiceEndpointDiscoveryOption::username ( const EmaString username)

Specifies the username for sending authorization request with the token service.

Parameters
[in]usernamespecifies name used on login request
Returns
reference to this object