EMA C++ Configuration Guide : 4 Enterprise Message API Configuration Processing : 4.4 Configuring the Enterprise Message API Using Function Calls : 4.4.1 Configuration Function Calls : 4.4.1.3 OMMNIProviderConfig Class Function Calls
 
4.4.1.3 OMMNIProviderConfig Class Function Calls
You can use the following function calls in an Enterprise Message API NiProvider application. For further details on variables, refer to the Enterprise Message API C++ Edition RDM Usage Guide.
 
Table 34: OmmNiProviderConfig Class Function Calls
Function
description
addAdminMsg( const RefreshMsg& )
Optional. Specifies an administrative refresh message to override the default administrative refresh. Supports Directory domain only.
addAdminMsg( RequestMsg)
Used only with NiProvider.
Optional. Populates part of or all of the login request message according to the specification discussed in the Enterprise Message API C++ Edition RDM Usage Guide. Supports Login domain only.
adminControlDirectory( AdminControl
)
Optional. Specifies whether the API or the user controls the sending of Directory refresh messages. Available values include:
OmmNiProviderConfig::ApiControlEnum (which is the default)
OmmNiProviderConfig::UserControlEnum
For details on control models, refer to OmmNiProviderConfig.h.
apiThreadBind( const EmaString& )
Optional. Specifies the CPU core to bind for internal EMA thread that dispatch messages. Application may call multiple times prior to initialization. Specify the CPU core in string format (CPU core ID or “P:X C:Y T:Z” format). Works in conjunction with shouldInitializeCPUIDlib.
applicationId( const EmaString& )
Optional. Specifies the authorization application identifier set in login request attribute. Must be unique for each application. No default value.
Range 257 to 65535 is available for site-specific use.
Range 1 to 256 is reserved.
clear()
Clears existing content from the OmmProviderConfig object.
channelType(ConnectionTypes)
Optional. Specifies the channel type used by the current provider. Use EmaConfig::ConnectionTypeEnum to set allowed connection type.
config( const Data& )
Passes in the NiProvider’s programmatic configuration.
encryptedProtocolType(EncryptedProtocol
Types)
Optional. Specifies the encrypted protocol type used by the current provider. Use EmaConfig::EncryptedProtocolTypeEnum to set allowed encrypted protocol type.
getProviderRole()
Retrieves NiProvider's role.
host( const EmaString& )
Optional. Specifies a hostname and port. By default, it is set to localhost:14003.
instanceId( const EmaString& )
Optional. Specifies the instance identifier. Can be any ASCII string, e.g. "Instance1".
libcurlName(const EmaString& )
Optional. Specifies the name of the libcurl library for connecting through HTTP proxies. This is supported on Socket connections and Encrypted connections with Socket encrypted protocol.
operationModel( OperationModel
)
Optional. Specifies the operation model. Default is API Dipatch: ApiDispatchEnum.
password( const EmaString& )
Specifies password. Overrides a value specified in Login domain via the
addAdminMsg( const ReqMsg& ) method.
position( const EmaString& )
Specifies position in login request attribute.
providerName( const EmaString& )
This name identifies configuration section to be used by OmmNiProvider instance.
proxyDomain(const EmaString& )
Optional. Specifies the domain of the user to authenticate.
Needed for NTLM or for Negotiate/Kerberos or for Kerberos authentication protocols.
For Negotiate/Kerberos or for Kerberos authentication protocols, proxyDomain should be the same as the domain in the 'realms' and 'domain_realm' sections of the Kerberos configuration file.
proxyPasswd( const EmaString& )
Optional. Specifies the password to authenticate. Needed for all authentication protocols.
proxyUserName( const EmaString& )
Optional. Specifies the user name to authenticate. Needed for all authentication protocols.
shouldInitializeCPUIDlib( bool )
Optional. Must be set to True for thread binding to occur. Lets Enterprise Transport API initialize CpuID library for thread binding to take effect.
sslCAStore(const EmaString& )
Optional. Specifies the path to an OpenSSL Certificate Authority store.
tunnelingLibCryptoName(const EmaString& )
Optional. Specifies the name of the libcrypto library for Encrypted connections. See the Enterprise Message API C++ Edition Developers Guide for more details on default library name specific to each OpenSSL version and platform.
tunnelingLibSslName(const EmaString& )
Optional. Specifies the name of the libssl library for Encrypted connections. See the Enterprise Message API C++ Edition Developers Guide for more details on default library name specific to each OpenSSL version and platform.
tunnelingObjectName(const EmaString& )
Specifies the object name to pass along with the underlying URL in HTTP and HTTPS connection messages.
tunnelingProxyHostName(const EmaString& )
Optional. Specifies the address or host name of the proxy server to connect to for an HTTP or HTTPS connection.
tunnelingProxyPort( const EmaString& )
Optional. Specifies the port number of the proxy server to connect to for an HTTP or HTTPS connection.
tunnelingSecurityProtocol(int)
Optional. Specifies the cryptographic protocols to be used for an Encrypted connection. The highest TLS version supported by API will be selected by the Rssl API first, then it will roll back if the encryption handshake fails. The protocol supports TLS v1.2 and TLS v.1.3.
Use OmmNiProviderConfig::EncryptedProtocolTypes flags to set allowed protocols.
username( const EmaString& )
Specifies the name used in the login request. Overrides a value specified in the Login domain via the addAdminMsg( const ReqMsg& ) method.
workerThreadBind( const EmaString& )
Optional. Specifies the CPU core to bind for Reactor Worker thread. Application may call multiple times prior to initialization. Specify the CPU core in string format (CPU core ID or “P:X C:Y T:Z” format). Works in conjunction with shouldInitializeCPUIDlib.