From 0dd43ae82d3b595a4cc919ef8f491b856e22790f Mon Sep 17 00:00:00 2001 From: "patrick.lambert" <patrick.mh.lambert@inrae.fr> Date: Sat, 8 Aug 2020 22:30:21 +0200 Subject: [PATCH] update temperature for RIO basins --- .../fishRIOBasin_Sapidissima.xml | 5 ++- .../updateTemperatureInRIOBasin.java | 32 +++++++++++++++++++ 2 files changed, 34 insertions(+), 3 deletions(-) create mode 100644 src/main/java/environment/updateTemperatureInRIOBasin.java diff --git a/data/input/northeastamerica/fishRIOBasin_Sapidissima.xml b/data/input/northeastamerica/fishRIOBasin_Sapidissima.xml index e51e5c1..1c2c29b 100644 --- a/data/input/northeastamerica/fishRIOBasin_Sapidissima.xml +++ b/data/input/northeastamerica/fishRIOBasin_Sapidissima.xml @@ -326,10 +326,9 @@ <migrationSeasonToReachSummeringOffshore>SPRING</migrationSeasonToReachSummeringOffshore> </species.MigrateToOffshore> - <environment.updateTemperatureInRealBasin> + <environment.updateTemperatureInRIOBasin> <synchronisationMode>ASYNCHRONOUS</synchronisationMode> - <offshoreTemperature>12.0</offshoreTemperature> - </environment.updateTemperatureInRealBasin> + </environment.updateTemperatureInRIOBasin> </processesEachStep> <processesAtEnd> diff --git a/src/main/java/environment/updateTemperatureInRIOBasin.java b/src/main/java/environment/updateTemperatureInRIOBasin.java new file mode 100644 index 0000000..9503b8f --- /dev/null +++ b/src/main/java/environment/updateTemperatureInRIOBasin.java @@ -0,0 +1,32 @@ +package environment; + +import com.thoughtworks.xstream.XStream; +import com.thoughtworks.xstream.io.xml.DomDriver; + +import environment.Time.Season; +import fr.cemagref.simaqualife.kernel.processes.AquaNismsGroupProcess; +import species.DiadromousFish; +import species.DiadromousFishGroup; + +public class updateTemperatureInRIOBasin extends AquaNismsGroupProcess<DiadromousFish, DiadromousFishGroup> { + + public static void main(String[] args) { + System.out.println((new XStream(new DomDriver())).toXML(new updateTemperatureInRIOBasin())); + } + + + @Override + public void doProcess(DiadromousFishGroup group) { + + Time time = group.getEnvironment().getTime(); + + if (time.getSeason(group.getPilot()) == Season.WINTER) { + + Long year = time.getYear(group.getPilot()); + + for (Basin basin : group.getEnvironment().getBasins()) { + basin.updateSeasonalTemperatures(year); + } + } + } +} -- GitLab