diff --git a/src/main/java/no/nibio/vips/model/daydegreemodel/DayDegreeModel.java b/src/main/java/no/nibio/vips/model/daydegreemodel/DayDegreeModel.java index 516ab8228f05f97f3666b4818f519e39655a9907..3a9ef47d9d8fa4e3c127507e9726780ecb59f7f3 100644 --- a/src/main/java/no/nibio/vips/model/daydegreemodel/DayDegreeModel.java +++ b/src/main/java/no/nibio/vips/model/daydegreemodel/DayDegreeModel.java @@ -52,18 +52,15 @@ import no.nibio.vips.util.WeatherUtil; public class DayDegreeModel implements Model { private ModelUtil modelUtil; - //private Double dayDegreeBaseTemp; + private Float dayDegreeBaseTemp; private List<WeatherObservation> TM; - private final Double dayDegreeBaseTemp = 0.0; - + private final static TimeZone DEFAULT_TIME_ZONE = TimeZone.getTimeZone("Europe/Oslo"); - private DataMatrix dataMatrix; public final static ModelId MODEL_ID = new ModelId("DAYDEGREES"); public DayDegreeModel() { - //super(""); this.modelUtil = new ModelUtil(); } @@ -71,14 +68,14 @@ public class DayDegreeModel implements Model { public List<Result> getResult() throws ModelExcecutionException { Collections.sort(this.TM); - + Double dayDegreeSum = 0.0; List<Result> results = new ArrayList<>(); Calendar cal = Calendar.getInstance(this.DEFAULT_TIME_ZONE); DecimalFormat dFormat = new DecimalFormat("###.##"); - + for(WeatherObservation obs:this.TM) { @@ -86,7 +83,7 @@ public class DayDegreeModel implements Model { { dayDegreeSum += obs.getValue(); } - + Result result = new ResultImpl(); result.setValidTimeStart(obs.getTimeMeasured()); result.setValue(this.getModelId().toString(), "DayDegreeSum", dayDegreeSum.toString()); @@ -105,12 +102,11 @@ public class DayDegreeModel implements Model { @Override public String getModelName() { - return null;//this.getModelName(Model.DEFAULT_LANGUAGE); + return null; } @Override public String getModelName(String language) { - //return this.getText("name", language); return "Day Degree model"; } @@ -148,27 +144,27 @@ public class DayDegreeModel implements Model { @Override public String getModelDescription(String language) { - return null; //this.modelUtil.getTextWithBase64EncodedImages(this.getText("description", language), this.getClass()); + return null; } @Override public String getWarningStatusInterpretation() { - return null;//this.getWarningStatusInterpretation(Model.DEFAULT_LANGUAGE); + return null; } @Override public String getWarningStatusInterpretation(String language) { - return null;//this.getText("statusInterpretation", language); + return null; } @Override public String getModelUsage() { - return null; //this.getModelUsage(Model.DEFAULT_LANGUAGE); + return null; } @Override public String getModelUsage(String language) { - return null;//this.getText("usage", language); + return null; } @Override @@ -181,6 +177,7 @@ public class DayDegreeModel implements Model { "\t},\n" + "\t\"modelId\":\"" + MODEL_ID.toString() + "\",\n" + "\t\"configParameters\":{\n" + + "\t\t\"basisTemp\":0,\n" + "\t\t\"observations\":[\n" + "\t\t{\n" + "\t\t\t\t\"timeMeasured\": \"2015-01-01T00:00:00+02:00\",\n" + @@ -193,8 +190,11 @@ public class DayDegreeModel implements Model { @Override public void setConfiguration(ModelConfiguration config) throws ConfigValidationException { + // Initialize the weather data collections this.TM = new ArrayList<>(); + this.dayDegreeBaseTemp = Float.parseFloat((String) config.getConfigParameter("basisTemp")); + ObjectMapper mapper = new ObjectMapper(); List<WeatherObservation> observations = this.modelUtil.extractWeatherObservationList(config.getConfigParameter("observations")); @@ -216,7 +216,7 @@ public class DayDegreeModel implements Model { { this.TM.add(o); } - break; + break; default: // TODO: Throw validation error? break;