diff doc/config-manual/model_of_transitions.tex @ 906:03d58951889e

Added first Part of Documentation for Section Model of Transitions doc/trunk@1040 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Fri, 30 Apr 2010 11:12:46 +0000
parents
children 29a675796e76
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/config-manual/model_of_transitions.tex	Fri Apr 30 11:12:46 2010 +0000
@@ -0,0 +1,147 @@
+\section{Model of transitions}
+\subsection{General principle of model of transitions}
+        - FIS -> product -> transitions in data model
+    
+\subsection{Adding a new FIS}
+In this Section it will explained which steps has to be done to integrate a new 
+FIS into the Artifact-Server.
+This will be done using the Configuration for an FIS which use data from 
+MEDIAN.TIMESERIES Section of the DataWareHouse e.g. MARNET or STAUN
+
+Pay attention that for publishing the Changes to the Artifact-Server you will 
+have to restart it. 
+
+\subsubsection{Adding a new Artifactfactory}
+First step is to add a new Artifactfactory to the Configuration conf/conf.xml
+To do this you have to add a new XML-Fragment into the Section 
+/factories/artifact-factories  which look like that:
+
+\begin{lstlisting}
+<artifact-factory name='fis\_NEWFISNAME' 
+                  description='Factory to create an artifact to be used with the FIS NEWFISNAME'  
+                  ttl='3600000' 
+                  artifact='de.intevation.artifactdatabase.ProxyArtifact'>
+                  de.intevation.gnv.artifacts.GNVProductArtifactFactory
+</artifact-factory>
+\end{lstlisting}
+ 
+In this XML-Fragment you only have to replace the placeholder NEWFISNAME with a 
+unique short Name for the new FIS.
+
+\subsubsection{Adding a new Artifact for Artifactfactory}
+The next Step is to define the Artifact itself.
+For this it is necessary to add an XML-Fragment into the Section /artifacts of 
+the main Configuration-File /conf/conf.xml
+\begin{lstlisting}
+<artifact name='fis\_NEWFISNAME'>
+    <products>
+     ...
+    </products>
+</artifact>
+\end{lstlisting}
+
+In this XML- Fragment it is also required to replave the placeholder NEWFISNAME 
+with the name which was used to configure the Artifact-Factory.
+
+Now the ArtifactServer can serv an additional FIS without any Products yet.
+
+To prevent needless Configuration-Work it is useful way to clone an Artifact 
+which handle the same Kind of work as the new FIS.
+
+\subsubsection{Adding removing Products to the specific Artifact}
+Now it is Time to configure the different Products which the FIS should be able 
+to provide.
+To do this it is necessary to Copy the XML-Fragments of the products into the
+XML-Element <products> of the previously integrated Artifact.
+\begin{lstlisting}
+<artifact name='fis\_NEWFISNAME'>
+     <products>
+         <product name= "timeSeries">
+              <artifact-factory name="timeSeries" 
+                                description="Artiefactfactory for Instantiating the Artifact for TimeSeries on TimeSeriesPoints"  
+                                ttl="300000" 
+                                artifact="de.intevation.gnv.timeseries.TimeSeriesArtifact">
+                  de.intevation.gnv.artifacts.GNVArtifactFactory
+              </artifact-factory>
+              <parameters>
+                  <parameter name="sourceid" 
+                             value="VALUEOFSOURCEID"/>
+                  <parameter name="fisname" 
+                             value="fis\_NEWFISNAME"/>
+              </parameters>
+          </product>
+          <product name= "verticalProfile">
+              <artifact-factory name="verticalProfile" 
+                                description="Artiefactfactory for Instantiating the Artifact for Verticalprofiles on TimeSeriesPoints"  
+                                ttl="300000" 
+                                artifact="de.intevation.gnv.profile.vertical.VerticalProfileArtifact">
+                  de.intevation.gnv.artifacts.GNVArtifactFactory
+              </artifact-factory>
+              <parameters>
+                  <parameter name="sourceid" 
+                             value="VALUEOFSOURCEID"/>
+                  <parameter name="fisname" 
+                             value="fis\_NEWFISNAME"/>
+              </parameters>
+          </product>
+     </products>
+</artifact>
+\end{lstlisting}
+
+In this XML Fragment you have to replace the placeholders NEWFISNAME as before 
+and VALUEOFSOURCEID with the value for the new FIS as defined in the Table 
+MEDIAN.SOURCEINFO.
+
+\subsubsection{Putting SourceID to specific Artifact}
+\subsection{Adding a new Product}
+To add a new Product to the System it is necessary that the required 
+Artifactrepresentation is Implemented in the SourceCode.
+Without doing that step it is not possible to create a new Product.
+
+All Products are configured in separate Files that will be included into the 
+Mainconfiguration using Xlink-references.
+
+First Step is to create a new File in the Folder products and there in the 
+subfolder where the Product belongs to (timeseries,verticalprofile,
+horizontalprofile,horizontalcrosssection,layer,...)
+
+Then you have tor reference this File in the File /conf/conf.xml in the Section 
+/artifacts using the following XML-Fragment.
+
+\begin{lstlisting}
+<artifact name="timeSeries" 
+          xmlns:xlink="http://www.w3.org/1999/xlink" 
+          xlink:href="${artifacts.config.dir}/products/PATHTOFILE" /> 
+\end{lstlisting}
+
+The placeholder PATHTOFILE has to be replaced with the relative Path and the 
+Name of the File starting in the Folder products.  
+
+Then it is possible to add the product to a FIS as explained in the next section.
+Please note that the defined Name of the ArtifactFactory has to match to the 
+Name of the added Products which is also designed as an Artifact.
+
+\subsection{Adding a additional Product to a FIS}
+To add a additional Product to a FIS you only have to add the XML-Fragment which 
+represents the product to the Artifact-configuration of the FIS in Section 
+/artifacts/artifact/products.
+
+\begin{lstlisting}
+ <product name= "timeSeries">
+     <artifact-factory name="timeSeries" 
+                       description="Artiefactfactory for Instantiating the Artifact for TimeSeries on TimeSeriesPoints"  
+                       ttl="300000" 
+                       artifact="de.intevation.gnv.timeseries.TimeSeriesArtifact">
+          de.intevation.gnv.artifacts.GNVArtifactFactory
+     </artifact-factory>
+     <parameters>
+         <parameter name="sourceid" 
+                    value="VALUEOFSOURCEID"/>
+         <parameter name="fisname" 
+                    value="fis\_NEWFISNAME"/>
+     </parameters>
+ </product>
+ \end{lstlisting}
+
+Please note that you have to replace the Placeholders as explained above.
+

http://dive4elements.wald.intevation.org