From 62c58a17c2dcefe63c4a6e491d0dd62c14ffba4c Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Fri, 2 Feb 2018 11:52:46 +0100 Subject: [PATCH] comparator of model includes functions, parameters, units --- .../map/kinetics/SbmlParameterComparator.java | 2 +- .../map/kinetics/SbmlUnitComparator.java | 2 +- .../model/map/model/ModelComparator.java | 25 +++++++++++++++++++ 3 files changed, 27 insertions(+), 2 deletions(-) diff --git a/model/src/main/java/lcsb/mapviewer/model/map/kinetics/SbmlParameterComparator.java b/model/src/main/java/lcsb/mapviewer/model/map/kinetics/SbmlParameterComparator.java index 6590704a43..4c9becbb15 100644 --- a/model/src/main/java/lcsb/mapviewer/model/map/kinetics/SbmlParameterComparator.java +++ b/model/src/main/java/lcsb/mapviewer/model/map/kinetics/SbmlParameterComparator.java @@ -6,7 +6,7 @@ import lcsb.mapviewer.common.comparator.StringComparator; public class SbmlParameterComparator extends Comparator<SbmlParameter> { - protected SbmlParameterComparator() { + public SbmlParameterComparator() { super(SbmlParameter.class); } diff --git a/model/src/main/java/lcsb/mapviewer/model/map/kinetics/SbmlUnitComparator.java b/model/src/main/java/lcsb/mapviewer/model/map/kinetics/SbmlUnitComparator.java index 4ac63392e0..0f4b585b9f 100644 --- a/model/src/main/java/lcsb/mapviewer/model/map/kinetics/SbmlUnitComparator.java +++ b/model/src/main/java/lcsb/mapviewer/model/map/kinetics/SbmlUnitComparator.java @@ -6,7 +6,7 @@ import lcsb.mapviewer.common.comparator.StringComparator; public class SbmlUnitComparator extends Comparator<SbmlUnit> { - protected SbmlUnitComparator() { + public SbmlUnitComparator() { super(SbmlUnit.class); } diff --git a/model/src/main/java/lcsb/mapviewer/model/map/model/ModelComparator.java b/model/src/main/java/lcsb/mapviewer/model/map/model/ModelComparator.java index dc8eb6f002..f19e1b2e6b 100644 --- a/model/src/main/java/lcsb/mapviewer/model/map/model/ModelComparator.java +++ b/model/src/main/java/lcsb/mapviewer/model/map/model/ModelComparator.java @@ -12,8 +12,15 @@ import lcsb.mapviewer.common.Comparator; import lcsb.mapviewer.common.Configuration; import lcsb.mapviewer.common.comparator.DoubleComparator; import lcsb.mapviewer.common.comparator.IntegerComparator; +import lcsb.mapviewer.common.comparator.SetComparator; import lcsb.mapviewer.common.comparator.StringComparator; import lcsb.mapviewer.model.map.graph.DataMiningSetComparator; +import lcsb.mapviewer.model.map.kinetics.SbmlFunction; +import lcsb.mapviewer.model.map.kinetics.SbmlFunctionComparator; +import lcsb.mapviewer.model.map.kinetics.SbmlParameter; +import lcsb.mapviewer.model.map.kinetics.SbmlParameterComparator; +import lcsb.mapviewer.model.map.kinetics.SbmlUnit; +import lcsb.mapviewer.model.map.kinetics.SbmlUnitComparator; import lcsb.mapviewer.model.map.layout.Layout; import lcsb.mapviewer.model.map.layout.LayoutComparator; import lcsb.mapviewer.model.map.layout.graphics.Layer; @@ -136,6 +143,24 @@ public class ModelComparator extends Comparator<Model> { logger.debug("Set of data mining sets different"); return status; } + SetComparator<SbmlUnit> unitSetComparator = new SetComparator<>(new SbmlUnitComparator()); + status = unitSetComparator.compare(arg0.getUnits(), arg1.getUnits()); + if (status != 0) { + logger.debug("units different"); + return status; + } + SetComparator<SbmlFunction> functionSetComparator = new SetComparator<>(new SbmlFunctionComparator()); + status = functionSetComparator.compare(arg0.getFunctions(), arg1.getFunctions()); + if (status != 0) { + logger.debug("functions different"); + return status; + } + SetComparator<SbmlParameter> parameterSetComparator = new SetComparator<>(new SbmlParameterComparator()); + status = parameterSetComparator.compare(arg0.getParameters(), arg1.getParameters()); + if (status != 0) { + logger.debug("parameters different"); + return status; + } DataMiningSetComparator dataMiningSetComparator = new DataMiningSetComparator(); for (int i = 0; i < arg0.getDataMiningSets().size(); i++) { status = dataMiningSetComparator.compare(arg0.getDataMiningSets().get(i), arg1.getDataMiningSets().get(i)); -- GitLab