- com
- pcbsys
- nirvana
- client
- nConstants
This class is a container for the various constants that affect the behaviour of various Nirvana Client API calls. More...
#include <nConstants.h>
Static Public Member Functions | |
static bool | attemptReconnectAfterAccessChange () |
Returns whether a nirvana nSession will attempt to reconnect to the realm after the realm ACL has been revoked. More... | |
static bool | attemptReconnectImmediately () |
Returns whether a nirvana nSession will attempt to immediately reconnect or whether reconnection attempts will back off over time to prevent a network storm where multiple re-connections can occur all at once. More... | |
static int | compareNoCase (const std::string &string1, const std::string &string2) |
Compare 2 strings for equality. More... | |
static longlong | currentTimeMillis () |
Return an Epoch Date in milliseconds representing the current system date / time. More... | |
static void | decode (unsigned char *pBuffer, int size, std::string &str) |
Decode the array into a string. More... | |
static unsigned char * | encode (const std::string &str, unsigned int &size) |
Encode the string into an array. More... | |
static int | getAccessWaitLimit () |
Returns the outbound publish queue access wait time. More... | |
static std::string | GetAlgorithm () |
Returns the configured algoritmgs to use for SSL. | |
static int | getBlockLimit () |
Returns the outbound publish queue block wait time. More... | |
static std::string | GetCAPath () |
Return the CA path. | |
static std::string | GetCertificatePassword () |
Return the certificate password for the SSL client certificate used for authentication. | |
static std::string | GetCertificatePath () |
Return the certificate path used for SSL client authentication. | |
static std::string | getClientBuildNumber () |
Get the client build number information. More... | |
static int | getConnectionBlockWeighting () |
Returns the outbound publish queue block weighting. More... | |
static int | getConnectionQueueHighWater () |
Returns the outbound publish queue high watermark. More... | |
static int | getConnectionQueueLowWater () |
Returns the outbound publish queue low watermark. More... | |
static int | getDataGroupQueueSize () |
static bool | getEnabledPriorityQueues () |
Get whether priority queueing is enabled for this client. More... | |
static long | getEVENTWAIT () |
This is the maximum time the client API will wait for a response to a specific request from the Nirvana realm. More... | |
static int | getInitialConnectionTimeout () |
This returns the current value for the Initial socket connect timeout. More... | |
static long | getKeepAliveInterval () |
Gets the value in ms to wait before sending a Keep Alive. More... | |
static int | getPushWaitLimit () |
Returns the outbound publish queue push wait time. More... | |
static long | getReconnectInterval () |
Returns the interval value to use between reconnect attempts when the session is set to reconnect immediately. More... | |
static bool | GetRelaxedSSLVerification () |
If set to true then there will be no SSL certificate validation, this is not recommended for production and should only be used during debug. | |
static int | getSocketReceiveBufferSize () |
Get the inbound socket buffer size. More... | |
static int | getSocketSendBufferSize () |
Get the outbound socket buffer size. More... | |
static int | getSubHighWater () |
Retrieves the subscriber queue high watermark. More... | |
static int | getSubLowWater () |
Retrieves the subscriber queue low watermark. More... | |
static int | getWriteHandlerType () |
Returns the current write handling mode that the client is using. More... | |
static bool | honourThirdPartyCookies () |
Returns true if the client will maintain third party cookies. | |
static time_t | milliToDateTime (longlong millis) |
Converts milliseconds (time since EPOCH) into a time object;. More... | |
static longlong | nanoTime () |
Return current time in nanoseconds. More... | |
static void | setAccessWaitLimit (int p_accessWait) |
Sets the outbound publish queue access wait time. More... | |
static void | SetAlgorithm (std::string algorithm) |
Returns the configured algoritmgs to use for SSL. | |
static void | setBlockLimit (int p_blockWait) |
Sets the outbound publish queue block wait time. More... | |
static void | SetCAPath (const std::string &CAPath) |
Sets the path to the CA. | |
static void | SetCertificatePassword (const std::string &certificatePassword) |
Sets the password for the pem certificate used for SSL client authentication. | |
static void | SetCertificatePath (const std::string &certificatePath) |
Sets the path to the pem certificate used for SSL client authentication. | |
static void | setClientLogFile (FILE *file) |
Specify a file for the client log messages. More... | |
static void | setClientLogLevel (int level) |
Sets the log level for the client. More... | |
static void | setConnectionBlockWeighting (int blockWeighting) |
Sets the outbound publish queue block weighting. More... | |
static void | setConnectionQueueHighWater (int high) |
Sets the outbound publish queue high watermark. More... | |
static void | setConnectionQueueLowWater (int low) |
Sets the outbound publish queue low watermark. More... | |
static void | setDataGroupQueueSize (int queueSize) |
Sets the number of events that are still to ve delivered to the client. More... | |
static void | setEnabledPriorityQueues (bool enabled) |
Enable the usage of priority queues for this client. More... | |
static void | setEVENTWAIT (long newval) |
This is the maximum time the client API will wait for a response to a specific request from the Nirvana realm. More... | |
static void | setHonourThirdPartyCookies (bool doHonour) |
If honourThirdPartyCookies is set to true then the client will maintain any third party cookies. More... | |
static void | setInitialConnectionTimeout (int timeout) |
This sets the current value for the Initial socket connect timeout. More... | |
static void | setKeepAliveInterval (long newVal) |
Sets the value in ms to wait before sending a Keep Alive. More... | |
static void | setPermittedKeepAlivesMissed (int kas) |
Sets the number of keep alives that the client can miss before closing the connection. More... | |
static void | SetProxy (const std::string &host, int &port) |
Sets the proxy host & port used for http (nhp) communication. | |
static void | setPushWaitLimit (int p_pushWait) |
Sets the outbound publish queue push wait time. More... | |
static void | setReconnectAfterAccessChange (bool recon) |
Sets whether a nirvana nSession will attempt to reconnect to the realm after the realm ACL has been revoked. More... | |
static void | setReconnectImmediately (bool recon) |
Sets whether a nirvana nSession will attempt to immediately reconnect or whether reconnection attempts will back off over time to prevent a network storm where multiple re-connections can occur all at once. More... | |
static void | setReconnectInterval (long interval) |
Returns the interval value to use between reconnect attempts when the session is set to reconnect immediately. More... | |
static void | SetRelaxedSSLVerification (bool flag) |
If set to true then there will be no SSL certificate validation, this is not recommended for production and should only be used during debug. | |
static void | setSocketReceiveBufferSize (int bufSize) |
Set the inbound socket buffer size. More... | |
static void | setSocketSendBufferSize (int bufSize) |
Set the outbound socket buffer size. More... | |
static void | setSubHighWater (int high) |
Sets the subscriber queue high watermark. More... | |
static void | setSubLowWater (int low) |
Sets the subscriber queue low watermark. More... | |
static void | setWriteHandlerType (int type) |
Allows the client to specify the type of write handling that the client code will employ. More... | |
Static Public Attributes | |
static const int | CHAN_DELETED_EVENT_ID = -2 |
Specifies the CHANNEL DELETED event ID received as result of channel deletion This event is send only when async subscriber is used. | |
static const int | m_sDirectWriteHandler = fConnectionSettings::sDirectWriteHandler |
This write handler only uses a direct write method to the network layer, this reduces latencies but may increase the cpu used. | |
static const int | m_sStandardWriteHandler = fConnectionSettings::sPeakWriteHandler |
This write handler uses a combination of direct writing and buffered writing to the network depending on client event load. | |
This class is a container for the various constants that affect the behaviour of various Nirvana Client API calls.
|
static |
Returns whether a nirvana nSession will attempt to reconnect to the realm after the realm ACL has been revoked.
By default, the nSession will not reconnect after one of these incidents, and a manual restart would need to be initiated
|
static |
Returns whether a nirvana nSession will attempt to immediately reconnect or whether reconnection attempts will back off over time to prevent a network storm where multiple re-connections can occur all at once.
|
static |
Compare 2 strings for equality.
string1 | the 1st string in comparison |
string2 | the 2nd string in comparison |
|
static |
Return an Epoch Date in milliseconds representing the current system date / time.
|
static |
Decode the array into a string.
pBuffer | the array to decode |
size | the size of the array |
str | the string to decode into |
|
static |
Encode the string into an array.
str | the string to encode |
size | the size of the array |
|
static |
Returns the outbound publish queue access wait time.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
When an outbound queue becomes blocked (unavailable) it is possible to become notified after a period of time that the queue cannot be accessed. This period is called the block access time
|
static |
Returns the outbound publish queue block wait time.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
When an outbound queue becomes blocked (unavailable) it is possible to become notified after a configurable period. This period is called the block wait time
|
static |
Get the client build number information.
|
static |
Returns the outbound publish queue block weighting.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
When an outbound queue becomes blocked (unavailable) it is possible to become notified after a configurable period. The connection block weighting is a value that is applied to the block wait value in order to control the frequency of these notifications.
|
static |
Returns the outbound publish queue high watermark.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
|
static |
Returns the outbound publish queue low watermark.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
|
static |
|
static |
Get whether priority queueing is enabled for this client.
|
static |
This is the maximum time the client API will wait for a response to a specific request from the Nirvana realm.
The default value is 60 secs and typically if you get a nRequestTimedOutException the cause would be:
|
static |
This returns the current value for the Initial socket connect timeout.
This timeout is specified in the actual underlying Socket connect, and enables connections made to non existent or unreachable hosts to be returned within a configurable time frame
|
static |
Gets the value in ms to wait before sending a Keep Alive.
This is relevant to the local client only.
|
static |
Returns the outbound publish queue push wait time.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
When an outbound queue becomes blocked (unavailable) it is possible to become notified after a period of time that events cannot be pushed to the queue. This period is called the push wait time
|
static |
Returns the interval value to use between reconnect attempts when the session is set to reconnect immediately.
|
static |
Get the inbound socket buffer size.
|
static |
Get the outbound socket buffer size.
|
static |
Retrieves the subscriber queue high watermark.
Each Nirvana subscriber uses a queue to store events retrieved from the server prior to performing the callback to the registered event listeners. When the queue reaches the high watermark the subscription is suspended to allow the event listener to catch up and control the amount of memory used on the client. When the queue reaches the low watermark, the subscription is automatically resumed.
|
static |
Retrieves the subscriber queue low watermark.
Each Nirvana subscriber uses a queue to store events retrieved from the server prior to performing the callback to the registered event listeners. When the queue reaches the high watermark the subscription is suspended to allow the event listener to catch up and control the amount of memory used on the client. When the queue reaches the low watermark, the subscription is automatically resumed.
|
static |
Returns the current write handling mode that the client is using.
|
static |
Converts milliseconds (time since EPOCH) into a time object;.
millis | time since EPOCH |
|
static |
Return current time in nanoseconds.
|
static |
Sets the outbound publish queue access wait time.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
When an outbound queue becomes blocked (unavailable) it is possible to become notified after a period of time that the queue cannot be accessed. This period is called the block access time
p_accessWait | the connection queue access wait |
|
static |
Sets the outbound publish queue block wait time.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
When an outbound queue becomes blocked (unavailable) it is possible to become notified after a configurable period. This period is called the block wait time
p_blockWait | the connection queue block wait |
|
static |
Specify a file for the client log messages.
Defaults to stdout.
|
static |
Sets the log level for the client.
All Nirvana client api code contains useful logging messages. The messages are set at specific levels from 0-7. This method allows you to choose what log level you wish to see. Setting to log level 0 will provide verbose output, whereas level 7 will be fairly quiet.
By default, these messages will be sent to the console output
level | the log level you wish to set the client application to for nirvana messages |
|
static |
Sets the outbound publish queue block weighting.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
When an outbound queue becomes blocked (unavailable) it is possible to become notified after a configurable period. The connection block weighting is a value that is applied to the block wait value in order to control the frequency of these notifications.
blockWeighting | the connection queue block weighting |
|
static |
Sets the outbound publish queue high watermark.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
high | the outbound connection queue high water mark |
|
static |
Sets the outbound publish queue low watermark.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
low | the outbound connection queue low water mark |
|
static |
Sets the number of events that are still to ve delivered to the client.
queueSize | number of events that the queue will hold before blocking |
|
static |
Enable the usage of priority queues for this client.
This will give delivery preference to messages marked high priority for this client.
enabled | boolean true will enable priority queueing for this client, false will disable it. |
|
static |
This is the maximum time the client API will wait for a response to a specific request from the Nirvana realm.
The default value is 60 secs and typically if you get a nRequestTimedOutException the cause would be:
Calling this method will only have effect on the local client. Alternatively if you change this value through on the realm configuration using the Admin API, all subsequent Nirvana clients that connect will be affected.
|
static |
If honourThirdPartyCookies is set to true then the client will maintain any third party cookies.
doHonour | if true the client will maintain third party cookies. |
|
static |
This sets the current value for the Initial socket connect timeout.
This timeout is specified in the actual underlying Socket connect, and enables connections made to non existent or unreachable hosts to be returned within a configurable time frame.
timeout | the socket connect timeout value to be set, default is 30000ms |
|
static |
Sets the value in ms to wait before sending a Keep Alive.
This is applied to the local client only and is NOT sent to the realm.
|
static |
Sets the number of keep alives that the client can miss before closing the connection.
If 0, the client does not check for any missed keep alives from the server and will continue sending its own keep alive events, until the connection is detected as lost. If > 0, say 1, when the client has not received a message for 1 X the KeepAlive time + 20000ms, the underlying connection will be closed by the client and reconnection will be attempted.
kas | Number of keep alive messages the client will miss before determining the connection as broken. |
|
static |
Sets the outbound publish queue push wait time.
Each Nirvana session that sends events to the server (e.g. publishers) place events into an outbound queue to be sent to the server. When the queue reaches the high watermark the queue is unavailable to the client session until the queue reaches it's low water mark, i.e. the events are delivered to the server. When the low water mark is reached the queue is automatically resumed.
When an outbound queue becomes blocked (unavailable) it is possible to become notified after a period of time that events cannot be pushed to the queue. This period is called the push wait time
p_pushWait | the connection queue push wait |
|
static |
Sets whether a nirvana nSession will attempt to reconnect to the realm after the realm ACL has been revoked.
By default, the nSession will not reconnect after one of these incidents, and a manual restart would need to be initiated
recon | true - will reconnect continually until successful, false, will disabled reconnect |
|
static |
Sets whether a nirvana nSession will attempt to immediately reconnect or whether reconnection attempts will back off over time to prevent a network storm where multiple re-connections can occur all at once.
recon | true - will reconnect immediately, and use the value set in |
|
static |
Returns the interval value to use between reconnect attempts when the session is set to reconnect immediately.
interval | value in milliseconds specifying the interval between reconnect attempts |
|
static |
Set the inbound socket buffer size.
bufSize | the size in bytes for the inbound buffer size |
|
static |
Set the outbound socket buffer size.
bufSize | the size in bytes for the outbound buffer size |
|
static |
Sets the subscriber queue high watermark.
Each Nirvana subscriber uses a queue to store events retrieved from the server prior to performing the callback to the registered event listeners. When the queue reaches the high watermark the subscription is suspended to allow the event listener to catch up and control the amount of memory used on the client. When the queue reaches the low watermark, the subscription is automatically resumed.
high | sets the subscriber high water mark |
|
static |
Sets the subscriber queue low watermark.
Each Nirvana subscriber uses a queue to store events retrieved from the server prior to performing the callback to the registered event listeners. When the queue reaches the high watermark the subscription is suspended to allow the event listener to catch up and control the amount of memory used on the client. When the queue reaches the low watermark, the subscription is automatically resumed.
low | the low water ,ark for the subscriber |
|
static |
Allows the client to specify the type of write handling that the client code will employ.
Please note this needs to be set prior to any nSession creation.
type | Either sStandardWriteHandler or sDirectWriteHandler |