diff --git a/CHANGELOG b/CHANGELOG index 27846d35f885565812fe10b3aaa33fdf41a86b97..6cc7604fddcab7277a2b77bf0a25b625282b1d74 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,9 @@ +minerva (18.1.1) stable; urgency=medium + * Bug fix: SBGN-ML import/export should not use compartmentOrder for + non-compartment entities (#2193) + + -- Piotr Gawron <piotr.gawron@uni.lu> Tue, 04 Feb 2025 16:00:00 +0200 + minerva (18.1.0) stable; urgency=medium * Small improvement: SBGN-ML import/export is processing notes (#2192) * Small improvement: SBGN-ML import/export is processing compartmentOrder diff --git a/converter-SBGNML/src/main/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlExporter.java b/converter-SBGNML/src/main/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlExporter.java index cc94a4a40b40b103077dbb88e81537b87987dedd..62c8aadb932f260acf9db8c0c97e42e31856968f 100644 --- a/converter-SBGNML/src/main/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlExporter.java +++ b/converter-SBGNML/src/main/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlExporter.java @@ -274,9 +274,6 @@ public class SbgnmlXmlExporter { newGlyph.setClazz(getGlyphClazzFromElement(element).getClazz()); newGlyph.setLabel(getGlyphLabelFromAlias(element)); newGlyph.setNotes(notesConverter.createNotesNode(element.getNotes())); - if (element.getZ() != null) { - newGlyph.setCompartmentOrder(element.getZ().floatValue()); - } final Bbox bbox = new Bbox(); bbox.setX(element.getX().floatValue()); @@ -285,7 +282,11 @@ public class SbgnmlXmlExporter { bbox.setH(element.getHeight().floatValue()); newGlyph.setBbox(bbox); - if (element instanceof Species) { + if (element instanceof Compartment) { + if (element.getZ() != null) { + newGlyph.setCompartmentOrder(element.getZ().floatValue()); + } + } else if (element instanceof Species) { final Species species = (Species) element; if (element instanceof Protein) { final Protein protein = (Protein) element; diff --git a/converter-SBGNML/src/test/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlTestFunctions.java b/converter-SBGNML/src/test/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlTestFunctions.java index 4f90c7ec36fa85c0a802e3dfd803d7f6b74e114a..a834093676e7c6a36902ee96489cda16f7cefd28 100644 --- a/converter-SBGNML/src/test/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlTestFunctions.java +++ b/converter-SBGNML/src/test/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlTestFunctions.java @@ -141,12 +141,12 @@ public class SbgnmlTestFunctions extends TestUtils { model2.setIdModel(model.getIdModel()); model2.setName(model.getName()); for (final Drawable d : model.getDrawables()) { - if (!(d instanceof Element)) { + if (!(d instanceof Compartment)) { d.setZ(null); } } for (final Drawable d : model2.getDrawables()) { - if (!(d instanceof Element)) { + if (!(d instanceof Compartment)) { d.setZ(null); } } diff --git a/converter-SBGNML/src/test/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlExporterTest.java b/converter-SBGNML/src/test/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlExporterTest.java index 2f1143c6a905602ad53f1d11d94b48339b0fab1b..34655cfe5df8cc06dfee66b6c0759707eb78eb81 100644 --- a/converter-SBGNML/src/test/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlExporterTest.java +++ b/converter-SBGNML/src/test/java/lcsb/mapviewer/converter/model/sbgnml/SbgnmlXmlExporterTest.java @@ -175,17 +175,12 @@ public class SbgnmlXmlExporterTest extends SbgnmlTestFunctions { @Test public void importExportZ() throws Exception { - GenericProtein protein = createProtein(); - protein.setZ(3); - Compartment compartment = createCompartment(); compartment.setZ(4); - compartment.addElement(protein); Model model = new ModelFullIndexed(null); model.setWidth(2000); model.setHeight(2000); - model.addElement(protein); model.addElement(compartment); Model model2 = serializeAndCleanOverSbgn(model);