The "alterStreamingConnection" action alters a streaming connection from a source FairCom server to a FairCom MQ server. Use it to modify connection settings, such as changing a password or the logging level. After you alter a connection, the FairCom MQ server immediately uses the new connection settings to connect to the FairCom DB or RTG server.
If you change a connection to point to a different FairCom DB or RTG server, it forces FairCom MQ to fail all data change streams from the original FairCom DB or RTG server and restart them from the new one.
You can change the streaming connection name only when no data change streams use it.
Request examples
Minimal
{
"action": "alterStreamingConnection",
"params": {
"streamingConnectionName": "db1",
"sourceHostname": "10.70.13.112",
"sourcePort": 5597,
"sourceUsername": "ADMIN",
"sourcePassword": "ADMIN"
},
"authToken": "replaceWithAuthTokenFromCreateSession"
}Maximal
This example configures a connection to multiple source servers. The FairCom MQ server attempts to connect to the servers in the list in the order they are listed. If a connection fails, it connects to the next server in the list. If the connection to the last server in the list fails, it attempts to connect to the first one.
{
"api": "admin",
"action": "createStreamingConnection",
"params": {
"streamingConnectionName": "db1",
"logLevel": "error",
"metadata": {},
"maxSecondsBeforeConnectingToNextServer": 15,
"streamParallelism": 4,
"sourceServers": [
{
"purpose": "Primary Server",
"sourceServerName": "FAIRCOMS",
"sourceHostname": "10.70.13.112",
"sourcePort": 5597,
"sourceUsername": "ADMIN",
"sourcePassword": "ADMIN",
"tls": {
"enabled": true,
"caCertificateFilename": "ca.crt",
"allowedCipherSuites": "",
"clientCertificateEnabled": true,
"clientCertificateFilename": "admin_client.crt",
"clientPrivateKeyFilename": "admin_client.key"
}
},
{
"purpose": "Secondary Server",
"sourceServerName": "FAIRCOMS2",
"sourceHostname": "10.70.13.113",
"sourcePort": 5597,
"sourceUsername": "ADMIN",
"sourcePassword": "ADMIN",
"tls": {
"enabled": true,
"caCertificateFilename": "ca.crt",
"allowedCipherSuites": "",
"clientCertificateEnabled": true,
"clientCertificateFilename": "admin_client.crt",
"clientPrivateKeyFilename": "admin_client.key"
}
}
]
},
"authToken": "replaceWithAuthTokenFromCreateSession"
}
Response examples
Maximal
{
"authToken": "authToken",
"result": {
"streamingConnectionName": "db1",
"logLevel": "error",
"metadata": {},
"streamParallelism": 4,
"sourceServers": [
{
"purpose": "Primary Server",
"sourceServerName": "FAIRCOMS",
"sourceHostname": "10.70.13.112",
"sourcePort": 5597,
"sourceUsername": "ADMIN",
"sourcePassword": "ADMIN",
"tls": {
"enabled": true,
"caCertificateFilename": "ca.crt",
"allowedCipherSuites": "",
"clientCertificateEnabled": true,
"clientCertificateFilename": "admin_client.crt",
"clientPrivateKeyFilename": "admin_client.key"
}
},
{
"purpose": "Secondary Server",
"sourceServerName": "FAIRCOMS2",
"sourceHostname": "10.70.13.113",
"sourcePort": 5597,
"sourceUsername": "ADMIN",
"tls": {
"enabled": true,
"caCertificateFilename": "ca.crt",
"allowedCipherSuites": "",
"clientCertificateEnabled": true,
"clientCertificateFilename": "admin_client.crt",
"clientPrivateKeyFilename": "admin_client.key"
}
}
]
},
"errorCode": 0,
"errorMessage": ""
}
Properties
Request properties ("params")
| Property | Description | Default | Type | Limits (inclusive) |
|---|---|---|---|---|
logLevel |
The "logLevel" property defines what type of messages the replication agent will log. |
Optional with default of "warning"
|
string enum |
|
maxSecondsBeforeConnectingToNextServer |
The "maxSecondsBeforeConnectingToNextServer" property specifies the maximum number of seconds the server will attempt to reconnect to the existing server before it attempts to connect to the next server in the "sourceServers" list. |
Optional with default of 30
|
int32 |
1 to 65535
|
metadata |
The "metadata" property contains user-defined properties that add keywords and tags about the code package. The server indexes this field with a full-text index so you can search for any word or phrase to find code packages. |
Optional with default of {}
|
object | 0 or more key/value pairs |
sourceServers |
The "sourceServers" property contains a list of FairCom DB or RTG server connection objects. FairCom MQ attempts to connect to the first server in the list. If that fails, it attempts to connect to the next one. If it reaches the last server in the list, it attempts to connect to the first. |
Required - No default value | array of server connection objects | {
"purpose": "Primary Server",
"sourceServerName": "FAIRCOMS",
"sourceHostname": "10.70.13.112",
"sourcePort": 5597,
"sourceUsername": "ADMIN",
"sourcePassword": "ADMIN",
"tls": {
"enabled": true,
"caCertificateFilename": "ca.crt",
"allowedCipherSuites": "",
"clientCertificateEnabled": true,
"clientCertificateFilename": "admin_client.crt",
"clientPrivateKeyFilename": "admin_client.key"
}
}
|
|
sourceServers .purpose |
The
In the Thing API, the
The Thing API uses the Label API to manage purposes.
|
Optional with default of
|
string | 1 to 64 bytes |
|
sourceServers .sourceHostname |
The "sourceHostname" property specifies a unique host name or TCP/IP address of a FairCom DB or RTG server. |
Required - No default value | string | 1 to 255 bytes |
|
sourceServers .sourcePassword |
The "sourcePassword" property specifies the login password of a FairCom DB or RTG server. |
Optional with default of "ADMIN"
|
string | 1 to 128 bytes |
|
sourceServers .sourcePort |
The "sourcePort" property specifies the ISAM TCP/IP port of a FairCom DB or RTG server. |
Optional with default of 5597
|
int16 |
1 to 65535
|
|
sourceServers .sourceServerName |
The "sourceServerName" property specifies the server name of a FairCom DB or RTG server. It is the name specified by the SERVER_NAME keyword defined in the target server's configuration file, ctsrvr.cfg. The server name used by most FairCom DB and RTG servers is "FAIRCOMS". |
Required if "sourceHostname" is not defined - No default value |
string | 1 to 255 bytes |
|
sourceServers .sourceUsername |
The
|
Required - No default value | string | 1 to 31 bytes |
|
sourceServers .tls |
The "tls" property defines the public server certificate filename, the private key filename, the certificate authority filename, the cipher suites that are allowed, and whether the client certificate is required. |
Optional with default of {}
|
object |
|
|
sourceServers tls .allowedCipherSuites |
The
|
Optional with default of ""
|
string | No limits |
|
sourceServers tls .caCertificateFilename |
The
|
Optional with default of ""
|
string | No limits |
|
sourceServers tls .clientCertificateEnabled |
The "clientCertificateEnabled" property enables client certificate authentication if true. The target FairCom DB or RTG server must be configured to accept client certificates. |
Optional with default of false
|
boolean |
|
|
sourceServers tls .clientCertificateFilename |
Required - No default value | string | No limits | |
|
sourceServers tls .clientPrivateKeyFilename |
Required - No default value | string | No limits | |
|
sourceServers tls .enabled |
The "tls": {
"enabled": true,
"caCertificateFilename": "ca.crt",
"allowedCipherSuites": "",
"clientCertificateEnabled": true,
"clientCertificateFilename": "admin_client.crt",
"clientPrivateKeyFilename": "admin_client.key"
} |
Optional with default of true
|
Boolean |
|
streamingConnectionName |
The "streamingConnectionName" property specifies a unique, user-defined name for a streaming connection. The API uses it to identify streaming connections and to connect a data change stream to a FairCom DB or RTG server. |
Required - No default value | string | 1 to 64 characters |
streamParallelism |
The "streamParallelism" property specifies the number of parallel streams the server uses to deliver data changes to the FairCom MQ server. You typically use a number that does not exceed the number of cores on the FairCom MQ server. |
Optional with default of 8
|
integer |
1 to 65535
|
Response properties ("result")
| Property | Description | Type | Limits (inclusive) |
|---|---|---|---|
logLevel |
The "logLevel" property defines what type of messages the replication agent will log. |
string enum |
|
metadata |
The "metadata" property contains user-defined properties that add keywords and tags about the code package. The server indexes this field with a full-text index so you can search for any word or phrase to find code packages. |
object | 0 or more key/value pairs |
sourceServers |
The "sourceServers" property contains a list of FairCom DB or RTG server connection objects. FairCom MQ attempts to connect to the first server in the list. If that fails, it attempts to connect to the next one. If it reaches the last server in the list, it attempts to connect to the first. |
array of server connection objects | {
"purpose": "Primary Server",
"sourceServerName": "FAIRCOMS",
"sourceHostname": "10.70.13.112",
"sourcePort": 5597,
"sourceUsername": "ADMIN",
"sourcePassword": "ADMIN",
"tls": {
"enabled": true,
"caCertificateFilename": "ca.crt",
"allowedCipherSuites": "",
"clientCertificateEnabled": true,
"clientCertificateFilename": "admin_client.crt",
"clientPrivateKeyFilename": "admin_client.key"
}
}
|
|
sourceServers .purpose |
The
In the Thing API, the
The Thing API uses the Label API to manage purposes.
|
string | 1 to 64 bytes |
|
sourceServers .sourceHostname |
The "sourceHostname" property specifies a unique host name or TCP/IP address of a FairCom DB or RTG server. |
string | 1 to 255 bytes |
|
sourceServers .sourcePassword |
The "sourcePassword" property specifies the login password of a FairCom DB or RTG server. |
string | 1 to 128 bytes |
|
sourceServers .sourcePort |
The "sourcePort" property specifies the ISAM TCP/IP port of a FairCom DB or RTG server. |
int16 |
1 to 65535
|
|
sourceServers .sourceServerName |
The "sourceServerName" property specifies the server name of a FairCom DB or RTG server. It is the name specified by the SERVER_NAME keyword defined in the target server's configuration file, ctsrvr.cfg. The server name used by most FairCom DB and RTG servers is "FAIRCOMS". |
string | 1 to 255 bytes |
|
sourceServers .sourceUsername |
The
|
string | 1 to 31 bytes |
|
sourceServers .tls |
The "tls" property defines the public server certificate filename, the private key filename, the certificate authority filename, the cipher suites that are allowed, and whether the client certificate is required. |
object |
|
|
sourceServers tls .allowedCipherSuites |
The
|
string | No limits |
|
sourceServers tls .caCertificateFilename |
The
|
string | No limits |
|
sourceServers tls .clientCertificateEnabled |
The "clientCertificateEnabled" property enables client certificate authentication if true. The target FairCom DB or RTG server must be configured to accept client certificates. |
boolean |
|
|
sourceServers tls .clientCertificateFilename |
string | No limits | |
|
sourceServers tls .clientPrivateKeyFilename |
string | No limits | |
|
sourceServers tls .enabled |
The "tls": {
"enabled": true,
"caCertificateFilename": "ca.crt",
"allowedCipherSuites": "",
"clientCertificateEnabled": true,
"clientCertificateFilename": "admin_client.crt",
"clientPrivateKeyFilename": "admin_client.key"
} |
Boolean |
|
streamingConnectionName |
The "streamingConnectionName" property specifies a unique, user-defined name for a streaming connection. The API uses it to identify streaming connections and to connect a data change stream to a FairCom DB or RTG server. |
string | 1 to 64 characters |
streamParallelism |
The "streamParallelism" property specifies the number of parallel streams the server uses to deliver data changes to the FairCom MQ server. You typically use a number that does not exceed the number of cores on the FairCom MQ server. |
integer |
1 to 65535
|