EMA C++ Edition
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
List of all members | Public Types
thomsonreuters::ema::access::ChannelInformation Class Reference

ChannelInfo provides information on application channel(s). More...

Public Types

enum  ChannelState {
  ClosedEnum = -1,
  InactiveEnum = 0,
  InitializingEnum = 1,
  ActiveEnum = 2
}
 
enum  CompressionType {
  NoneEnum = 0x00,
  ZLIBEnum = 0x01,
  LZ4Enum = 0x02
}
 
enum  ConnectionType {
  Unidentified = -1,
  SocketEnum = 0,
  EncryptedEnum = 1,
  HttpEnum = 2,
  Unidir_ShmemEnum = 3,
  Reliable_McastEnum = 4,
  Ext_Line_SocketEnum = 5,
  Seq_McastEnum = 6,
  WebSocketEnum = 7
}
 
enum  ProtocolType {
  UnknownEnum = -1,
  RwfEnum = 0,
  RsslJsonEnum = 2
}
 

Public Member Functions

Constructor
 ChannelInformation ()
 
 ChannelInformation (const EmaString &connectedComponentInfo, const EmaString &hostname, const EmaString &ipAddress, const ChannelState channelState, const ConnectionType connectionType, const ProtocolType protocolType, const UInt32 majorVersion, const UInt32 minorVersion, const UInt32 pingTimeout)
 
Destructor
virtual ~ChannelInformation ()
 
Accessors
void clear ()
 
const EmaStringgetConnectedComponentInfo () const
 
const EmaStringgetHostname () const
 
const UInt16 port () const
 
const EmaStringgetIPaddress () const
 
ChannelState getChannelState () const
 
ConnectionType getConnectionType () const
 
ProtocolType getProtocolType () const
 
UInt32 getMajorVersion () const
 
UInt32 getMinorVersion () const
 
UInt32 getPingTimeout () const
 
UInt32 getMaxFragmentSize () const
 
UInt32 getMaxOutputBuffers () const
 
UInt32 getGuaranteedOutputBuffers () const
 
UInt32 getNumInputBuffers () const
 
UInt32 getSysSendBufSize () const
 
UInt32 getSysRecvBufSize () const
 
CompressionType getCompressionType () const
 
UInt32 getCompressionThreshold () const
 
UInt64 getEncryptionProtocol () const
 
const EmaStringtoString () const
 
 operator const char * () const
 
Operations
ChannelInformationhostname (const EmaString &hostname)
 
ChannelInformationport (const UInt16 port)
 
ChannelInformationipAddress (const EmaString &ipAddress)
 
ChannelInformationconnectedComponentInfo (const EmaString &connectedComponentInfo)
 
ChannelInformationchannelState (ChannelState channelState)
 
ChannelInformationconnectionType (ConnectionType connectionType)
 
ChannelInformationprotocolType (ProtocolType protocolType)
 
ChannelInformationmajorVersion (UInt32 majorVersion)
 
ChannelInformationminorVersion (UInt32 minorVersion)
 
ChannelInformationpingTimeout (UInt32 pingTimeout)
 
ChannelInformationmaxFragmentSize (UInt32 maxFragmentSize)
 
ChannelInformationmaxOutputBuffers (UInt32 maxOutputBuffers)
 
ChannelInformationguaranteedOutputBuffers (UInt32 guaranteedOutputBuffers)
 
ChannelInformationnumInputBuffers (UInt32 numInputBuffers)
 
ChannelInformationsysSendBufSize (UInt32 sysSendBufSize)
 
ChannelInformationsysRecvBufSize (UInt32 sysRecvBufSize)
 
ChannelInformationcompressionType (UInt32 compressionType)
 
ChannelInformationcompressionThreshold (UInt32 compressionThreshold)
 
ChannelInformationencryptionProtocol (UInt64 encryptionProtocol)
 

Detailed Description

For IProvider applications, this channel information is about channels used by clients to connect to the IProvider application.

For Consumer and NiProvider applications, this channel information is about the outbound channel (e.g., the channel used by a Consumer application to connect to an ADS) used to connect for receiving data (Consumer) or sending data (NiProvider).

Examples of ChannelInformation usage are found in the examples: (Consumer) Consumer/100_Series/170__MarketPrice__ChannelInfo (IProvider) IProvider/100_Series/170__MarketPrice__ConnectedClientInfo (NiProvider) NiProvider/100_Series/170__MarketPrice__ChannelInfo

Definition at line 39 of file ChannelInformation.h.

Member Enumeration Documentation

An enumeration representing channel states.

Enumerator
ClosedEnum 

(-1) Channel has been CLOSED.

InactiveEnum 

(0) Channel is in the INACTIVE state.

InitializingEnum 

(1) Channel is in the INITIALIZING state.

ActiveEnum 

(2) Channel is in the ACTIVE state.

Definition at line 46 of file ChannelInformation.h.

An enumeration representing compression types.

Enumerator
NoneEnum 

(0) No compression will be negotiated.

ZLIBEnum 

(1) Will attempt to use Zlib compression.

LZ4Enum 

(2) Will attempt to use LZ4 compression

Definition at line 89 of file ChannelInformation.h.

An enumeration representing connection types.

Enumerator
Unidentified 

(-1) Unidentified

SocketEnum 

(0) Channel is a standard TCP socket connection type

EncryptedEnum 

(1) Channel is encrypted

HttpEnum 

(2) Channel is an HTTP connection based tunneling type

Unidir_ShmemEnum 

(3) Channel is using a shared memory connection

Reliable_McastEnum 

(4) Channel is a reliable multicast based connection. This can be on a unified/mesh network where send and receive networks are the same or a segmented network where send and receive networks are different

Ext_Line_SocketEnum 

(5) Channel is using an extended line socket transport

Seq_McastEnum 

(6) Channel is an unreliable, sequenced multicast connection for reading from a Refinitiv Real-Time Direct Feed system. This is a client-only, read-only transport. This transport is supported on Linux only.

WebSocketEnum 

(7) Channel is a WebSocket connection based tunneling type

Definition at line 57 of file ChannelInformation.h.

An enumeration representing protocol types.

Enumerator
UnknownEnum 

(-1) Unknown wireformat protocol

RwfEnum 

(0) Refinitiv wireformat protocol

RsslJsonEnum 

(2) Rssl JSON protocol

Definition at line 79 of file ChannelInformation.h.

Constructor & Destructor Documentation

thomsonreuters::ema::access::ChannelInformation::ChannelInformation ( )

Constructs ChannelInformation.

thomsonreuters::ema::access::ChannelInformation::ChannelInformation ( const EmaString connectedComponentInfo,
const EmaString hostname,
const EmaString ipAddress,
const ChannelState  channelState,
const ConnectionType  connectionType,
const ProtocolType  protocolType,
const UInt32  majorVersion,
const UInt32  minorVersion,
const UInt32  pingTimeout 
)

Constructs ChannelInformation.

Parameters
[in]connectedComponentInfo
[in]hostname
[in]ipAddress
[in]channelState
[in]connectionType
[in]protocolType
[in]majorVersion
[in]minorVersion
[in]pingTimeout
virtual thomsonreuters::ema::access::ChannelInformation::~ChannelInformation ( )
virtual

Destructor.

Member Function Documentation

ChannelInformation& thomsonreuters::ema::access::ChannelInformation::channelState ( ChannelState  channelState)

Specifies channel state

Parameters
[in]channelStatespecifies channel state as a ChannelState enum
Returns
reference to this object
void thomsonreuters::ema::access::ChannelInformation::clear ( )

Clears the ChannelInformation

Remarks
invoking clear() resets all member variables to their default values
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::compressionThreshold ( UInt32  compressionThreshold)

Specifies the compression threshold

Parameters
[in]compressionThresholdspecifies compression threshold
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::compressionType ( UInt32  compressionType)

Specifies the compression type

Parameters
[in]compressionTypespecifies compression type
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::connectedComponentInfo ( const EmaString connectedComponentInfo)

Specifies connected component info

Parameters
[in]connectedComponentInfospecifies connected component info as a string
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::connectionType ( ConnectionType  connectionType)

Specifies connection type

Parameters
[in]connectionTypespecifies connection type as a ConnectionType enum
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::encryptionProtocol ( UInt64  encryptionProtocol)

Specifies the encryption protocol

Parameters
[in]encryptionProtocolspecifies the encryption protocol
Returns
reference to this object
ChannelState thomsonreuters::ema::access::ChannelInformation::getChannelState ( ) const
inline

Gets the channel state as a ChannelState enum

Returns
ChannelState enum representation of this object's channel state

Definition at line 165 of file ChannelInformation.h.

UInt32 thomsonreuters::ema::access::ChannelInformation::getCompressionThreshold ( ) const
inline

Gets the compression threshold

Returns
The compression threshold for compressing any message lager than this when compression is enabled.

Definition at line 230 of file ChannelInformation.h.

CompressionType thomsonreuters::ema::access::ChannelInformation::getCompressionType ( ) const
inline

Gets the compression type

Returns
The type of compression being used, if it is enabled.

Definition at line 225 of file ChannelInformation.h.

const EmaString& thomsonreuters::ema::access::ChannelInformation::getConnectedComponentInfo ( ) const
inline

Gets the connected component info as a string

Returns
string representation of this object's connected component info

Definition at line 141 of file ChannelInformation.h.

ConnectionType thomsonreuters::ema::access::ChannelInformation::getConnectionType ( ) const
inline

Gets the connection type as a ConnectionType enum

Returns
ConnectionType enum representation of this object's connection type

Definition at line 170 of file ChannelInformation.h.

UInt64 thomsonreuters::ema::access::ChannelInformation::getEncryptionProtocol ( ) const
inline

Gets the encryption protocol

Returns
The current encryption protocol being used.

Definition at line 235 of file ChannelInformation.h.

UInt32 thomsonreuters::ema::access::ChannelInformation::getGuaranteedOutputBuffers ( ) const
inline

Gets the guaranteed number of output buffers

Returns
The guaranteed number of output buffers available to the channel.

Definition at line 205 of file ChannelInformation.h.

const EmaString& thomsonreuters::ema::access::ChannelInformation::getHostname ( ) const
inline

Gets the hostname as a string

Returns
string representation of this object's hostname
Remarks
see discussion of this class at the top of this file for more information

Definition at line 147 of file ChannelInformation.h.

const EmaString& thomsonreuters::ema::access::ChannelInformation::getIPaddress ( ) const
inline

Gets the IP address of the connected client

Returns
string representation of this object's IP address
Remarks
see discussion of this class at the top of this file for more information.
this is set only for IProvider applications

Definition at line 160 of file ChannelInformation.h.

UInt32 thomsonreuters::ema::access::ChannelInformation::getMajorVersion ( ) const
inline

Gets the major version

Returns
UInt32 representation of this object's major version

Definition at line 180 of file ChannelInformation.h.

UInt32 thomsonreuters::ema::access::ChannelInformation::getMaxFragmentSize ( ) const
inline

Gets the max fragment size

Returns
The max fragment size before fragmentation and reassembly is necessary.

Definition at line 195 of file ChannelInformation.h.

UInt32 thomsonreuters::ema::access::ChannelInformation::getMaxOutputBuffers ( ) const
inline

Gets the maximum number of output buffers

Returns
The maximum number of output buffers available to the channel.

Definition at line 200 of file ChannelInformation.h.

UInt32 thomsonreuters::ema::access::ChannelInformation::getMinorVersion ( ) const
inline

Gets the minor version

Returns
UInt32 representation of this object's minor version

Definition at line 185 of file ChannelInformation.h.

UInt32 thomsonreuters::ema::access::ChannelInformation::getNumInputBuffers ( ) const
inline

Gets the number of input buffers

Returns
The number of input buffers available to the channel.

Definition at line 210 of file ChannelInformation.h.

UInt32 thomsonreuters::ema::access::ChannelInformation::getPingTimeout ( ) const
inline

Gets the ping timeout

Returns
UInt32 representation of this object's ping timeout

Definition at line 190 of file ChannelInformation.h.

ProtocolType thomsonreuters::ema::access::ChannelInformation::getProtocolType ( ) const
inline

Gets the protocol type as a ProtocolType enum

Returns
ProtocolType enum representation of this object's protocol type

Definition at line 175 of file ChannelInformation.h.

UInt32 thomsonreuters::ema::access::ChannelInformation::getSysRecvBufSize ( ) const
inline

Gets the systems receive Buffer size

Returns
The systems receive buffer size respective to the transport type being used.

Definition at line 220 of file ChannelInformation.h.

UInt32 thomsonreuters::ema::access::ChannelInformation::getSysSendBufSize ( ) const
inline

Gets the systems send Buffer size

Returns
The systems send buffer size respective to the transport type being used.

Definition at line 215 of file ChannelInformation.h.

ChannelInformation& thomsonreuters::ema::access::ChannelInformation::guaranteedOutputBuffers ( UInt32  guaranteedOutputBuffers)

Specifies the guaranteed number of output buffers

Parameters
[in]guaranteedOutputBuffersspecifies guaranteed number of output buffers
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::hostname ( const EmaString hostname)

Specifies hostname

Parameters
[in]hostnamespecifies hostname as a string
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::ipAddress ( const EmaString ipAddress)

Specifies the IP address of the connected client

Parameters
[in]ipAddressspecifies IP address as a string
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::majorVersion ( UInt32  majorVersion)

Specifies major version

Parameters
[in]majorVersionspecifies majorVersion
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::maxFragmentSize ( UInt32  maxFragmentSize)

Specifies the max fragment size

Parameters
[in]maxFragmentSizespecifies max fragment size
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::maxOutputBuffers ( UInt32  maxOutputBuffers)

Specifies the maximum number of output buffers

Parameters
[in]maxOutputBuffersspecifies maximum number of output buffers
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::minorVersion ( UInt32  minorVersion)

Specifies minor version

Parameters
[in]minorVersionspecifies minorVersion
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::numInputBuffers ( UInt32  numInputBuffers)

Specifies the number of input buffers

Parameters
[in]guaranteedOutputBuffersspecifies number of input buffers
Returns
reference to this object
thomsonreuters::ema::access::ChannelInformation::operator const char * ( ) const

Operator const char* overload

Remarks
invokes toString.c_str()
Returns
a NULL terminated character string representation of this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::pingTimeout ( UInt32  pingTimeout)

Specifies ping timeout

Parameters
[in]pingTimeoutspecifies ping timeout
Returns
reference to this object
const UInt16 thomsonreuters::ema::access::ChannelInformation::port ( ) const
inline

Gets the port number that was used to connect to the server ADS/ADH (Consumer, NiProvider). Valid for SOCKET connection type

Returns
port number

Definition at line 153 of file ChannelInformation.h.

ChannelInformation& thomsonreuters::ema::access::ChannelInformation::port ( const UInt16  port)

Specifies port number that was used to connect to the server (Consumer, NiProvider)

Parameters
[in]portspecifies port number
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::protocolType ( ProtocolType  protocolType)

Specifies protocol type

Parameters
[in]protocolTypespecifies protocol type as a ProtocolType enum
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::sysRecvBufSize ( UInt32  sysRecvBufSize)

Specifies the systems Receive Buffer size

Parameters
[in]sysRecvBufSizespecifies systems receive Buffer size
Returns
reference to this object
ChannelInformation& thomsonreuters::ema::access::ChannelInformation::sysSendBufSize ( UInt32  sysSendBufSize)

Specifies the systems Send Buffer size

Parameters
[in]sysSendBufSizespecifies systems send Buffer size
Returns
reference to this object
const EmaString& thomsonreuters::ema::access::ChannelInformation::toString ( ) const

Gets a string representation of the class instance.

Returns
string representation of the class instance.