TIBCO FTL®
|
The class FTL is the first entry point of an FTL program. More...
Static Public Member Functions | |
static void | Close () |
This call closes (that is, terminates) FTL within your program, and reclaims unmanaged resources. More... | |
static IRealm | ConnectToRealmServer (String ServerUrl, String AppName, ITibProperties Properties) |
Connect to an FTL server, and create a realm object. More... | |
static ITibProperties | CreateProperties () |
Create an empty property list object without any default values. More... | |
static bool | IsOpen () |
This method is for TIBCO internal use only. More... | |
static void | SetLogFiles (String filePrefix, long maxFileSize, int maxFiles, ITibProperties properties) |
Arrange rotating log files. More... | |
static void | SetLogFilesForRealm (IntPtr realm, String filePrefix, long maxFileSize, int maxFiles, ITibProperties properties) |
static void | SetLogHandler (ILogHandler logHandler, ITibProperties properties) |
Register a global log handler. More... | |
static void | SetLogHandlerForRealm (IntPtr realm, ILogHandler logHandler, ITibProperties properties) |
static void | SetLogLevelForRealm (IntPtr realm, String level) |
Static Public Attributes | |
const String | BROWSER_PROPERTY_DOUBLE_PERSISTENCE_RETRY_DURATION = "com.tibco.ftl.client.browser.persistence.retry.duration" |
Retry duration for browser operations; double. More... | |
const String | BROWSER_PROPERTY_STRING_LABEL = "com.tibco.ftl.client.browser.label" |
Property name for a browser label; string. More... | |
const String | BROWSER_PROPERTY_STRING_MATCHER = "com.tibco.ftl.client.browser.matcher" |
Property name for a browser matcher; string. More... | |
static readonly string | BUILTIN_MSG_FMT_KEY_FIELDNAME = "_key" |
Built-in field name of the key field in a keyed opaque message. More... | |
static readonly long | BUILTIN_MSG_FMT_KEY_MAXLEN = 255 |
Maximum length (in bytes) of the key field of a keyed opaque message. More... | |
static readonly string | BUILTIN_MSG_FMT_KEYED_OPAQUE = "_keyed_opaque" |
Built-in format name for keyed opaque messages. More... | |
static readonly string | BUILTIN_MSG_FMT_OPAQUE = "_default_opaque" |
Built-in format name for opaque messages. More... | |
static readonly string | BUILTIN_MSG_FMT_OPAQUE_FIELDNAME = "_data" |
Built-in field name of the data field in an opaque message or a keyed opaque message More... | |
static readonly long | BUILTIN_MSG_FMT_OPAQUE_MAXSIZE = 12000 |
Maximum efficient length (in bytes) of a built-in opaque message. More... | |
const int | EVENTQUEUE_DISCARD_NEW = 2 |
Discard new events, instead of adding them to the queue. More... | |
const int | EVENTQUEUE_DISCARD_NONE = 0 |
Do not discard events (default behavior). More... | |
const int | EVENTQUEUE_DISCARD_OLD = 1 |
Discard old events from the head of the queue. More... | |
static readonly string | EVENTQUEUE_PROPERTY_BOOL_INLINE_MODE = "com.tibco.ftl.client.inline" |
Inline mode (low-latency); boolean. More... | |
static readonly string | EVENTQUEUE_PROPERTY_INT_DISCARD_POLICY = "com.tibco.ftl.client.discard.policy" |
Discard policy; integer. More... | |
static readonly string | EVENTQUEUE_PROPERTY_INT_DISCARD_POLICY_DISCARD_AMOUNT = "com.tibco.ftl.client.discard.amount" |
Discard amount; integer. More... | |
static readonly string | EVENTQUEUE_PROPERTY_INT_DISCARD_POLICY_MAX_EVENTS = "com.tibco.ftl.client.discard.max_events" |
Max events; integer. More... | |
static readonly string | EVENTQUEUE_PROPERTY_STRING_NAME = "com.tibco.ftl.client.queue.name" |
Queue name; string. More... | |
static readonly string | LOG_LEVEL_DEBUG = "debug" |
Debug – output trace entries for all events (debug, verbose, information, warning and severe events). See LogLevel. More... | |
static readonly string | LOG_LEVEL_INFO = "info" |
Info – output trace entries for information, warning and severe events. See LogLevel. More... | |
static readonly string | LOG_LEVEL_OFF = "off" |
Off – disable all tracing. See LogLevel. More... | |
static readonly string | LOG_LEVEL_SEVERE = "severe" |
Severe – output trace entries only for severe events. See LogLevel. More... | |
static readonly string | LOG_LEVEL_VERBOSE = "verbose" |
Verbose – output trace entries for verbose, information, warning and severe events. See LogLevel. More... | |
static readonly string | LOG_LEVEL_WARN = "warn" |
Warn – output trace entries for warning and severe events. See LogLevel. More... | |
static readonly string | PUBLISHER_PROPERTY_BOOL_RELEASE_MSGS_TO_SEND = "com.tibco.ftl.client.publisher.release" |
Ownership of outbound messages; boolean. More... | |
static readonly string | PUBLISHER_PROPERTY_DOUBLE_PERSISTENCE_CLOSE_LINGER = "com.tibco.ftl.client.publisher.persistence.close.linger" |
Linger duration for persistent publisher close operation; double. More... | |
static readonly string | PUBLISHER_PROPERTY_DOUBLE_PERSISTENCE_RETRY_DURATION = "com.tibco.ftl.client.publisher.persistence.retry.duration" |
Retry duration for persistent publisher operations; double. More... | |
static readonly string | PUBLISHER_PROPERTY_INT_MAX_BATCH_COUNT = "com.tibco.ftl.client.publisher.max.batch" |
Maximum batch count for non-inline publishers; integer. More... | |
const String | PUBLISHER_PROPERTY_INT_SEND_POLICY = "com.tibco.ftl.client.publisher.send.policy" |
Publisher send policy; string. More... | |
static readonly string | PUBLISHER_PROPERTY_STRING_LABEL = "com.tibco.ftl.client.publisher.label" |
Property name for a publisher label; string More... | |
static readonly string | PUBLISHER_PROPERTY_STRING_REPLY_ENDPOINT = "com.tibco.ftl.client.publisher.reply.endpoint" |
Property name for a publisher reply endpoint; string. More... | |
const int | PUBLISHER_SEND_INLINE = 0 |
Publish with low latency; integer. More... | |
const int | PUBLISHER_SEND_NON_INLINE = 1 |
Publish with high throughput; integer. More... | |
static readonly string | REALM_PROPERTY_BOOL_TRUST_EVERYONE = "com.tibco.ftl.trust.everyone" |
Property name for skipping TLS certificate validation; boolean. More... | |
static readonly string | REALM_PROPERTY_DOUBLE_CONNECT_INTERVAL = "com.tibco.ftl.client.interval" |
Property name for the interval between connection attempts; double. More... | |
static readonly long | REALM_PROPERTY_HTTPS_CONNECTION_TRUST_EVERYONE = 0 |
Deprecated. Trust any FTL server; property value constant. More... | |
static readonly long | REALM_PROPERTY_HTTPS_CONNECTION_USE_SPECIFIED_TRUST_FILE = 1 |
Deprecated. Trust an FTL server if its certificate is in a trust file; property value constant. More... | |
static readonly long | REALM_PROPERTY_HTTPS_CONNECTION_USE_SPECIFIED_TRUST_STRING = 2 |
Deprecated. Trust an FTL server if its certificate is in a trust string; property value constant. More... | |
static readonly string | REALM_PROPERTY_LONG_CONNECT_RETRIES = "com.tibco.ftl.client.retries" |
Property name for number of connection attempts; long. More... | |
static readonly string | REALM_PROPERTY_LONG_SECURITY_LEVEL = "com.tibco.ftl.security.level" |
Property name for secure FTL server trust data; string. More... | |
static readonly string | REALM_PROPERTY_LONG_TRUST_TYPE = "com.tibco.ftl.trust.type" |
Deprecated. Property name for secure FTL server trust type; long. More... | |
static readonly string | REALM_PROPERTY_STRING_APPINSTANCE_IDENTIFIER = "com.tibco.ftl.client.appinstance.identifier" |
Property name for application instance identifier; string. More... | |
static readonly string | REALM_PROPERTY_STRING_CLIENT_CERT = "com.tibco.ftl.client.cert" |
Property name for client identity certificate; string. More... | |
static readonly string | REALM_PROPERTY_STRING_CLIENT_LABEL = "com.tibco.ftl.client.label" |
Property name for client label; string. More... | |
static readonly string | REALM_PROPERTY_STRING_CLIENT_PRIVATE_KEY = "com.tibco.ftl.client.private.key" |
Property name for client certificate's private key; string. More... | |
static readonly string | REALM_PROPERTY_STRING_CLIENT_PRIVATE_KEY_PASSWORD = "com.tibco.ftl.client.private.key.password" |
Property name for client certificate's private key password; string. More... | |
static readonly string | REALM_PROPERTY_STRING_OAUTH2_ACCESS_TOKEN = "com.tibco.ftl.oauth2.access.token" |
Property name to specify OAuth 2.0 access token. More... | |
static readonly string | REALM_PROPERTY_STRING_OAUTH2_CLIENT_ID = "com.tibco.ftl.oauth2.client.id" |
Property name for OAuth 2.0 client id, this client id is required to get the OAuth 2.0 access token; string More... | |
static readonly string | REALM_PROPERTY_STRING_OAUTH2_CLIENT_SECRET = "com.tibco.ftl.oauth2.client.secret" |
Property name for OAuth 2.0 client secret, this client secret is required to get the OAuth 2.0 access token; string More... | |
static readonly string | REALM_PROPERTY_STRING_OAUTH2_SERVER_TRUST_FILE = "com.tibco.ftl.oauth2.server.trust.file" |
Property name for OAuth 2.0 server specific trust file. More... | |
static readonly string | REALM_PROPERTY_STRING_OAUTH2_SERVER_URL = "com.tibco.ftl.oauth2.server.url" |
Property name for OAuth 2.0 server URL. More... | |
static readonly string | REALM_PROPERTY_STRING_SECONDARY_SERVER = "com.tibco.ftl.client.secondary" |
static readonly string | REALM_PROPERTY_STRING_TRUST_FILE = "com.tibco.ftl.trust.file" |
Property name for secure FTL server trust file; string. More... | |
static readonly string | REALM_PROPERTY_STRING_TRUST_PEM_STRING = "com.tibco.ftl.trust.pem.string" |
Property name for secure FTL server trust data; string. More... | |
static readonly string | REALM_PROPERTY_STRING_USERNAME = "com.tibco.ftl.client.username" |
Property name for FTL server username; string. More... | |
static readonly string | REALM_PROPERTY_STRING_USERPASSWORD = "com.tibco.ftl.client.userpassword" |
Property name for FTL server password; string. More... | |
static readonly string | SUBSCRIBER_PROPERTY_BOOL_EXPLICIT_ACK = "com.tibco.ftl.client.subscriber.explicitack" |
Explicit acknowledgement; boolean. More... | |
static readonly string | SUBSCRIBER_PROPERTY_BOOL_NOLOCAL_MESSAGE_DELIVERY = "com.tibco.ftl.client.subscriber.nolocal.message.delivery" |
brief No Local property that inhibits delivery of messages published by publishers on the same connection as the subscriber; boolean. More... | |
static readonly string | SUBSCRIBER_PROPERTY_BOOL_RELEASE_MSGS_TO_CALLBACK = "com.tibco.ftl.client.subscriber.release" |
Ownership of inbound messages; boolean. More... | |
static readonly string | SUBSCRIBER_PROPERTY_DOUBLE_PERSISTENCE_RETRY_DURATION = "com.tibco.ftl.client.subscriber.persistence.retry.duration" |
Retry duration for persistent subscriber operations; double. More... | |
static readonly string | SUBSCRIBER_PROPERTY_LONG_PREFETCH_SIZE = "com.tibco.ftl.client.subscriber.prefetch.size" |
Property name for setting the prefetch; long. More... | |
static readonly string | SUBSCRIBER_PROPERTY_STRING_DURABLE_NAME = "com.tibco.ftl.client.durable.name" |
Durable name property; string. More... | |
static readonly string | SUBSCRIBER_PROPERTY_STRING_KEY_FIELD_NAME = "com.tibco.ftl.client.subscriber.keyfieldname" |
Key field name for a dynamic last-value durable; string. More... | |
static readonly string | SUBSCRIBER_PROPERTY_STRING_LABEL = "com.tibco.ftl.client.subscriber.label" |
Property name for a subscriber label; string More... | |
static readonly string | SUBSCRIBER_PROPERTY_STRING_NAME = "com.tibco.ftl.client.subscriber.name" |
Static durable subscriber name property; string. More... | |
static readonly string | TIBLOCK_PROPERTY_DOUBLE_LOCK_ACQUIRE_RETRY_DURATION = "com.tibco.ftl.lock.acquire.retry.duration" |
Retry duration for lock requests. double More... | |
static readonly string | TIBMAP_PROPERTY_DOUBLE_PERSISTENCE_RETRY_DURATION = "com.tibco.ftl.client.map.persistence.retry.duration" |
Retry duration for map operations; double. More... | |
static readonly string | TIBMAP_PROPERTY_STRING_LABEL = "com.tibco.ftl.client.map.label" |
Property name for a map label; string More... | |
static readonly string | TIBMAPITER_PROPERTY_STRING_MATCHER = "com.tibco.ftl.client.map.iter.matcher" |
Property name for specifying a matcher to the map iterator. More... | |
Properties | |
static String | LogLevel [set] |
Set the global log trace level for low-level FTL internal calls. More... | |
static String | Version [get] |
Version of the FTL class library. More... | |
The class FTL is the first entry point of an FTL program.
Programs use the class FTL to create IRealm and ITibProperties objects, and to set log levels.
Programmers can expect all public methods of FTL interfaces to throw either FTLException, or a more specific subclass.
Programs do not instantiate this class.
|
inlinestatic |
This call closes (that is, terminates) FTL within your program, and reclaims unmanaged resources.
Programs must not call Close
within a callback.
Programs must Dispose
IRealm objects before closing FTL.
|
inlinestatic |
Connect to an FTL server, and create a realm object.
The FTL server defines information about endpoints, transports and formats, which lets applications communicate within a realm. The realm object is a local copy (within your program) of the subset of the realm information that pertains to your application.
Note: It is good practice that each application process maintain only one connection to each relevant FTL server. Realm objects are thread-safe; you can safely use the same realm object in all the threads of an application program. Do not duplicate connections to the same realm server in several threads, which would duplicate the realm object.
ServerUrl | The call contacts the FTL server at this URL. |
AppName | The call sends this application name to the FTL server. The server responds with an application-specific subset of the realm information. To use the default application, supply null. |
Properties | Properties configure interaction with the FTL server. Required for connecting to a secure FTL server, for authentication, and for fault tolerance. Otherwise optional; to omit, supply null.
|
On success, this method returns a realm object.
On failure, this method returns null.
|
inlinestatic |
Create an empty property list object without any default values.
As a mechanism for configuring objects, some FTL creation calls accept a properties object, which contains paired property names and values.
|
inlinestatic |
This method is for TIBCO internal use only.
This method will be removed from the public interface in a future release.
|
inlinestatic |
Arrange rotating log files.
The filename extension .0
indicates the current log file. Rotation shifts each file by incrementing its numeric extension. If the number of files would exceed the maximum, rotation deletes the oldest file.
filePrefix | All log files begin with this filename prefix. |
maxFileSize | FTL rotates the log files when the current log file exceeds this limit (in bytes). This value must be greater than 102400 (100 kilobytes). |
maxFiles | FTL limits the number of log files to this maximum. |
properties | Reserved for future use. To ensure forward compatibility, programmers must supply null. |
|
inlinestatic |
|
inlinestatic |
Register a global log handler.
If you register a log handler (at most one), then FTL directs all log statements to that handler.
logHandler | FTL invokes this log handler to process all log statements. |
properties | Reserved for future use. To ensure forward compatibility, programmers must supply null. |
|
inlinestatic |
|
inlinestatic |
|
static |
Retry duration for browser operations; double.
When IRealm.CreateBrowser() or ITibBrowser.DeleteMessage() cannot access the persistence server (usually because of network failure or quorum unavailability), they can automatically retry the interaction. The value of this property overrides the retry behavior of the server. Supply it to the browser create call.
Values:
Closing the realm or destroying the browser supersedes and cancels retry behavior.
This property does not apply to ITibBrowser.Next().
|
static |
Property name for a browser label; string.
It is good practice to include this property in every browser create call. Monitoring data incorporates these labels so administrators can identify and distinguish among internal subscribers created on behalf of browsers. Use labels that reveal the unique role and identity of each durable within the application program.
When the browser label is present in the browser create call, the new browser assigns it as the label of its internal subscribers.
|
static |
Property name for a browser matcher; string.
Limit the browser to messages that match this string.
|
static |
Built-in field name of the key field in a keyed opaque message.
|
static |
Maximum length (in bytes) of the key field of a keyed opaque message.
|
static |
Built-in format name for keyed opaque messages.
Keyed opaque messages contain only a character string and a byte-string. Content matchers can match against the key field (character string).
This format name is valid as an argument to IRealm.CreateMessage(string).
|
static |
Built-in format name for opaque messages.
Opaque messages contain only a byte-string.
This format name is valid as an argument to IRealm.CreateMessage(string).
|
static |
Built-in field name of the data field in an opaque message or a keyed opaque message
|
static |
Maximum efficient length (in bytes) of a built-in opaque message.
Larger payloads are less efficient.
This threshold also limits the total length of a keyed opaque message (including the key string, its null terminator, and the opaque data).
|
static |
Discard new events, instead of adding them to the queue.
|
static |
Do not discard events (default behavior).
|
static |
Discard old events from the head of the queue.
|
static |
Inline mode (low-latency); boolean.
Programs that receive time-sensitive messages can use inline mode to favor low latency over high throughput. Inline mode reduces inbound message latency using inline transport I/O in the same thread as the ISubscriberListener callback method.
Inline mode requires that callback methods always return quickly; otherwise, long callbacks can delay message I/O (defeating the purpose of inline mode).
Inline mode could reduce the average number of messages in the vectors that the callback receives.
It is good practice to dispatch an inline queue from only one thread. Dispatching an inline-mode queue from several threads could result in actual wait times that are longer than the dispatch timeout arguments. For example, if thread A dispatches with timeout 10 seconds, and thread B dispatches with timeout 15 seconds, then the timer for thread B does not start until after the dispatch call returns in thread A. The apparent timeout for thread B could be as long as 25 seconds.
When specifying inline mode, programmers must coordinate with administrators to avoid illegal state exceptions.
To enable inline mode, pass this property to IRealm.CreateEventQueue(ITibProperties) with value true
. Otherwise, the default behavior disables inline mode.
|
static |
Discard policy; integer.
This property determines the behavior of the queue on overflow (too many events).
To enable discard on overflow, pass this property to IRealm.CreateEventQueue(ITibProperties). Otherwise, the default behavior disables discard.
These members are the legal values:
|
static |
Discard amount; integer.
When a queue overflows, this property determines the number of events to discard.
If you specify FTL.EVENTQUEUE_DISCARD_OLD, you may also specify this value. The value must be less than FTL.EVENTQUEUE_PROPERTY_INT_DISCARD_POLICY_MAX_EVENTS. When absent, the default value is 1.
If you specify FTL.EVENTQUEUE_DISCARD_NEW, then IRealm.CreateEventQueue(ITibProperties) ignores this value. Discarding new events always discards exactly enough events so that the rest fit on the queue.
|
static |
Max events; integer.
When distributing an event to the queue would overflow this limit, the queue discards events.
If you specify a discard policy that could actually discard events, then you must also specify a value for this maximum.
|
static |
Queue name; string.
It is good practice to assign a unique name to each event queue (that is, unique within the program). If the queue discards events, the advisory message identifies the queue using this name, which can help diagnose the issue.
|
static |
Debug – output trace entries for all events (debug, verbose, information, warning and severe events). See LogLevel.
|
static |
Info – output trace entries for information, warning and severe events. See LogLevel.
|
static |
Off – disable all tracing. See LogLevel.
|
static |
Severe – output trace entries only for severe events. See LogLevel.
|
static |
Verbose – output trace entries for verbose, information, warning and severe events. See LogLevel.
|
static |
Warn – output trace entries for warning and severe events. See LogLevel.
|
static |
Ownership of outbound messages; boolean.
When false
or absent, client program code retains ownership of outbound messages that it sends through this publisher.
When true
, the FTL library accepts ownership of outbound messages that the client sends through this publisher. Client code releases the message object when it invokes the send call; from that moment onward, client code must not reference the message object, because the FTL library can destroy the message object at any time.
Client code can release a message only if client owns the message. In particular, if a subscriber does not release its messages to the callback, then the callback must not send it through a publisher that releases messages. (See FTL.SUBSCRIBER_PROPERTY_BOOL_RELEASE_MSGS_TO_CALLBACK.)
|
static |
Linger duration for persistent publisher close operation; double.
When a persistence publisher is configured for non-inline send, and the publisher is disposed of while there are still messages waiting to be persisted, the publisher can be configured to wait for some time before doing final cleanup. If the linger period elapses, and the messages have not been successfully persisted, the messages will be discarded. Set this property to control the linger behavior of publisher close. The default value is 30 seconds.
Values:
Closing the realm supersedes and cancels linger behavior.
|
static |
Retry duration for persistent publisher operations; double.
When IRealm.CreatePublisher(string, ITibProperties), IPublisher.Send(IMessage), IPublisher.Send(IMessage[]), or IPublisher.Send(IMessage[], int) cannot access the persistence server (usually because of network failure or quorum unavailability), they can automatically retry the interaction. The value of this property overrides the retry behavior of the server. Supply it to the publisher create call.
Values:
Closing the publisher or the realm supersedes and cancels retry behavior.
|
static |
Maximum batch count for non-inline publishers; integer.
When a persistence publisher is configured for non-inline send, this is the maximum number of messages that may be in flight to the persistence service at any given time. When this limit is reached, IPublisher.Send(IMessage) blocks until some messages can be persisted, or a failure occurs. The default value is 100.
The IPublisher.GetMaxBatchCount call returns the value currently in effect.
|
static |
Publisher send policy; string.
Optimize the publisher for lower latency or greater throughput. The default behavior depends on the realm configuration.
Values:
When publishing to a store, and the administrator has configured publisher mode store_confirm_send for the store, the inline send policy causes IPublisher.Send(IMessage) and IPublisher.Send(IMessage[]) to block until the message(s) have been successfully persisted, or until a failure occurs.
When publishing to a store, and the administrator has configured publisher mode store_confirm_send for the store, the non-inline send policy changes the behavior of IPublisher.Send(IMessage).
The IPublisher.GetSendPolicy call returns the value currently in effect.
|
static |
Property name for a publisher label; string
It is good practice to include this property in every publisher create call. Monitoring data incorporates these labels so administrators can identify and distinguish among publishers. Use labels that reveal the unique role and identity of each publisher within the application program.
If a non-inline persistence publisher fails to persist a message, the resulting advisory will include the publisher label. See Advisory.NAME_NONINLINE_SEND_LOSS.
|
static |
Property name for a publisher reply endpoint; string.
For IPublisher.SendRequest(IMessage, double) this specifies the endpoint on which the reply is received.
|
static |
Publish with low latency; integer.
If this value is set for property PUBLISHER_PROPERTY_INT_SEND_POLICY. then publish calls IPublisher.Send(IMessage) and IPublisher.Send(IMessage[]) send messages immediately to reduce latency.
|
static |
Publish with high throughput; integer.
If this value is set for property PUBLISHER_PROPERTY_INT_SEND_POLICY. then publish call IPublisher.Send(IMessage) may batch messages in the background for improved throughput.
|
static |
Property name for skipping TLS certificate validation; boolean.
Supply this property to FTL.ConnectToRealmServer.
The client trusts any FTL server without verifying trust in the server's certificate. Do not use this value except for convenience in development and testing. It is not secure.
|
static |
Property name for the interval between connection attempts; double.
Supply this property to FTL.ConnectToRealmServer.
The connect call waits this interval (in seconds) between connection attempts.
The default value is 1.0.
This property applies only to tibRealm_Connect and does not affect
reconnects if the client loses connection to the FTL server.
|
static |
Deprecated. Trust any FTL server; property value constant.
This constant is deprecated. There is no need to use REALM_PROPERTY_LONG_TRUST_TYPE. Use REALM_PROPERTY_BOOL_TRUST_EVERYONE instead.
This constant is one possible value of the property REALM_PROPERTY_LONG_TRUST_TYPE in the method FTL.ConnectToRealmServer.
The client trusts any FTL server without verifying trust in the server's certificate. Do not use this value except for convenience in development and testing. It is not secure.
|
static |
Deprecated. Trust an FTL server if its certificate is in a trust file; property value constant.
This constant is deprecated. There is no need to use REALM_PROPERTY_LONG_TRUST_TYPE.
This constant is one possible value of the property REALM_PROPERTY_LONG_TRUST_TYPE in the method FTL.ConnectToRealmServer.
The client trusts the FTL server based on the trust file created by the FTL server and distributed by the administrator.
Specify the file path of the trust file in the property REALM_PROPERTY_STRING_TRUST_FILE.
|
static |
Deprecated. Trust an FTL server if its certificate is in a trust string; property value constant.
This constant is deprecated. There is no need to use REALM_PROPERTY_LONG_TRUST_TYPE.
This constant is one possible value of the property REALM_PROPERTY_LONG_TRUST_TYPE in the method FTL.ConnectToRealmServer.
The client trusts the FTL server based on a trust string.
Specify the trust string in the property REALM_PROPERTY_STRING_TRUST_PEM_STRING.
|
static |
Property name for number of connection attempts; long.
Supply this property to FTL.ConnectToRealmServer.
If the connect call cannot connect to the FTL server after this maximum number of connection attempts, it fails with an exception.
The default value is retry forever (0).
|
static |
Property name for secure FTL server trust data; string.
Supply this property to FTL.ConnectToRealmServer.
The value of this property must be an integer between 0 and 5, inclusive.
If the administrator has configured a user-defined certificate at FTL server, the given security level is applied to all TLS connections to FTL server. In general, increasing the security level enforces stricter requirements for certificate keys, signatures, and ciphers. In particular, if the user-provided certificate does not meet the key requirements, the TLS connection will fail. The default security level is 2. FTL will enforce a minimum TLS version of 1.2 regardless of the actual security level.
If the administrator instead uses FTL-issued certificates for TLS, the given security level cannot be greater than 4. FTL will enforce a minimum TLS version of 1.3 when using FTL-issued certificates.
Refer to the openssl documentation for a precise definition of the openssl security level.
|
static |
Deprecated. Property name for secure FTL server trust type; long.
This property is deprecated. Omit this property; instead, use REALM_PROPERTY_STRING_TRUST_FILE, REALM_PROPERTY_STRING_TRUST_PEM_STRING, or REALM_PROPERTY_BOOL_TRUST_EVERYONE. To use the system trust store, omit all of these properties.
Supply this property to FTL.ConnectToRealmServer. Its value determines trust in the FTL server's certificate.
|
static |
Property name for application instance identifier; string.
It is good practice to include this property in the realm connect call of every application program. It gives administrators flexible control over application deployment and over the transports that carry message traffic.
For example, the program obtains the application identifier as a command line argument (or through another configuration mechanism). If an application identifier is present, then the program passes it to FTL.ConnectToRealmServer as the value of this property.
Within the realm, administrators can define one or more application instances, which tailor the connections between endpoints and transports. The value of this property selects from among those instances.
|
static |
Property name for client identity certificate; string.
Supply this property to FTL.ConnectToRealmServer.
As an alternative to user/password, client applications may use a TLS certificate to authenticate to FTL server. A TLS connection is required. Applications must also specify the private key alongside the certificate.
The value of this property must be a PEM file containing the certificate. The PEM file may also include intermediate certificates.
Administrators are responsible for distributing client certificates to applications. The client's auth roles should be encoded as a comma- separated list in the common name (CN) field of the client certificate.
|
static |
Property name for client label; string.
It is good practice to include this property in the realm connect call of every application program. Administrators can use client labels in monitoring and management to recognize and distinguish among processes.
For example, the program obtains the client label as a command line argument (or through another configuration mechanism). If a client label is present, then the program passes it to FTL.ConnectToRealmServer as the value of this property.
This property applies only to tibRealm_Connect and does not affect
reconnects if the client loses connection to the FTL server.
|
static |
Property name for client certificate's private key; string.
Supply this property to FTL.ConnectToRealmServer.
When using a TLS certificate to authenticate to FTL server, the corresponding private key and passphrase must be specified as well.
The value of this property must be a PEM file containing the private key.
|
static |
Property name for client certificate's private key password; string.
Supply this property to FTL.ConnectToRealmServer.
When using a TLS certificate to authenticate to FTL server, the corresponding private key and passphrase must be specified as well.
The value of this property must be a passphrase used to decrypt the private key.
|
static |
Property name to specify OAuth 2.0 access token.
When this parameter is specified, the FTL client library will use this access token to connect to FTL server.
If this property is specified then FTL client library will not attempt to fetch an access token from the OAuth 2.0 server.
Supply this property to FTL.ConnectToRealmServer.
|
static |
Property name for OAuth 2.0 client id, this client id is required to get the OAuth 2.0 access token; string
When this parameter is specified along with TIB_REALM_PROPERTY_STRING_OAUTH2_SERVER_URL and TIB_REALM_PROPERTY_STRING_OAUTH2_CLIENT_SECRET, FTL client library will connect to the OAuth 2.0 server specified to get the OAuth 2.0 access token prior to connecting to the FTL Server.
Supply this property to FTL.ConnectToRealmServer.
|
static |
Property name for OAuth 2.0 client secret, this client secret is required to get the OAuth 2.0 access token; string
When this parameter is specified along with REALM_PROPERTY_STRING_OAUTH2_SERVER_URL and REALM_PROPERTY_STRING_OAUTH2_CLIENT_ID, FTL client library will connect to the OAuth 2.0 server specified to get the OAuth 2.0 access token prior to connecting to the FTL Server
Supply this property to FTL.ConnectToRealmServer.
|
static |
Property name for OAuth 2.0 server specific trust file.
When the connection to the OAuth 2.0 server is secure, specify this trust file, so the client knows who to trust.
Supply this property to FTL.ConnectToRealmServer.
|
static |
Property name for OAuth 2.0 server URL.
When this parameter is specified along with REALM_PROPERTY_STRING_OAUTH2_CLIENT_SECRET and REALM_PROPERTY_STRING_OAUTH2_CLIENT_ID, FTL client library will connect to the OAuth 2.0 server specified to get the OAuth 2.0 access token prior to connecting to the FTL Server.
If this url scheme starts with https:// then specify REALM_PROPERTY_STRING_OAUTH2_SERVER_TRUST_FILE
Supply this property to FTL.ConnectToRealmServer.
|
static |
|
static |
Property name for secure FTL server trust file; string.
Supply this property to FTL.ConnectToRealmServer.
Use this property to supply a trust string for TLS connections to FTL server. The string must contain one or more certificates in PEM format.
If the trust string contains only an FTL-issued root certificate, the library will also try to verify FTL server's certificate against the system trust store.
|
static |
Property name for secure FTL server trust data; string.
Supply this property to FTL.ConnectToRealmServer.
Use this property to supply a trust string for TLS connections to FTL server. The string must contain one or more certificates in PEM format.
If the trust string contains only an FTL-issued root certificate, the library will also try to verify FTL server's certificate against the system trust store.
|
static |
Property name for FTL server username; string.
Supply this property to FTL.ConnectToRealmServer which identifies your program to the FTL server with the username value you supply.
|
static |
Property name for FTL server password; string.
Supply this property to FTL.ConnectToRealmServer, which authenticates your program to the FTL server with the password value you supply. This can be a masked password, which would be unmasked before being sent to the realm service.
|
static |
Explicit acknowledgement; boolean.
A durable subscriber can acknowledge message receipt to its durable (in the persistence store) in either of two ways:
To enable explicit acknowledgement mode, pass this property to IRealm.CreateSubscriber(string, ITibProperties) with value true
. Otherwise, the default behavior is automatic acknowledgement.
|
static |
brief No Local property that inhibits delivery of messages published by publishers on the same connection as the subscriber; boolean.
This mainly applies only to subscribers on an endpoint that have a 'store' associated.
When tibfalse
or absent, FTL delivers messages to the subscriber that are published by a publisher on the same connection This is the default behavior.
When tibtrue
, FTL does not deliver messages that are published by publishers on the same connection as the subscriber.
|
static |
Ownership of inbound messages; boolean.
When false
or absent, the FTL library retains ownership of inbound messages that arrive through this subscriber. The library automatically destroys each message after the callback returns.
When true
, client program code accepts ownership of inbound messages that arrive through this subscriber. The FTL library releases the message object when it dispatches the message to the client's callback. The callback can pass this message to another program thread. Client program code must explicitly destroy the message object.
|
static |
Retry duration for persistent subscriber operations; double.
When IRealm.CreateSubscriber(string, ITibProperties) or IMessage.Acknowledge() cannot access the persistence server (usually because of network failure or quorum unavailability), they can automatically retry the interaction. The value of this property overrides the retry behavior of the server. Supply it to the subscriber create call.
Values:
Closing the subscriber or the realm supersedes and cancels retry behavior.
|
static |
Property name for setting the prefetch; long.
Allows a subscriber to override the prefetch set by the administrator for a static durable or dynamic durable template.
When absent, the FTL library will default the prefetch value set by the administrator for a static durable or dynamic durable template.
When set to a value greater than zero, a subscriber receives prefetch number of messages in a batch as set by the subscriber.
NOTE: This value should be lower than the administrator configured value.
|
static |
Durable name property; string.
To request messages from a persistence store, supply a durable name as the value of this property in a IRealm.CreateSubscriber(string, ITibProperties) call.
If a static or dynamic durable with this name already exists, the new subscriber draws messages from that durable.
Otherwise, the store creates a new dynamic durable with this name.
If this property is present, it overrides the FTL.SUBSCRIBER_PROPERTY_STRING_NAME property.
|
static |
Key field name for a dynamic last-value durable; string.
When creating or subscribing to a dynamic last-value durable, this property is required. Supply the name of the last-value durable's key field as the value of this property.
The subscriber's content matcher must match the key field against a specific value.
|
static |
Property name for a subscriber label; string
It is good practice to include this property in every subscriber create call. Monitoring data incorporates these labels so administrators can identify and distinguish among subscribers. Use labels that reveal the unique role and identity of each subscriber within the application program.
The library does not use labels internally.
|
static |
Static durable subscriber name property; string.
To request messages from static durable in a persistence store, programs may supply a subscriber name as the value of this property in a IRealm.CreateSubscriber(string, ITibProperties) call.
If FTL.SUBSCRIBER_PROPERTY_STRING_DURABLE_NAME is present, it overrides this property.
If neither this property nor FTL.SUBSCRIBER_PROPERTY_STRING_DURABLE_NAME is present, then the create call uses the default durable subscriber name (_default
).
Setting this value is required for only static durables where administrative configuration maps the subscriber name to a durable name.
|
static |
Retry duration for lock requests. double
Supply this property to IRealm.CreateLock.
This determines the number of seconds the client will attempt to acquire the lock. The client may retry if it can't access the persistence server, or wait if another client owns the lock. If the client does not already own the lock, the client attempts to acquire it when any map operation requiring a lock is called.
This value must be positive or zero. A value of 0 (zero) specifies no wait duration.
|
static |
Retry duration for map operations; double.
When IRealm.CreateMap(String, String, ITibProperties), ITibMap.Set(string, IMessage), ITibMap.Get(string), or ITibMap.Remove(string) (with lock or without lock) cannot access the persistence server (usually because of network failure or quorum unavailability), they can automatically retry the interaction. The value of this property overrides the retry behavior of the server. Supply it to the map create call.
Values:
Closing the realm or destroying the map supersedes and cancels retry behavior.
This property does not apply to map iterators.
|
static |
Property name for a map label; string
It is good practice to include this property in every map create call. Monitoring data incorporates these labels so administrators can identify and distinguish among internal publishers and subscribers created on behalf of maps. Use labels that reveal the unique role and identity of each map within the application program.
When the map label is present in the map create call, the new map assigns it as the label of its internal publishers and subscribers.
|
static |
Property name for specifying a matcher to the map iterator.
Limit the iterator to only matches of the value to this string. ITibMap.CreateIterator(ITibProperties)
|
staticset |
Set the global log trace level for low-level FTL internal calls.
This field determines the global log trace level for low-level FTL internal calls.
Set one log level for all logging elements, e.g., TIB_LOG_LEVEL_WARN.
Or, set log levels per element tag, e.g.,"transports:warn;api:debug".
Valid Levels:
Valid Element Tags:
For more information, see the topic Log Levels in the book TIBCO FTL Development.
|
staticget |
Version of the FTL class library.
Programs can use this string to output the FTL version in a start banner or in debug output.