Displaying differences for changeset
 
display as  

nbproject/ant-deploy.xml

@@ -40,18 +40,30 @@
     </target>
     <target name="-deploy-ant" if="deploy.ant.enabled" depends="-init,-check-credentials">
         <echo message="Deploying ${deploy.ant.archive} to ${Context(path)}"/>
-        <taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask"
-                 classpath="${tomcat.home}/server/lib/catalina-ant.jar"/>
-        <deploy url="${tomcat.url}/manager" username="${tomcat.username}"
+        <taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask">
+            <classpath>
+                <pathelement path="${tomcat.home}/lib/catalina-ant.jar"/>
+                <pathelement path="${tomcat.home}/lib/tomcat-coyote.jar"/>
+                <pathelement path="${tomcat.home}/lib/tomcat-util.jar"/>
+                <pathelement path="${tomcat.home}/bin/tomcat-juli.jar"/>
+            </classpath>
+        </taskdef>
+        <deploy url="${tomcat.url}/manager/text" username="${tomcat.username}"
                 password="${tomcat.password}" path="${Context(path)}"
                 war="${deploy.ant.archive}"/>
         <property name="deploy.ant.client.url" value="${tomcat.url}${Context(path)}"/>
     </target>
     <target name="-undeploy-ant" if="deploy.ant.enabled" depends="-init,-check-credentials">
         <echo message="Undeploying ${Context(path)}"/>
-        <taskdef name="undeploy"  classname="org.apache.catalina.ant.UndeployTask"
-                classpath="${tomcat.home}/server/lib/catalina-ant.jar"/>
-        <undeploy url="${tomcat.url}/manager" username="${tomcat.username}" 
+        <taskdef name="undeploy"  classname="org.apache.catalina.ant.UndeployTask">
+            <classpath>
+                <pathelement path="${tomcat.home}/lib/catalina-ant.jar"/>
+                <pathelement path="${tomcat.home}/lib/tomcat-coyote.jar"/>
+                <pathelement path="${tomcat.home}/lib/tomcat-util.jar"/>
+                <pathelement path="${tomcat.home}/bin/tomcat-juli.jar"/>
+            </classpath>
+        </taskdef>
+        <undeploy url="${tomcat.url}/manager/text" username="${tomcat.username}" 
                   password="${tomcat.password}" path="${Context(path)}"/>
     </target>
 </project>

nbproject/build-impl.xml

@@ -50,36 +50,6 @@
     </target>
     <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" if="dist.ear.dir" name="-do-ear-init"/>
     <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init">
-        <webproject1:property name="platform.home" value="platforms.${platform.active}.home"/>
-        <webproject1:property name="platform.bootcp" value="platforms.${platform.active}.bootclasspath"/>
-        <webproject1:property name="platform.compiler" value="platforms.${platform.active}.compile"/>
-        <webproject1:property name="platform.javac.tmp" value="platforms.${platform.active}.javac"/>
-        <condition property="platform.javac" value="${platform.home}/bin/javac">
-            <equals arg1="${platform.javac.tmp}" arg2="$${platforms.${platform.active}.javac}"/>
-        </condition>
-        <property name="platform.javac" value="${platform.javac.tmp}"/>
-        <webproject1:property name="platform.java.tmp" value="platforms.${platform.active}.java"/>
-        <condition property="platform.java" value="${platform.home}/bin/java">
-            <equals arg1="${platform.java.tmp}" arg2="$${platforms.${platform.active}.java}"/>
-        </condition>
-        <property name="platform.java" value="${platform.java.tmp}"/>
-        <webproject1:property name="platform.javadoc.tmp" value="platforms.${platform.active}.javadoc"/>
-        <condition property="platform.javadoc" value="${platform.home}/bin/javadoc">
-            <equals arg1="${platform.javadoc.tmp}" arg2="$${platforms.${platform.active}.javadoc}"/>
-        </condition>
-        <property name="platform.javadoc" value="${platform.javadoc.tmp}"/>
-        <fail unless="platform.home">Must set platform.home</fail>
-        <fail unless="platform.bootcp">Must set platform.bootcp</fail>
-        <fail unless="platform.java">Must set platform.java</fail>
-        <fail unless="platform.javac">Must set platform.javac</fail>
-        <fail if="platform.invalid">
- The J2SE Platform is not correctly set up.
- Your active platform is: ${platform.active}, but the corresponding property "platforms.${platform.active}.home" is not found in the project's properties files. 
- Either open the project in the IDE and setup the Platform with the same name or add it manually.
- For example like this:
-     ant -Duser.properties.file=&lt;path_to_property_file&gt; jar (where you put the property "platforms.${platform.active}.home" in a .properties file)
-  or ant -Dplatforms.${platform.active}.home=&lt;path_to_JDK_home&gt; jar (where no properties file is used) 
-  </fail>
         <condition property="have.tests">
             <or>
                 <available file="${test.src.dir}"/>
@@ -221,6 +191,15 @@
                 <length length="0" string="${endorsed.classpath}" when="greater"/>
             </and>
         </condition>
+        <condition else="false" property="jdkBug6558476">
+            <and>
+                <matches pattern="1\.[56]" string="${java.specification.version}"/>
+                <not>
+                    <os family="unix"/>
+                </not>
+            </and>
+        </condition>
+        <property name="javac.fork" value="${jdkBug6558476}"/>
         <condition property="junit.available">
             <or>
                 <available classname="org.junit.Test" classpath="${run.test.classpath}"/>
@@ -315,7 +294,7 @@
                 <property location="${build.dir}/empty" name="empty.dir"/>
                 <mkdir dir="${empty.dir}"/>
                 <mkdir dir="@{apgeneratedsrcdir}"/>
-                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" executable="${platform.javac}" fork="yes" includeantruntime="false" includes="@{includes}" source="${javac.source}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
+                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" srcdir="@{srcdir}" target="${javac.target}">
                     <src>
                         <dirset dir="@{gensrcdir}" erroronmissingdir="false">
                             <include name="*"/>
@@ -352,7 +331,7 @@
             <sequential>
                 <property location="${build.dir}/empty" name="empty.dir"/>
                 <mkdir dir="${empty.dir}"/>
-                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" executable="${platform.javac}" fork="yes" includeantruntime="false" includes="@{includes}" source="${javac.source}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
+                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" includeantruntime="false" includes="@{includes}" source="${javac.source}" srcdir="@{srcdir}" target="${javac.target}">
                     <src>
                         <dirset dir="@{gensrcdir}" erroronmissingdir="false">
                             <include name="*"/>
@@ -429,7 +408,7 @@
             <attribute default="" name="testmethods"/>
             <element name="customize" optional="true"/>
             <sequential>
-                <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${platform.java}" showoutput="true" tempdir="${java.io.tmpdir}">
+                <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${java.io.tmpdir}">
                     <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
                     <syspropertyset>
                         <propertyref prefix="test-sys-prop."/>
@@ -452,7 +431,7 @@
             <element name="customize" optional="true"/>
             <sequential>
                 <property name="run.jvmargs.ide" value=""/>
-                <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${platform.java}" showoutput="true" tempdir="${build.dir}">
+                <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${build.dir}">
                     <batchtest todir="${build.test.results.dir}">
                         <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
                             <filename name="@{testincludes}"/>
@@ -492,7 +471,7 @@
                     </fileset>
                 </union>
                 <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>
-                <testng classfilesetref="test.set" failureProperty="tests.failed" jvm="${platform.java}" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="csip-wepp" testname="TestNG tests" workingDir="${basedir}">
+                <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="csip-wepp" testname="TestNG tests" workingDir="${basedir}">
                     <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>
                     <propertyset>
                         <propertyref prefix="test-sys-prop."/>
@@ -570,7 +549,7 @@
             <attribute default="" name="testmethods"/>
             <element name="customize" optional="true"/>
             <sequential>
-                <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${platform.java}" showoutput="true" tempdir="${java.io.tmpdir}">
+                <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${java.io.tmpdir}">
                     <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
                     <syspropertyset>
                         <propertyref prefix="test-sys-prop."/>
@@ -594,7 +573,7 @@
             <element name="customize" optional="true"/>
             <sequential>
                 <property name="run.jvmargs.ide" value=""/>
-                <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${platform.java}" showoutput="true" tempdir="${build.dir}">
+                <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${build.dir}">
                     <batchtest todir="${build.test.results.dir}">
                         <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
                             <filename name="@{testincludes}"/>
@@ -717,7 +696,7 @@
             <attribute default="${debug.classpath}" name="classpath"/>
             <element name="customize" optional="true"/>
             <sequential>
-                <java classname="@{classname}" fork="true" jvm="${platform.java}">
+                <java classname="@{classname}" fork="true">
                     <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
                     <jvmarg line="${runmain.jvmargs}"/>
                     <classpath>
@@ -749,9 +728,6 @@
                     <classpath>
                         <path path="@{classpath}"/>
                     </classpath>
-                    <bootclasspath>
-                        <path path="${platform.bootcp}"/>
-                    </bootclasspath>
                 </nbjpdastart>
             </sequential>
         </macrodef>
@@ -786,7 +762,7 @@
             <attribute default="${application.args.param}" name="args"/>
             <element name="customize" optional="true"/>
             <sequential>
-                <java classname="@{classname}" fork="true" jvm="${platform.java}">
+                <java classname="@{classname}" fork="true">
                     <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
                     <jvmarg value="-agentlib:jdwp=transport=${debug-transport},address=${jpda.address}"/>
                     <jvmarg line="${runmain.jvmargs}"/>
@@ -1208,9 +1184,6 @@
             <sourcepath>
                 <path path="${web.docbase.dir}"/>
             </sourcepath>
-            <bootclasspath>
-                <path path="${platform.bootcp}"/>
-            </bootclasspath>
         </nbjpdaconnect>
     </target>
     <target if="do.display.browser.debug.old" name="debug-display-browser-old">
@@ -1333,7 +1306,7 @@
             -->
     <target depends="init" if="have.sources" name="javadoc-build">
         <mkdir dir="${dist.javadoc.dir}"/>
-        <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" executable="${platform.javadoc}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">
+        <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">
             <classpath>
                 <path path="${javac.classpath}:${j2ee.platform.classpath}"/>
             </classpath>

nbproject/project.properties

@@ -7,7 +7,7 @@
 file.reference.jcommon-1.0.23.jar=lib\\jcommon-1.0.23.jar
 file.reference.jfreechart-1.5.2.jar=lib/jfreechart-1.5.2.jar
 file.reference.velocity-tools-generic-2.0.jar=lib\\velocity-tools-generic-2.0.jar
-j2ee.platform.classpath=${j2ee.server.home}/lib/annotations-api.jar:${j2ee.server.home}/lib/catalina-ant.jar:${j2ee.server.home}/lib/catalina-ha.jar:${j2ee.server.home}/lib/catalina-storeconfig.jar:${j2ee.server.home}/lib/catalina-tribes.jar:${j2ee.server.home}/lib/catalina.jar:${j2ee.server.home}/lib/ecj-4.6.3.jar:${j2ee.server.home}/lib/el-api.jar:${j2ee.server.home}/lib/jasper-el.jar:${j2ee.server.home}/lib/jasper.jar:${j2ee.server.home}/lib/jaspic-api.jar:${j2ee.server.home}/lib/jsp-api.jar:${j2ee.server.home}/lib/servlet-api.jar:${j2ee.server.home}/lib/tomcat-api.jar:${j2ee.server.home}/lib/tomcat-coyote.jar:${j2ee.server.home}/lib/tomcat-dbcp.jar:${j2ee.server.home}/lib/tomcat-i18n-de.jar:${j2ee.server.home}/lib/tomcat-i18n-es.jar:${j2ee.server.home}/lib/tomcat-i18n-fr.jar:${j2ee.server.home}/lib/tomcat-i18n-ja.jar:${j2ee.server.home}/lib/tomcat-i18n-ko.jar:${j2ee.server.home}/lib/tomcat-i18n-ru.jar:${j2ee.server.home}/lib/tomcat-i18n-zh-CN.jar:${j2ee.server.home}/lib/tomcat-jdbc.jar:${j2ee.server.home}/lib/tomcat-jni.jar:${j2ee.server.home}/lib/tomcat-util-scan.jar:${j2ee.server.home}/lib/tomcat-util.jar:${j2ee.server.home}/lib/tomcat-websocket.jar:${j2ee.server.home}/lib/websocket-api.jar
+j2ee.platform.classpath=${j2ee.server.home}/bin/tomcat-juli.jar:${j2ee.server.home}/lib/annotations-api.jar:${j2ee.server.home}/lib/catalina-ant.jar:${j2ee.server.home}/lib/catalina-ha.jar:${j2ee.server.home}/lib/catalina-storeconfig.jar:${j2ee.server.home}/lib/catalina-tribes.jar:${j2ee.server.home}/lib/catalina.jar:${j2ee.server.home}/lib/ecj-4.6.3.jar:${j2ee.server.home}/lib/el-api.jar:${j2ee.server.home}/lib/jasper-el.jar:${j2ee.server.home}/lib/jasper.jar:${j2ee.server.home}/lib/jaspic-api.jar:${j2ee.server.home}/lib/jsp-api.jar:${j2ee.server.home}/lib/servlet-api.jar:${j2ee.server.home}/lib/tomcat-api.jar:${j2ee.server.home}/lib/tomcat-coyote.jar:${j2ee.server.home}/lib/tomcat-dbcp.jar:${j2ee.server.home}/lib/tomcat-i18n-de.jar:${j2ee.server.home}/lib/tomcat-i18n-es.jar:${j2ee.server.home}/lib/tomcat-i18n-fr.jar:${j2ee.server.home}/lib/tomcat-i18n-ja.jar:${j2ee.server.home}/lib/tomcat-i18n-ko.jar:${j2ee.server.home}/lib/tomcat-i18n-ru.jar:${j2ee.server.home}/lib/tomcat-i18n-zh-CN.jar:${j2ee.server.home}/lib/tomcat-jdbc.jar:${j2ee.server.home}/lib/tomcat-jni.jar:${j2ee.server.home}/lib/tomcat-util-scan.jar:${j2ee.server.home}/lib/tomcat-util.jar:${j2ee.server.home}/lib/tomcat-websocket.jar:${j2ee.server.home}/lib/websocket-api.jar
 #Thu Dec 17 13:44:32 MST 2015
 javadoc.splitindex=true
 lib.dir=${web.docbase.dir}/WEB-INF/lib
@@ -16,7 +16,7 @@
 javadoc.author=false
 j2ee.platform=1.6-web
 dist.war=${dist.dir}/${war.name}
-javac.target=1.8
+javac.target=17
 build.generated.dir=${build.dir}/generated
 resource.dir=setup
 build.web.excludes=${build.classes.excludes}
@@ -40,7 +40,7 @@
 dist.dir=dist
 project.csip-core=../csip-core
 rest.config.type=ide
-javac.source=1.8
+javac.source=17
 javac.debug=true
 javac.test.processorpath=${javac.test.classpath}
 run.test.classpath=\
@@ -51,7 +51,7 @@
 javadoc.notree=false
 source.root=src
 runmain.jvmargs=
-platform.active=JDK_1.8
+platform.active=default_platform
 javadoc.preview=true
 j2ee.deploy.on.save=false
 annotation.processing.enabled=true
@@ -95,8 +95,8 @@
     ${javac.classpath}
 build.test.results.dir=${build.dir}/test/results
 display.browser=false
-endorsed.classpath=\
-    ${libs.javaee-endorsed-api-6.0.classpath}
+#endorsed.classpath=\
+#    ${libs.javaee-endorsed-api-6.0.classpath}
 javadoc.use=true
 build.web.dir=${build.dir}/web
 javadoc.nonavbar=false

nbproject/project.xml

@@ -10,7 +10,6 @@
         <data xmlns="http://www.netbeans.org/ns/web-project/3">
             <name>csip-wepp</name>
             <minimum-ant-version>1.6.5</minimum-ant-version>
-            <explicit-platform explicit-source-supported="true"/>
             <web-module-libraries>
                 <library dirs="200">
                     <file>${libs.CSIP-Jersey-2.16.classpath}</file>

src/java/m/wepp/V2_0.java

@@ -23,6 +23,7 @@
 import java.time.temporal.ChronoUnit;
 import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.TimeUnit;
@@ -39,6 +40,7 @@
 import org.codehaus.jettison.json.JSONArray;
 import org.codehaus.jettison.json.JSONException;
 import org.codehaus.jettison.json.JSONObject;
+import util.DBResources;
 import util.WEPPUtils;
 import util.WeppConstants;
 import util.DBconnection;
@@ -183,10 +185,9 @@
   static final String WEPP_RAND_SEED = "randSeed";
   static final String WEPP_ONLY_MANAGMENTS = "onlyConvertManagements";
 
-
   @Override
   protected Map<String, Object> getConfigInfo() {
-    Map<String, Object> c = new HashMap<>();
+    Map<String, Object> c = new LinkedHashMap<>();
     try {
       setURLs();
       c.put(CONFIG_SOIL_URL, soilServiceURL);
@@ -195,8 +196,8 @@
       c.put(CONFIG_CROPS_URL, cropsURL);
       c.put(CONFIG_OPERATIONS_URL, operationsURL);
       c.put(CONFIG_RESIDUES_URL, residueURL);
-      c.put("wepp.model", resources().getResolved("wepp"));
-      c.put("weppserv.model", resources().getResolved("weppserv"));
+      c.put("wepp", resources().getResolved("wepp"));
+      c.put("weppserv", resources().getResolved("weppserv"));
     } catch (ServiceException ex) {
       LOG.log(Level.SEVERE, null, ex);
       c.put("conf", "error " + ex.getMessage());
@@ -204,7 +205,6 @@
     return c;
   }
 
-
   protected void setURLs() throws ServiceException {
     soilServiceURL = getConfigString(buildConfigKey(modelVersion, CONFIG_SOIL_URL));
     climateServiceURL = getConfigString(buildConfigKey(modelVersion, CONFIG_CLIGEN_PRISM_URL));
@@ -216,7 +216,6 @@
     residueURL = getConfigString(buildConfigKey(modelVersion, CONFIG_RESIDUES_URL));
   }
 
-
   protected static String getConfigString(String key) throws ServiceException {
     String ret_val = Config.getString(key);
     if (null == ret_val) {
@@ -340,7 +339,6 @@
   boolean adjustPWW_PWD;
   int randomSeedVal;
 
-
   /**
    * Initialize WEPP workspace. This requires creating a couple subdirectories.
    * In addition the connections to the sqlite databases are verified.
@@ -378,7 +376,6 @@
     return true;
   }
 
-
   /**
    * Calls the CSIP service to run CLIGEN and return a climate file with
    * optional PRISM adjustments.
@@ -454,7 +451,6 @@
     }
   }
 
-
   /**
    * Get the topo segments from the request and build a WEPP format single OFE
    * slope file. For multiple OFE simulations the c++ code will take of
@@ -511,7 +507,6 @@
     FileUtils.writeStringToFile(slopeFile, output.toString(), "UTF-8");
   }
 
-
   /**
    * Get the curve characteristics from the request and build a WEPP format
    * single OFE slope file. For multiple OFE simulations the c++ code will take
@@ -593,7 +588,6 @@
     FileUtils.writeStringToFile(slopeFile, output.toString(), "UTF-8");
   }
 
-
   /**
    * This calls functions to build the WEPP soil files. This uses the NRCS
    * SSURGO web services so it needs to be updated to use the local CSIP
@@ -663,7 +657,6 @@
     shortSoilName = theSoil.getSoilName();
   }
 
-
   /**
    * Builds the WEPP rotation files. The low level WEPP management files are
    * built by the c++ program since the format is so unreadable when multiple
@@ -712,7 +705,6 @@
     return calVegs;
   }
 
-
   /**
    * From a strip/barrier name adjust the array of managements.
    *
@@ -905,7 +897,6 @@
     return sections;
   }
 
-
   /**
    * This creates the wepp project file that lists all the input files and
    * options for the simulation. The c++ wepphillsopeserv program uses this file
@@ -1031,7 +1022,6 @@
     FileUtils.writeStringToFile(prjFile, output.toString(), "UTF-8");
   }
 
-
   /**
    * Get input parameters from WEPP request. This is the first call done by the
    * CSIP framework to setup any parameters from the request JSON.
@@ -1344,7 +1334,6 @@
     }
   }
 
-
   /**
    * Calls functions to build the WEPP input files and then run WEPP. This is
    * the main starting point after the call to preprocess.
@@ -1472,7 +1461,6 @@
     }
   }
 
-
   /**
    * Insert IET specific names into the response
    */
@@ -1502,7 +1490,6 @@
     results().put("mgmtPtr", manPtrs, "IET Use - Managements");
   }
 
-
   /**
    * convert sedimentYield from (t/ac/yr) unit to (t/yr) unit.
    *
@@ -1513,7 +1500,6 @@
     return (weppmodel.getSedyield() * 50 * slopeLength * WeppConstants.CONV_M_TO_FT) / 43560;  // self.slopeWith is always 50 ft.
   }
 
-
   /**
    * Get the vegetation name associated with a key.
    *
@@ -1531,7 +1517,6 @@
     return null;
   }
 
-
   /**
    * check whether calibration factor--BEINP(factor) is out of range. Out of
    * range means the factor is less than 0.5 or greater than 2).
@@ -1602,7 +1587,6 @@
     return res;
   }
 
-
   /**
    * Extract some WEPP outputs and include links to model input and output
    * files.
@@ -1833,7 +1817,6 @@
 
   }
 
-
   /**
    * Reads the event-by-event WEPP output file and creates a continuous daily
    * file with 3 columns: Date - month-day-year Loss - soil loss in ton/ac for
@@ -1920,7 +1903,6 @@
     }
   }
 
-
   private void reportClimateValues(String crop, ClimateDataPreprocessing climate, String simulationType, int startYear, LocalDate startDate, LocalDate endDate) throws JSONException {
     ClimateDataHourly climateData = climate.getClimateValues(startYear, startDate, endDate);
     results().put(crop + "_avgPrecipDur_" + simulationType + "_sl", Numeric.round(climateData.averagePrecipDuration(startYear), 3));
@@ -2171,7 +2153,6 @@
     private String harvesting;
     private int yield;
 
-
     public Crop(int crlmod_id, String planting, String harvesting, int yield) {
       this.crlmod_id = crlmod_id;
       this.planting = planting;
@@ -2179,33 +2160,28 @@
       this.yield = yield;
     }
 
-
     public String getPlantingNextYear() {
       LocalDate d = LocalDate.parse(planting);
       LocalDate dd = d.plusYears(2);
       return dd.toString();
     }
 
-
     public String getHarvestingNextYear() {
       LocalDate d = LocalDate.parse(harvesting);
       LocalDate dd = d.plusYears(2);
       return dd.toString();
     }
 
-
     public String getPlantingPreviousYear() {
       return LocalDate.parse(planting).minusYears(1).toString();
     }
 
-
     public String getHarvestingPreviousYear() {
       return LocalDate.parse(harvesting).minusYears(1).toString();
     }
 
   }
 
-
   private void extractCrop2(String[] o, Model we, ClimateDataPreprocessing climate, String cropIndex) throws JSONException, FileNotFoundException, IOException, ServiceException, Exception {
 //    int crop2 = 2;
 
@@ -2602,7 +2578,6 @@
     }
   }
 
-
   public static void main(String[] args) throws Exception {
     try (TextParser e = new TextParser(new File("/tmp/csip/work/29/13/ae8b01d5-90c3-11eb-ac79-2b71fe1625d1/wepp.cli"))
         .autoClose(false)
@@ -2623,7 +2598,6 @@
     }
   }
 
-
   static double weightedAverageSol(List<double[]> layer, int idx) {
     double acc = 0.0;
     double total_weight = 0.0;
@@ -2634,7 +2608,6 @@
     return Numeric.round(acc / total_weight, 3);
   }
 
-
   protected void putExpectedFileResult(String filename, String description, boolean skip) throws IOException, ServiceException {
     try {
       results().put(workspace().getFile(filename), description);
@@ -2648,7 +2621,6 @@
     }
   }
 
-
   /**
    * Create the report for CSIP. This is used by IET.
    *
@@ -3074,7 +3046,6 @@
     report().putMetaInfo("Sediment delivery, statistics", "dim", "STATTYPES");
   }
 
-
   /**
    * Read the WEPP plot file output.
    *
@@ -3106,7 +3077,6 @@
     return vals;
   }
 
-
   /**
    * Read the WEPP plot file output.
    *
@@ -3151,7 +3121,6 @@
     return vals;
   }
 
-
   /**
    * Create a file with JSON data that will be the basis for the PDF template.
    *
@@ -3240,7 +3209,6 @@
     return rep;
   }
 
-
   /**
    * Go through the PDF JSON and fill in the data from the management that is
    * not known until after the run.
@@ -3479,7 +3447,6 @@
     FileUtils.writeStringToFile(intervalFile, allIntervals, "UTF-8");
   }
 
-
   /**
    * Return the name of the contour selection.
    *
@@ -3497,7 +3464,6 @@
     }
   }
 
-
   /**
    * Check if service has requested contouring.
    *
@@ -3519,7 +3485,6 @@
     }
   }
 
-
   protected File zipParams() throws IOException, JSONException {
     File paramZip;
     File source, dest;
@@ -3705,7 +3670,6 @@
     return paramZip;
   }
 
-
   protected void addToZipFile(File file, ZipOutputStream zos) throws FileNotFoundException, IOException {
     LOG.info("Adding to zip file: " + file);
     FileInputStream fis = new FileInputStream(file);

web/WEB-INF/csip-defaults.json

@@ -1,5 +1,5 @@
 { 
-  "csip.context.version": "$version: 2.1.139 default 630 5673580eeede 2023-08-23 sidereus <francesco.serafin.3@gmail.com>, built at 2023-11-01 14:41 by od$",
+  "csip.context.version": "$version: 2.2.1 default 633 1f0d5c9af532 2023-11-01 od, built at 2024-05-10 14:55 by od$",
   "csip.archive.enabled"  : true,
   "csip.archive.backend" : "mongodb",
   "csip.archive.mongodb.uri" : "mongodb://localhost:27017/csip",