Configuration files
This page provides information on configuring the WallStreet Adapter.
The configuration files describe on this page can be found under the <framework_root>/global_config/overrides/WallStreetAdapter/etc
directory when the adapter is deployed to the Caplin Deployment Framework.
The WallStreet Adapter does not ship with a WSS client license and will not start without one. See WSS client-licence files below. |
Adapter configuration files
The following configuration files are provided with the adapter.
File: adapter.conf
Reserved for future use.
File: adapter-properties.yaml
Since: 1.6.0 (incorporates file permissions.yaml
, which was discontinued in 1.6.0)
WallStreet Adapter properties.
accountCodePrefix
WallStreet requires the account numbers for some types of account to be prefixed with a code.
Key | Default | Description |
---|---|---|
type |
Bank account type. |
|
Prefix |
The prefix to apply to the account code. |
Example:
accountCodePrefix:
prefixes:
- type: BSB
code: //AU
- type: TRNO
code: //CC
- type: ABA
code: //FW
- type: UKSORT
code: //SC
- type: NZBA
code: //NZ
caches.settlementInstructionCache.initialDelay
Initial time to wait before publishing first value.
Default: 0
caches.settlementInstructionCache.initialDelay: 0
caches.settlementInstructionCache.period
The period of time between publishing subsequent values.
Default: 60
caches.settlementInstructionCache.period: 60
caches.settlementInstructionCache.timeUnit
The time unit for caches.settlementInstructionCache.initialDelay
and caches.settlementInstructionCache.period
above. Valid values: DAYS
, HOURS
, MICROSECONDS
, MILLISECONDS
, MINUTES
, NANOSECONDS
, and SECONDS
.
Default: SECONDS
caches.settlementInstructionCache.timeUnit: SECONDS
caches.fxDealCache.initialDelay
Initial time to wait before publishing first value.
Default: 0
caches.fxDealCache.initialDelay: 0
caches.fxDealCache.period
The period of time between publishing subsequent values.
Default: 60
caches.fxDealCache.period: 60
caches.fxDealCache.timeUnit
The time unit for caches.fxDealCache.initialDelay
and caches.fxDealCache.period
. Valid values: DAYS
, HOURS
, MICROSECONDS
, MILLISECONDS
, MINUTES
, NANOSECONDS
, and SECONDS
.
Default: SECONDS
caches.fxDealCache.timeUnit: SECONDS
deadlines
The deadlines
map defines the date and time of the default settlement-instruction (SI) confirmation deadline, and includes overrides for specific currencies.
If the currencies in an FX transaction have different SI confirmation deadlines, then the earliest deadline takes precedence and applies to all currencies in the transaction.
Key | Default | Description |
---|---|---|
displayTimezone |
America/New_York |
Time zone for the values of |
defaultCutOffTime |
16:00 |
The time-of-day of the default SI confirmation deadline. Format: |
defaultNoticePeriod |
2 |
The date of the default SI confirmation deadline, expressed as the number of business days prior to the date of settlement. Can be overridden for specific currencies in |
cutOffTimes |
A sequence of maps defining currency-specific overrides to |
Key | Default | Description |
---|---|---|
currency |
The name of the currency expressed as a standard three-letter currency code. |
|
cutOffTime |
The time-of-day of the SI confirmation deadline for this currency. Format: |
|
noticePeriod |
The date of the SI confirmation deadline for this currency, expressed as the number of business days prior to the date of settlement. |
Example:
deadlines:
displayTimezone: "America/New_York"
defaultCutOffTime: "16:00"
defaultNoticePeriod: 2
cutOffTimes:
- currency: "AED"
cutOffTime: "12:00"
noticePeriod: 1
enableTrustedSource
When set to false
, trades with ad-hoc settlement instructions require manual authorisation by bank staff.
Default: false
enableTrustedSource: false
fxDealBlotter.historic.days
Age (in days) of the oldest deal to display in the blotter.
Default: 30
fxDealBlotter.historic.days: 30
fxDealBlotter.paging.size
Number of blotter entries requested at a time when populating the historical blotter.
Default: 500
fxDealBlotter.historic.size: 500
permissions: actionRefRules
A sequence of maps that describe Action Ref rules destined for Caplin’s Permissioning Service.
Each map consists of a series of keyed-values that correspond to the parameters of the Caplin Java Permissioning API’s PermissioningDataSource.createActionRefRule method.
For more information on permissioning, see Caplin-Platform: Permissioning.
Key | Default | Description |
---|---|---|
subjectNameMatch |
Message subject name (regular expression) |
|
permissionNameSpace |
Namespace under which a permission associated with this action must be defined. |
|
actionRef |
The name of the message field containing the name of the action (the 'verb') to be performed on the product (the 'object'). |
|
productRef |
The name of the message field containing the name of the product (the 'object') on which the action (the 'verb') is performed. Accepts the |
Example:
permissions:
actionRefRules:
- subjectNameMatch: "^/PRIVATE/NOTIFICATIONS/.*"
permissionNameSpace: "NOTIFICATION_OPERATIONS"
actionRef: "NotificationOperation"
productRef: "ALL_PRODUCTS"
permissions: actionRules
A sequence of maps that describe Action rules for Caplin’s Permissioning Service.
Each map consists of a series of keyed-values that correspond to the parameters of the Caplin Java Permissioning API’s PermissioningDataSource.createActionRule method.
For more information on permissioning, see Caplin Platform: Permissioning.
Key | Default | Description |
---|---|---|
subjectNameMatch |
Message subject name (regular expression) |
|
permissionNameSpace |
Namespace under which a permission associated with this action must be defined. |
|
action |
The name of the action (the 'verb'). |
|
productRef |
The name of the message field containing the name of the product (the 'object') on which the action (the 'verb') is performed. Accepts the |
Example:
permissions:
actionRules:
- subjectNameMatch: "^/PRIVATE/PERSISTENCE/%u/CONTROL"
permissionNameSpace: "PERSISTENCE_CONTROL"
action: "PERSISTENCE-CONTROL"
productRef: "ALL_PRODUCTS"
permissions: groups
A sequence of maps in which each map defines a permissioning group and the permissions granted to it.
Key | Default | Description |
---|---|---|
group |
Name of the group |
|
isWallStreetUserGroup |
true |
|
permissions |
The permissions granted to the group. A sequence of maps, in which the keys of each map correspond to the parameters passed to the Java Permissioning API’s Permissionable.applyPermission method. See next table for map specification. |
Key | Default | Description |
---|---|---|
subject |
The name of the product |
|
namespace |
The namespace under which this permission is defined |
|
action |
The action to be performed on the product ( |
|
authorization |
Whether the action is allowed or denied. Valid values: ALLOW, DENY |
Example:
groups:
- name: "global"
permissions:
- subject: ".*"
nameSpace: "NOTIFICATION_OPERATIONS"
action: "DISMISS"
authorization: "ALLOW"
status.initialDelay
Initial delay before the adapter first checks the status of a connection to WallStreet. For the time unit, see status.timeUnit
.
Default: 0
status.initialDelay: 0
status.period
How often the adapter should check the status of a connection to WallStreet when the last-known status is 'up'. For the time unit, see status.timeUnit
.
Default: 30
status.period: 30
status.timeUnit
The time unit used for status.initialDelay
and status.timeUnit
. Valid values: DAYS, HOURS, MICROSECONDS, MILLISECONDS, MINUTES, NANOSECONDS, SECONDS.
Default: SECONDS
status.timeUnit: SECONDS
status.retry.delay
How often the adapter should check the status of the connection to Wallstreet when the last-known status is 'down'.
Default: 5
status.retry.delay: 5
status.retry.timeUnit
The time unit used for status.retry.timeUnit
. Valid values: DAYS, HOURS, MICROSECONDS, MILLISECONDS, MINUTES, NANOSECONDS, SECONDS.
Default: SECONDS
status.retry.timeUnit: SECONDS
queues.unsettled
WallStreet queues containing unsettled trades. Formatted as a single string of single-letter queue names.
Default: 9PWw
queues.unsettled: 9PWw
File: app.properties
WSS client-library configuration file.
Item | Default | Description |
---|---|---|
objecttoolkit.typed |
POOLED |
Do not change. |
objecttoolkit.server |
Required. The hostname or IP address of your WSS core server. Example: |
|
objecttoolkit.port |
Required. The port number of your WSS core server. Example: |
|
objecttoolkit.user |
Required. The username with which the Wallstreet Adapter authenticates with your WSS core server. Example: |
|
objecttoolkit.pass |
Required. The password with which the Wallstreet Adapter authenticates with your WSS core server. Example: |
Item | Default | Description |
---|---|---|
objecttoolkit.pool.preload |
4 |
Number of idle connection objects with which to preload the pool. |
objecttoolkit.pool.apache.minEvictableIdleTimeMillis |
1740000 |
The minimum amount of time (in milliseconds) an object may sit idle in the pool before it is eligible for eviction due to idle time. Specify -1 to stop threads from being evicted on the basis of idle time alone. |
objecttoolkit.pool.apache.timeBetweenEvictionRunsMillis |
30000 |
Indicates how long the eviction thread should sleep before "runs" of examing idle objects. Specify -1 to disable the eviction of idle threads. |
objecttoolkit.pool.apache.maxActive |
-1 |
Maximum number of connection objects, whether active or idle, that are allowed in the pool. Specify -1 for no limit. |
objecttoolkit.pool.apache.maxIdle |
-1 |
Maximum number of connection objects that are allowed to sit idle in the pool. Specify -1 for no limit. |
Item | Default | Description |
---|---|---|
jbs.pool.apache.maxActive |
-1 |
Maximum number of connection objects, whether active or idle, that are allowed in the pool. Specify -1 for no limit. |
jbs.pool.apache.maxIdle |
-1 |
Maximum number of connection objects that are allowed to sit idle in the pool. Specify -1 for no limit. |
Item | Default | Description |
---|---|---|
objecttoolkit.license |
license.txt |
The location of the Wallstreet client licence file. |
objecttoolkit.license.signature |
signature.txt |
The location of the Wallstreet client signature file. |
jbs.server.wsscore.xml.file |
wsscore.xml |
The location of the Wallstreet client configuration file. |
Item | Default | Description |
---|---|---|
objecttoolkit.keyStorePassPhrase |
The pass phrase to the Java key store containing the adapter’s TLS certificates |
|
objecttoolkit.sslKeyStore |
The path to the Java key store holding the adapter’s TLS client certificate. |
|
objecttoolkit.sslTrustStore |
The path to the Java key store holding the adapter’s TLS trusted certificates. |
|
objecttoolkit.sslKeyManager |
For example, |
|
objecttoolkit.sslSSLProvider |
For example, |
|
objecttoolkit.sslContext |
Leave blank or specify |
File: datasource-overrides.conf
Contains the following DataSource configuration items:
For more information on DataSource configuration, see DataSource Configuration Reference: Introduction.
File: log4j2.xml
Configuration file for Apache Log4J 2.
For more information on Log4J configuration, see Log4J Configuration Syntax.
File: permissions.yaml
Discontinued: 1.6.0 (moved to adapter-properties.yaml
in 1.6.0)
Map of permissioning data that the Wallstreet Adapter supplies to the Caplin Permissioning Service, a Liberator auth module.
File: trading-provider.properties
Caplin Trading API for Java configuration file.
WSS client-licence files
The Wall Street Systems client licence files are not provided with the adapter.
Request a client licence from Wall Street Systems and copy the licence files to the <framework_root>/global_config/overrides/WallStreetAdapter/etc/
directory. Alternatively, copy the licence files to custom locations, and specify the custom locations using the configuration options in the Licence file locations table above.
Licence file | Description |
---|---|
license.txt |
Client licence. |
signature.txt |
Digital signature of the client licence. |
wsscore.xml |
Client licence configuration file. |
Do not edit the files of the client licence. The licence is digitally signed, and editing the licence invalidates it. |