diff --git a/docs/index.md b/docs/index.md index 37dece5b62023e70b49c905a8f68b0e06e053502..35aab9ec67dada6b41e4b118c62ed9863611adad 100644 --- a/docs/index.md +++ b/docs/index.md @@ -80,11 +80,6 @@ no.nibio.vips.logic.SYSTEM_TIME_EXACT_DATE=2021-08-01 no.nibio.vips.logic.START_SCHEDULING_ON_BOOT=false # MD5 hash salt for passwords encryption no.nibio.vips.logic.MD5_SALT=XXXXXXXXXXXXXXXXXXXXXXXXXXXXX -# Where to find the model running server. Could be VIPSCore (simpler for testing purposes) or VIPSCoreManager -no.nibio.vips.logic.VIPSCOREMANAGER_URL=http://localhost:8080/VIPSCoreManager -# If you're using VIPSCoreManager as the running server, you need valid credentials -no.nibio.vips.logic.CORE_BATCH_USERNAME=foobar -no.nibio.vips.logic.CORE_BATCH_PASSWORD=XXXXXXXX # Mail server hostname for sending mails to users (e.g. when registering a new user) no.nibio.vips.logic.SMTP_SERVER=mail4.foobar.com # Path to news message illustrations (served statically by Apache/Nginx) diff --git a/src/main/java/no/nibio/vips/logic/controller/session/SchedulingBean.java b/src/main/java/no/nibio/vips/logic/controller/session/SchedulingBean.java index 44f498c3a525eb55051bfc117496b6fa3ca8ea99..e0401c60838670749c582aafc4d3e027afe37904 100755 --- a/src/main/java/no/nibio/vips/logic/controller/session/SchedulingBean.java +++ b/src/main/java/no/nibio/vips/logic/controller/session/SchedulingBean.java @@ -18,53 +18,38 @@ package no.nibio.vips.logic.controller.session; -import it.sauronsoftware.cron4j.Predictor; -import it.sauronsoftware.cron4j.Scheduler; -import it.sauronsoftware.cron4j.SchedulingPattern; -import it.sauronsoftware.cron4j.TaskCollector; -import it.sauronsoftware.cron4j.TaskExecutor; -import it.sauronsoftware.cron4j.TaskTable; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.Calendar; import java.util.Date; -import java.util.HashMap; import java.util.HashSet; import java.util.List; -import java.util.Map; import java.util.Set; import java.util.SortedMap; import java.util.TimeZone; import java.util.TreeMap; +import it.sauronsoftware.cron4j.Predictor; +import it.sauronsoftware.cron4j.Scheduler; +import it.sauronsoftware.cron4j.SchedulingPattern; +import it.sauronsoftware.cron4j.TaskCollector; +import it.sauronsoftware.cron4j.TaskExecutor; +import it.sauronsoftware.cron4j.TaskTable; import jakarta.ejb.EJB; import jakarta.ejb.Stateless; import jakarta.persistence.EntityManager; import jakarta.persistence.PersistenceContext; import jakarta.persistence.Query; -import jakarta.ws.rs.client.Client; -import jakarta.ws.rs.client.ClientBuilder; -import jakarta.ws.rs.client.WebTarget; -import jakarta.ws.rs.core.GenericType; -import jakarta.ws.rs.core.Response; -import no.nibio.vips.coremanager.service.ManagerResource; -import no.nibio.vips.entity.ModelConfiguration; -import no.nibio.vips.entity.ModelRunRequest; -import no.nibio.vips.entity.Result; -import no.nibio.vips.logic.scheduling.VIPSLogicTaskCollector; -import no.nibio.vips.logic.entity.ForecastConfiguration; import no.nibio.vips.logic.entity.Organization; import no.nibio.vips.logic.entity.TaskHistory; import no.nibio.vips.logic.entity.TaskHistoryStatus; import no.nibio.vips.logic.entity.VipsLogicUser; import no.nibio.vips.logic.scheduling.TaskLoggerSchedulerListener; +import no.nibio.vips.logic.scheduling.VIPSLogicTaskCollector; import no.nibio.vips.logic.scheduling.VipsLogicTask; import no.nibio.vips.logic.scheduling.VipsLogicTaskFactory; -import no.nibio.vips.logic.scheduling.model.PreprocessorException; -import no.nibio.vips.logic.scheduling.model.preprocessor.NaerstadModelPreprocessor; import no.nibio.vips.logic.util.Globals; import no.nibio.vips.logic.util.SystemTime; -import org.jboss.resteasy.client.jaxrs.ResteasyWebTarget; /** * @copyright 2013 <a href="http://www.nibio.no/">NIBIO</a> @@ -240,30 +225,6 @@ public class SchedulingBean { return runningTaskExecutors.toArray(new TaskExecutor[runningTaskExecutors.size()]); } - public List<Result> testPreprocessor() throws PreprocessorException - { - //AppleScabModelPreprocessor p = new AppleScabModelPreprocessor(); - NaerstadModelPreprocessor p = new NaerstadModelPreprocessor(); - ForecastConfiguration c = em.find(ForecastConfiguration.class, 7l); - ModelConfiguration config = p.getModelConfiguration(c); - - ModelRunRequest request = new ModelRunRequest(config); - Map<String,String> loginInfo = new HashMap<>(); - loginInfo.put("username","testuser"); - loginInfo.put("password","testpass"); - request.setLoginInfo(loginInfo); - - Response resp = this.getManagerResource().runModel(p.getModelId(), request); - List<Result> results = resp.readEntity(new GenericType<List<Result>>(){}); - - // We delete all former results before we store the new ones - forecastBean.storeResults(c,results); - - - - return results; - } - /** * * @return List of scheduled tasks, ordered chronologically by next predicted @@ -367,16 +328,6 @@ public class SchedulingBean { } } - public ManagerResource getManagerResource() - { - Client client = ClientBuilder.newClient(); - WebTarget target = client.target(System.getProperty("no.nibio.vips.logic.VIPSCOREMANAGER_URL")); - ResteasyWebTarget rTarget = (ResteasyWebTarget) target; - ManagerResource resource = rTarget.proxy(ManagerResource.class); - return resource; - } - - public void logTaskLaunching(TaskExecutor taskExecutor) { VipsLogicTask task = (VipsLogicTask) taskExecutor.getTask(); diff --git a/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/BarleyNetBlotchModelService.java b/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/BarleyNetBlotchModelService.java index 0b36340b8b4cff43322937d9cf31570be42b30fa..9241bd6d341b4787229bffe1286051e7ed113810 100755 --- a/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/BarleyNetBlotchModelService.java +++ b/src/main/java/no/nibio/vips/logic/modules/barleynetblotch/BarleyNetBlotchModelService.java @@ -18,9 +18,15 @@ package no.nibio.vips.logic.modules.barleynetblotch; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Collections; +import java.util.Date; +import java.util.HashSet; +import java.util.List; +import java.util.TimeZone; +import org.slf4j.LoggerFactory; import com.webcohesion.enunciate.metadata.Facet; - -import java.util.*; import jakarta.ejb.EJB; import jakarta.persistence.EntityManager; import jakarta.persistence.NoResultException; @@ -35,7 +41,10 @@ import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.entity.Result; import no.nibio.vips.entity.WeatherObservation; import no.nibio.vips.logic.controller.session.ForecastBean; -import no.nibio.vips.logic.entity.*; +import no.nibio.vips.logic.entity.Organism; +import no.nibio.vips.logic.entity.Organization; +import no.nibio.vips.logic.entity.PointOfInterestWeatherStation; +import no.nibio.vips.logic.entity.Preparation; import no.nibio.vips.logic.util.RunModelException; import no.nibio.vips.logic.util.SystemTime; import no.nibio.vips.observation.ObservationImpl; @@ -44,7 +53,6 @@ import no.nibio.vips.util.ParseRESTParamUtil; import no.nibio.vips.util.WeatherElements; import no.nibio.vips.util.weather.WeatherDataSourceException; import no.nibio.vips.util.weather.WeatherDataSourceUtil; -import org.slf4j.LoggerFactory; /** * @copyright 2015 <a href="http://www.nibio.no/">NIBIO</a> @@ -54,8 +62,6 @@ import org.slf4j.LoggerFactory; @Facet("restricted") public class BarleyNetBlotchModelService { private static final org.slf4j.Logger LOGGER = LoggerFactory.getLogger(BarleyNetBlotchModelService.class); - - private final static String VIPSCOREMANAGER_URL = System.getProperty("no.nibio.vips.logic.VIPSCOREMANAGER_URL"); @PersistenceContext(unitName="VIPSLogic-PU") EntityManager em; diff --git a/src/main/java/no/nibio/vips/logic/modules/roughage/RoughageService.java b/src/main/java/no/nibio/vips/logic/modules/roughage/RoughageService.java index 9c63267b3c37998c6e9233d1f3c025ed794d2f36..3931c791274e1577c803eff618224b7bea577366 100755 --- a/src/main/java/no/nibio/vips/logic/modules/roughage/RoughageService.java +++ b/src/main/java/no/nibio/vips/logic/modules/roughage/RoughageService.java @@ -18,7 +18,6 @@ package no.nibio.vips.logic.modules.roughage; -import com.webcohesion.enunciate.metadata.Facet; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Arrays; @@ -30,8 +29,8 @@ import java.util.List; import java.util.Map; import java.util.TimeZone; import java.util.stream.Collectors; +import com.webcohesion.enunciate.metadata.Facet; import jakarta.ejb.EJB; - import jakarta.persistence.EntityManager; import jakarta.persistence.PersistenceContext; import jakarta.persistence.Query; @@ -41,7 +40,6 @@ import jakarta.ws.rs.PathParam; import jakarta.ws.rs.Produces; import jakarta.ws.rs.QueryParam; import jakarta.ws.rs.core.Response; -import jakarta.ws.rs.core.Response.Status; import no.nibio.vips.entity.ModelConfiguration; import no.nibio.vips.entity.Result; import no.nibio.vips.entity.WeatherObservation; @@ -68,7 +66,6 @@ import no.nibio.vips.util.weather.WeatherStationProviderFactory; @Path("rest/roughage") @Facet("restricted") public class RoughageService { - private final static String VIPSCOREMANAGER_URL = System.getProperty("no.nibio.vips.logic.VIPSCOREMANAGER_URL"); @PersistenceContext(unitName="VIPSLogic-PU") EntityManager em; diff --git a/src/main/java/no/nibio/vips/logic/service/LogicService.java b/src/main/java/no/nibio/vips/logic/service/LogicService.java index 28c15783c57823b5f38f615392ae3cf7a72fefa1..98a30fb6093e658827a60dc2dfc664a7c677ca28 100755 --- a/src/main/java/no/nibio/vips/logic/service/LogicService.java +++ b/src/main/java/no/nibio/vips/logic/service/LogicService.java @@ -33,6 +33,15 @@ import java.util.Set; import java.util.TimeZone; import java.util.UUID; import java.util.stream.Collectors; +import org.apache.commons.validator.routines.EmailValidator; +import org.jboss.resteasy.annotations.GZIP; +import org.jboss.resteasy.spi.HttpRequest; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.ibm.icu.util.ULocale; +import com.webcohesion.enunciate.metadata.Facet; +import com.webcohesion.enunciate.metadata.rs.TypeHint; +import de.micromata.opengis.kml.v_2_2_0.Kml; import jakarta.ejb.EJB; import jakarta.persistence.NonUniqueResultException; import jakarta.servlet.http.HttpServletRequest; @@ -44,24 +53,10 @@ import jakarta.ws.rs.Path; import jakarta.ws.rs.PathParam; import jakarta.ws.rs.Produces; import jakarta.ws.rs.QueryParam; -import jakarta.ws.rs.client.Client; -import jakarta.ws.rs.client.ClientBuilder; -import jakarta.ws.rs.client.WebTarget; import jakarta.ws.rs.core.Context; import jakarta.ws.rs.core.HttpHeaders; import jakarta.ws.rs.core.Response; import jakarta.ws.rs.core.Response.Status; -import org.apache.commons.validator.routines.EmailValidator; -import org.jboss.resteasy.annotations.GZIP; -import org.jboss.resteasy.client.jaxrs.ResteasyWebTarget; -import org.jboss.resteasy.spi.HttpRequest; -import com.fasterxml.jackson.core.type.TypeReference; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.ibm.icu.util.ULocale; -import com.webcohesion.enunciate.metadata.Facet; -import com.webcohesion.enunciate.metadata.rs.TypeHint; -import de.micromata.opengis.kml.v_2_2_0.Kml; -import no.nibio.vips.coremanager.service.ManagerResource; import no.nibio.vips.entity.WeatherObservation; import no.nibio.vips.logic.authenticate.PasswordValidationException; import no.nibio.vips.logic.controller.session.DeleteUserException; @@ -102,8 +97,7 @@ import no.nibio.web.forms.FormValidationException; */ @Path("rest") public class LogicService { - private final static String VIPSCOREMANAGER_URL = System.getProperty("no.nibio.vips.logic.VIPSCOREMANAGER_URL"); - + @Context private HttpRequest httpRequest; @Context @@ -1544,19 +1538,4 @@ public class LogicService { } - /** - * Get the client to use for calling VIPSCoreManager REST services programmatically - * @return - */ - private ManagerResource getManagerResource() - { - Client client = ClientBuilder.newClient(); - WebTarget target = client.target(VIPSCOREMANAGER_URL); - ResteasyWebTarget rTarget = (ResteasyWebTarget) target; - ManagerResource resource = rTarget.proxy(ManagerResource.class); - return resource; - } - - - } diff --git a/src/main/webapp/TestPreprocessor.jsp b/src/main/webapp/TestPreprocessor.jsp deleted file mode 100755 index e358c481d6bd6b56d927d80038bc26c1ea4b9b02..0000000000000000000000000000000000000000 --- a/src/main/webapp/TestPreprocessor.jsp +++ /dev/null @@ -1,34 +0,0 @@ -<%-- - Document : TestPreprocessor - Created on : Oct 29, 2013, 1:48:14 PM - Author : treinar ---%> -<%@page import="no.nibio.vips.entity.Result"%> -<%@page import="java.util.List"%> -<%@page import="no.nibio.vips.logic.util.SystemTime"%> -<%@page import="no.nibio.vips.logic.util.SessionControllerGetter"%> -<%@page import="no.nibio.vips.logic.controller.session.SchedulingBean"%> -<%@page import="no.nibio.vips.logic.entity.ForecastConfiguration"%> -<%@page import="no.nibio.vips.logic.scheduling.model.preprocessor.NaerstadModelPreprocessor"%> -<% - SchedulingBean sBean = SessionControllerGetter.getSchedulingBean(); - List<Result> results = sBean.testPreprocessor(); -%> -<%@page contentType="text/html" pageEncoding="UTF-8"%> -<!DOCTYPE html> -<html> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> - <title>TestPreprocessor</title> - </head> - <body> - <h1>TestPreprocessor</h1> - <p>System time = <%= SystemTime.getSystemTime()%></p> - <h2>Result</h2> - <table> - <% for(Result result:results) { %> - <tr><td><%=result.getResultValidTime()%></td><td><%=result.getWarningStatus()%></td></tr> - <% } %> - </table> - </body> -</html> diff --git a/wildfly_config_examples/20.0.0/standalone.xml b/wildfly_config_examples/20.0.0/standalone.xml index fddbf5af47e2776a529c0231e97c58d24aa6cac9..0bc00c7bd0e64bfbf522e766c81734a9401cf0d3 100644 --- a/wildfly_config_examples/20.0.0/standalone.xml +++ b/wildfly_config_examples/20.0.0/standalone.xml @@ -44,9 +44,6 @@ <property name="no.nibio.vips.logic.SYSTEM_TIME_OFFSET_MONTHS" value="-13"/> <property name="no.nibio.vips.logic.START_SCHEDULING_ON_BOOT" value="false"/> <property name="no.nibio.vips.logic.MD5_SALT" value="XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"/> - <property name="no.nibio.vips.logic.VIPSCOREMANAGER_URL" value="http://localhost:8080/VIPSCoreManager"/> - <property name="no.nibio.vips.logic.CORE_BATCH_USERNAME" value="vipsbatch"/> - <property name="no.nibio.vips.logic.CORE_BATCH_PASSWORD" value="XXXXXXXX"/> <property name="no.nibio.vips.logic.SMTP_SERVER" value="mail4.nibio.no"/> <property name="no.nibio.vips.logic.MESSAGE_ILLUSTRATION_PATH" value="/home/developer/vips/temp/static/images/messages"/> <property name="no.nibio.vips.logic.OBSERVATION_ILLUSTRATION_PATH" value="/home/developer/vips/temp/static/images/observations"/> diff --git a/wildfly_config_examples/25.0.0/standalone.xml b/wildfly_config_examples/25.0.0/standalone.xml index 952b996abf4e6225c234d503a871e1e678ea18a9..bf7b1cdd7b6833a886b730b93d02c5464b97a87e 100644 --- a/wildfly_config_examples/25.0.0/standalone.xml +++ b/wildfly_config_examples/25.0.0/standalone.xml @@ -44,9 +44,6 @@ <property name="no.nibio.vips.logic.SYSTEM_TIME_OFFSET_MONTHS" value="-13"/> <property name="no.nibio.vips.logic.START_SCHEDULING_ON_BOOT" value="false"/> <property name="no.nibio.vips.logic.MD5_SALT" value="XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"/> - <property name="no.nibio.vips.logic.VIPSCOREMANAGER_URL" value="http://localhost:8080/VIPSCoreManager"/> - <property name="no.nibio.vips.logic.CORE_BATCH_USERNAME" value="foobar"/> - <property name="no.nibio.vips.logic.CORE_BATCH_PASSWORD" value="XXXXXXXX"/> <property name="no.nibio.vips.logic.SMTP_SERVER" value="mail4.foobar.com"/> <property name="no.nibio.vips.logic.MESSAGE_ILLUSTRATION_PATH" value="/home/developer/vips/temp/static/images/messages"/> <property name="no.nibio.vips.logic.OBSERVATION_ILLUSTRATION_PATH" value="/home/developer/vips/temp/static/images/observations"/>