...
In order to activate the AQUARIUS Server import as a FEWS import, it is required to setup a TimeSeriesImportRun module configuration file and an accompanying IdMap file. Also the bin directory containing all AQUARIUS resources must be placed in a location that can be accessed by FEWS. For the source code, see: AquariusTimeSeriesRestServerParser.java
Example Import configuration file for the REST service:
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <timeSeriesImportRun xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews file:/d:/FEWS-code/trunk/xml-schemas/timeSeriesImportRun.xsd"> <!-- This is an example import configuration file for importing Observations and Measurements data from a service --> <import> <general> <parserClassName>nl.wldelft.aquarius.timeseriesparsers.AquariusTimeSeriesRestServerParser</parserClassName> <binDir>%REGION_HOME%/Modules/aquarius-bin</binDir> <serverUrl>http://host:port/addUPI</serverUrl> <user>user</user> <password>password</password> <relativeViewPeriod unit="hour" start="-5" end="0" startOverrulable="true" endOverrulable="true"/> <idMapId>IdImportAquarius</idMapId> <unitConversionsId>UnitConversionsAquarius</unitConversionsId> <flagConversionsId>ImportFlagConversion</flagConversionsId> <importTimeZone> <timeZoneOffset>-06:00</timeZoneOffset> </importTimeZone> </general> <properties> <!-- Optional: This option allows the import to control how timeseries are to be imported. If this option is set to 'false' then all timeseries for all locations are imported in one single call to the webservice. If this option is set to 'true' then the import will loop over the available list of locations and import all timeseries belonging to a location in a single call. <bool key="LoopOverLocations" value="false"/> <!-- Optional: Filter option provided by the AQUARIUS server. The AQUARIUS server can provide some different views from which to retrieve data. If the PublishView is not know then omit this value. --> <!-- <string key="PublishView" value="test"/> --> <!-- Optional: With this option it is possible to skip the 'GetDataSetList' call to the AQUARIUS server. What this call does is retrieve all the timeseries ids available for one or more requested location ids. If the import IdMap has already mapped the FEWS parameter and location ids to AQUARIUS timeseries ids then the 'SkipDataSetList' value must be set to 'true'. --> <bool key="SkipDataSetList" value="false"/> </properties> <timeSeriesSet> <moduleInstanceId>ImportAquarius</moduleInstanceId> <valueType>scalar</valueType> <parameterId>MyPar</parameterId> <locationSetId>MyLocSet</locationSetId> <timeSeriesType>external historical</timeSeriesType> <timeStep unit="nonequidistant"/> <readWriteMode>add originals</readWriteMode> <synchLevel>1</synchLevel> </timeSeriesSet> </import> </timeSeriesImportRun> |
Example IdMap file:
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <idMap version="1.1" xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/idMap.xsd"> <!-- OPTION1: map internal timeseries directly to external timeseries (datasets) When using this option the value 'SkipDataSetList' in the Aquarius import module must be set to 'true'. --> <map internalLocation="MyLoc1" internalParameter="MyPar1" externalLocation="AquariusDataSetId01" externalParameter="notused" /> <map internalLocation="MyLoc1" internalParameter="MyPar2" externalLocation="AquariusDataSetId02" externalParameter="notused" /> <!-- OPTION2: map internal timeseries to external locations When using this option the value 'SkipDataSetList' in the Aquarius import module must be set to 'false'. --> <map internalLocation="MyLoc1" internalParameter="MyPar1" externalLocation="AquariusLoc1" externalParameter="notused" /> <map internalLocation="MyLoc1" internalParameter="MyPar2" externalLocation="AquariusLoc2" externalParameter="notused" /> </idMap> |
...
In order to activate the AQUARIUS Server import as a FEWS import, it is required to setup a TimeSeriesImportRun module configuration file and an accompanying IdMap file. Also the bin directory containing all AQUARIUS resources must be placed in a location that can be accessed by FEWS. For the source code see:
Example Import Rating Curve configuration file for the service:
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <timeSeriesImportRun xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews file:/d:/FEWS-code/trunk/xml-schemas/timeSeriesImportRun.xsd"> <!-- This is an example import configuration file for importing Rating Curve data from a service --> <import> <general> <parserClassName>nl.wldelft.aquarius.ratingcurveparsers.AquariusRatingCurveSoapServerParser</parserClassName> <binDir>%REGION_HOME%/Modules/aquarius-bin</binDir> <serverUrl>http://host:port/addUPI</serverUrl> <user>user</user> <password>password</password> <relativeViewPeriod unit="hour" start="-5" end="0" startOverrulable="true" endOverrulable="true"/> <idMapId>IdImportAquariusRatingCurves</idMapId> <unitConversionsId>UnitConversionsAquarius</unitConversionsId> <flagConversionsId>ImportFlagConversion</flagConversionsId> <importTimeZone> <timeZoneOffset>-06:00</timeZoneOffset> </importTimeZone> </general> <locationSetId>Aquarius.Ratings</locationSetId> </import> </timeSeriesImportRun> |
Example IdMap file:
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <idMap version="1.1" xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/idMap.xsd"> <!-- IdMapping for the Aquarius import requires that the FEWS parameter is mapped to: externalQualifier = Aquarius ratingcurve input parameter, externalQualifier1 = Aquarius ratingcurve output parameter externalQualifier2 = either StageDischarge or DischargeStage --> <locationIdFunction internalLocationSet="Aquarius.Ratings" externalLocationFunction="@AQUARIUSID@" externalQualifierFunction="HG" externalQualifierFunction1="QR" externalQualifierFunction2="StageDischarge"/> </idMap> |
...