Mercurial > dive4elements > gnv-client
view gnv-artifacts/doc/conf/products/timeseries/conf_timeseriespoint.xml @ 337:a887074460b6
Last Step of the Refactoring Work on the Transition Model.
Splitted Businesslogic between States and Transitions.
Splitted the ConfigurationElements of State and Transition in several XML-Fragments.
gnv-artifacts/trunk@403 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Tue, 08 Dec 2009 13:38:21 +0000 |
parents | e964a3d8f7bc |
children | ca5162aa644d |
line wrap: on
line source
<?xml version="1.0" encoding="UTF-8"?> <artifact name="timeSeries"> <!-- This is the Artifact which represents the required Businesslogic to collect the required Data for rendering specified OutputFormats for TimeSeries on TimeSeriesPoint-Data. * Charts * Statistics * CSV * ODV --> <states> <!-- The required statesteps which must be done until rendering the OutputFormats. Each state is represented one required Step. One Steps can consume specified InputParameters an after that it can calculate new Data which will be used as possible InputValues in the next state-Step from each state it is only possible to move to those states which are Configured in the rechablestates-Tag --> <!-- Description of the state-Attributes: * id: The id of the state. This must be unique in one Artifact. It is used to reference the state eg. in reachablestates. * description: A short description which should describe the state * state: The Class which must be load to handle the required logic, This class will be load using reflection. --> <state id="timeseries_area" description="timeseries_area_one" state="de.intevation.gnv.state.DefaultState"> <!-- The QueryID which identifies the Query which is configured in the Queries-Properties-File. It is possible to define no Query. In this case you have to remove this Element from the Configuration.--> <queryID>area_filter</queryID> <!-- The ID of the Data which will be fetched using this state. The Name must be unique in one Artifact. The Name is used for the localization and must be set into the several PropertiesFiles for the localization. --> <dataname>areaid</dataname> <!-- This Flag will be used to switch between single and multiselect possibility of the Data which will be fetched using this state. --> <data-multiselect>false</data-multiselect> <!-- Optional Flag which can be used to set that is is possible to select no entry in the Data which will be fetched using this state. --> <data-noselect>true</data-noselect> <inputvalues> <!-- At this place it is necessary to configure the Elements which must be feed and can be used in this state. It is possible to set if the Values should be used in the DatabaseQuery of this state and how often it must be used. The order of the Elements is also the Order of usage setting the Values into the SQL-Query. --> <inputvalue name="sourceid" type="Integer" multiselect="false" usedinquery="0"/> <inputvalue name="fisname" type="String" multiselect="false" usedinquery="0"/> <inputvalue name="areaid" type="Integer" multiselect="false" usedinquery="0"/> </inputvalues> </state> <transition transition="de.intevation.gnv.transition.ValueCompareTransition"> <from state="timeseries_area"/> <to state="timeseries_subarea"/> <condition inputvalue="areaid" value="n/n" operator="notequal"/> </transition> <transition transition="de.intevation.gnv.transition.ValueCompareTransition"> <from state="timeseries_area"/> <to state="timeseries_without_geom"/> <condition inputvalue="areaid" value="n/n" operator="equal"/> </transition> <state id="timeseries_subarea" description="timeseries_subaera" state="de.intevation.gnv.state.DefaultState"> <queryID>subarea_filter</queryID> <dataname>subareaid</dataname> <data-multiselect>false</data-multiselect> <inputvalues> <inputvalue name="sourceid" type="Integer" multiselect="false" usedinquery="0"/> <inputvalue name="fisname" type="String" multiselect="false" usedinquery="0"/> <inputvalue name="areaid" type="Integer" multiselect="false" usedinquery="1"/> <inputvalue name="subareaid" type="Integer" multiselect="false" usedinquery="0"/> </inputvalues> </state> <transition transition="de.intevation.gnv.transition.DefaultTransition"> <from state="timeseries_subarea"/> <to state="timeseries_timeseriespoint"/> </transition> <state id="timeseries_without_geom" description="timeseries_mesh_without_geom" state="de.intevation.gnv.state.DefaultState"> <queryID>timeseries_timeseriespoint</queryID> <dataname>featureid</dataname> <data-multiselect>false</data-multiselect> <inputvalues> <inputvalue name="sourceid" type="Integer" multiselect="false" usedinquery="1"/> <inputvalue name="fisname" type="String" multiselect="false" usedinquery="0"/> <inputvalue name="featureid" type="Integer" multiselect="false" usedinquery="0"/> </inputvalues> </state> <transition transition="de.intevation.gnv.transition.DefaultTransition"> <from state="timeseries_without_geom"/> <to state="timeseries_parameter"/> </transition> <state id="timeseries_timeseriespoint" description="timeseries_timeseriespoint" state="de.intevation.gnv.state.DefaultState"> <queryID>timeseries_timeseriespoint_with_area</queryID> <dataname>featureid</dataname> <data-multiselect>false</data-multiselect> <inputvalues> <inputvalue name="sourceid" type="Integer" multiselect="false" usedinquery="1"/> <inputvalue name="fisname" type="String" multiselect="false" usedinquery="0"/> <inputvalue name="subareaid" type="Integer" multiselect="false" usedinquery="1"/> <inputvalue name="featureid" type="Integer" multiselect="false" usedinquery="0"/> </inputvalues> </state> <transition transition="de.intevation.gnv.transition.DefaultTransition"> <from state="timeseries_timeseriespoint"/> <to state="timeseries_parameter"/> </transition> <state id="timeseries_parameter" description="timeseries_parameter" state="de.intevation.gnv.state.DefaultState"> <queryID>timeseries_parameter</queryID> <dataname>parameterid</dataname> <data-multiselect>true</data-multiselect> <inputvalues> <inputvalue name="featureid" type="Integer" multiselect="false"/> <inputvalue name="fisname" type="String" multiselect="false" usedinquery="0"/> <inputvalue name="parameterid" type="Integer" multiselect="true" usedinquery="0"/> </inputvalues> </state> <transition transition="de.intevation.gnv.transition.DefaultTransition"> <from state="timeseries_parameter"/> <to state="timeseries_depth_height"/> </transition> <state id="timeseries_depth_height" description="timeseries_depth_height" state="de.intevation.gnv.state.DefaultState"> <queryID>timeseries_depth_height</queryID> <dataname>measurementid</dataname> <data-multiselect>true</data-multiselect> <inputvalues> <inputvalue name="featureid" type="Integer" multiselect="false"/> <inputvalue name="parameterid" type="Integer" multiselect="true"/> <inputvalue name="fisname" type="String" multiselect="false" usedinquery="0"/> <inputvalue name="measurementid" type="Integer" multiselect="true" usedinquery="0"/> </inputvalues> </state> <transition transition="de.intevation.gnv.transition.DefaultTransition"> <from state="timeseries_depth_height"/> <to state="timeseries_interval"/> </transition> <state id="timeseries_interval" description="timeseries_interval" state="de.intevation.gnv.state.MinMaxState"> <queryID>timeseries_interval</queryID> <dataname>timeinterval</dataname> <data-multiselect>false</data-multiselect> <inputvalues> <inputvalue name="fisname" type="String" multiselect="false" usedinquery="0"/> <inputvalue name="parameterid" type="Integer" multiselect="true"/> <inputvalue name="measurementid" type="Integer" multiselect="true"/> <inputvalue name="minvalue" type="Date" multiselect="false" usedinquery="0"/> <inputvalue name="maxvalue" type="Date" multiselect="false" usedinquery="0"/> </inputvalues> </state> <transition transition="de.intevation.gnv.transition.DefaultTransition"> <from state="timeseries_interval"/> <to state="timeseries_calculate_results"/> </transition> <!-- Last state is the Output-state. At this place the differen OutputModes are configured. For each OutputMode it might be necessary to configure separat Databasequery which collect the Data. --> <state id="timeseries_calculate_results" description="timeseries_interval" state="de.intevation.gnv.state.timeseries.TimeSeriesOutputState"> <queryID>timeseries_chart_data</queryID> <queryID-odv>timeseries_odv_data</queryID-odv> <inputvalues> <inputvalue name="parameterid" type="Integer" multiselect="true"/> <inputvalue name="measurementid" type="Integer" multiselect="true"/> <inputvalue name="fisname" type="String" multiselect="false" usedinquery="0"/> <inputvalue name="minvalue" type="Date" multiselect="false"/> <inputvalue name="maxvalue" type="Date" multiselect="false"/> </inputvalues> <outputsModes> <outputsMode name="chart" description="Chartrepresentation of the Values" mime-type="image/png"> <parameters> <inputvalue name="width" type="Integer" value="600"/> <inputvalue name="height" type="Integer" value="400"/> </parameters> </outputsMode> <outputsMode name="svg" description="PDF-Export der Daten" mime-type="application/pdf"/> <outputsMode name="pdf" description="PDF-Export der Daten" mime-type="application/pdf"/> <outputsMode name="csv" description="CSV-Export der Daten" mime-type="text/plain"/> <outputsMode name="odv" description="ODV-Export der Daten" mime-type="text/plain"/> <outputsMode name="statistics" description="Statistik zu den Daten" mime-type="text/xml"/> </outputsModes> <!-- Definition of the TimeGaps which are required to render the Charts properly. each Parameter in each FIS can have --> <time-gap-definition xlink:href="${artifacts.config.dir}/products/timeseries/timegap_definition.xml" /> </state> </states> </artifact>