From 79e2837fb31bfed373b6f71cfd3c2c3d77188093 Mon Sep 17 00:00:00 2001
From: Tor-Einar Skog <tor-einar.skog@nibio.no>
Date: Mon, 14 Mar 2022 10:53:13 +0100
Subject: [PATCH] Adding data type check of fieldObservations

---
 .../java/no/nibio/vips/core/service/ModelResourceImpl.java | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/main/java/no/nibio/vips/core/service/ModelResourceImpl.java b/src/main/java/no/nibio/vips/core/service/ModelResourceImpl.java
index aa37372..8b3a42c 100755
--- a/src/main/java/no/nibio/vips/core/service/ModelResourceImpl.java
+++ b/src/main/java/no/nibio/vips/core/service/ModelResourceImpl.java
@@ -320,7 +320,8 @@ public class ModelResourceImpl implements ModelResource{
             {
                 config.setConfigParameter("observations", dt.getVIPSWeatherData(config.getWeatherData()));
             }
-            if(config.getConfigParameter("fieldObservations") != null)
+            
+            if(config.getConfigParameter("fieldObservations") != null && List.class.isAssignableFrom(config.getConfigParameter("fieldObservations").getClass()))
             {
                 config.setConfigParameter("pestObservations", dt.getVIPSPestObservations(
                         (List) config.getConfigParameter("fieldObservations"),
@@ -328,6 +329,10 @@ public class ModelResourceImpl implements ModelResource{
                         )
                 );
             }
+            else if(!List.class.isAssignableFrom(config.getConfigParameter("fieldObservations").getClass()))
+            {
+            	throw new ConfigValidationException("ERROR: fieldObservations must be of type array");
+            }
             Model calledModel = ModelFactory.getInstance().getModelInstance(modelId);
             calledModel.setConfiguration(config);
             List<Result> results = calledModel.getResult();  
-- 
GitLab