Fusion Edge Server Properties
Contents
Overview
The Fusion Edge Server provides configuration options on various aspects of the Edge Server. To set these configurations, create a file under the Edge Server Directory with the name: edgeserver.properties.
Public URL
The Edge Server application and web service URL should be defined in the edge server properties file. These URLs are used in responses to structure queries which include links to associated reference metadata, and stub structures which link back to the full artefact.
The URLs are split into two parts, the application URL, which should be a reference to the public application server, and the rest url which is the POSTfix URL to the web service, for example:
app.url=https://myserver.myorg.org/Edge rest.url=/sdmx
The above setting would make the SDMX web service entry point: https://myserver.myorg.org/Edge/sdmx
Limiting Series and Observations
To place a limit on the number of series and the number of observations that can be queried via the web service the following two properties are supported:
limit.obs=12345 limit.series=1234
The numeric value indicates the maximum number of series or observations that can be returned from a single data query.
If the limit is exceeded an HTTP status code of 413 (Payload Too Large) will be returned to the client.
Limiting Supported Data Formats
To enforce a restriction on which data formats are supported from the REST API of the Fusion Edge Server, use the format.data property as follows:
format.data=[format1],[format2]
This property defines which formats are supported, if this property is not provided all formats will be supported. If this property is provided, only the formats in this list will be supported.
VND Headers are listed in the Data Formats section.
Example:
format.data=application/vnd.sdmx.generictimeseriesdata+xml;version=2.1,application/vnd.sdmx.data+csv
Limiting Supported Structure Formats
To enforce a restriction on which structure formats are supported from the REST API of the Fusion Edge Server, use the format.structure property as follows:
format.structure=[format1],[format2]
This property defines which formats are supported, if this property is not provided all formats will be supported. If this property is provided, only the formats in this list will be supported.
Each [format] is a VND header the supported formats are:
Structure Format | VND Header |
---|---|
SDMX EDI | application/vnd.sdmx.structure;version=edi |
application/vnd.sdmx.structure+xml;version=1.0 | SDMX v1.0 |
application/vnd.sdmx.structure+xml;version=2.0 | SDMX v2.0 |
application/vnd.sdmx.structure+xml;version=2.1 | SDMX v2.1 |
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | Excel |
application/vnd.fusion.json | Fusion JSON |
application/vnd.sdmx.json | SDMX JSON |
Example:
format.structure=application/vnd.sdmx.structure;version=edi,application/vnd.sdmx.json
Limiting Query Functionality
The REST API supports extensions beyond the SDMX Web Service Specification, these can be disabled by using the following properties:
rest.query.post=false
rest.dataset.calculation=false
rest.dataset.aggregate=false
rest.dataset.join=false
CSV Data Format Defaults
To modify the default CSV output is returned, the following properties are supported:
csv.delimiter=comma|tab|space|semicolon csv.labels=ID|NAME|ID_AND_NAME csv.showSeries=true|false csv.includeBom=true|false csv.keySeparator=:
The delimiter is the value of the character that will be output between the elements (defaults to comma).
The values for 'Labels' must be one of the following: ID; NAME; ID_AND_NAME (defaults to ID_AND_NAME). Show Series defines whether to output the series key in the output (defaults to true).
Cross-Origin Resource Sharing (CORS)
By default the CORS policy of the Fusion Edge server is to reject cross domain requests. To provide CORS policy to certain or all domains the cors.policy property should be set.
cors.policy=[policy 1]@[policy 2]@[policy 3]
Each policy is separated by an '@' symbol, within each policy are the following properties, each separated by a '$' symbol:
- Access-Control-Allow-Origin
- headers
- exposed headers
- allow credentials