From 9713e553b1245d6b2078b50c27d916b4241b3971 Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Fri, 4 Jan 2019 14:23:21 +0100 Subject: [PATCH] import export of element abbreviation implemented --- .../model/sbml/extension/multi/BioEntityFeature.java | 3 +++ .../converter/model/sbml/species/SbmlSpeciesExporter.java | 6 ++++++ .../converter/model/sbml/species/SbmlSpeciesParser.java | 6 ++++++ 3 files changed, 15 insertions(+) diff --git a/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/extension/multi/BioEntityFeature.java b/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/extension/multi/BioEntityFeature.java index d51503dc71..32df3fa608 100644 --- a/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/extension/multi/BioEntityFeature.java +++ b/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/extension/multi/BioEntityFeature.java @@ -20,6 +20,9 @@ public enum BioEntityFeature { FORMULA("Formula", null, new Class<?>[] { Element.class }, "minerva_formula_"), + ABBREVIATION("Abbreviation", null, new Class<?>[] { Element.class }, + "minerva_abbreviation_"), + SYMBOL("Symbol", null, new Class<?>[] { Element.class }, "minerva_symbol_"); diff --git a/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/species/SbmlSpeciesExporter.java b/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/species/SbmlSpeciesExporter.java index 0f2951dfc3..b9bacc64e8 100644 --- a/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/species/SbmlSpeciesExporter.java +++ b/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/species/SbmlSpeciesExporter.java @@ -102,6 +102,7 @@ public class SbmlSpeciesExporter extends SbmlElementExporter<Species, org.sbml.j assignSymbolToMulti(element, multiExtension, speciesType); assignFullNameToMulti(element, multiExtension, speciesType); assignFormulaToMulti(element, multiExtension, speciesType); + assignAbbreviationToMulti(element, multiExtension, speciesType); } private void assignElementModificationResiduesToMulti(Species element, MultiSpeciesPlugin multiExtension, @@ -287,6 +288,11 @@ public class SbmlSpeciesExporter extends SbmlElementExporter<Species, org.sbml.j assignValueToFeature(element, multiExtension, speciesType, element.getFormula(), BioEntityFeature.FORMULA); } + private void assignAbbreviationToMulti(Species element, MultiSpeciesPlugin multiExtension, + MultiSpeciesType speciesType) { + assignValueToFeature(element, multiExtension, speciesType, element.getAbbreviation(), BioEntityFeature.ABBREVIATION); + } + private void assignValueToFeature(Species element, MultiSpeciesPlugin multiExtension, MultiSpeciesType speciesType, String value, BioEntityFeature feature) { SpeciesFeatureType structuralStateFeature = getFeature(element.getClass(), speciesType, feature); diff --git a/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/species/SbmlSpeciesParser.java b/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/species/SbmlSpeciesParser.java index 680044ff49..7b19918850 100644 --- a/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/species/SbmlSpeciesParser.java +++ b/converter-sbml/src/main/java/lcsb/mapviewer/converter/model/sbml/species/SbmlSpeciesParser.java @@ -163,6 +163,12 @@ public class SbmlSpeciesParser extends SbmlElementParser<org.sbml.jsbml.Species> } else { minervaElement.setFormula(featureValues.get(0)); } + } else if (MultiPackageNamingUtils.isFeatureId(featureTypeString, BioEntityFeature.ABBREVIATION)) { + if (featureValues.size() != 1) { + logger.warn(warnPrefix + "Abbreviation must have exactly one value"); + } else { + minervaElement.setAbbreviation(featureValues.get(0)); + } } else if (MultiPackageNamingUtils.isModificationFeatureId(featureTypeString)) { createModificationResidues(minervaElement, speciesType, feature); } else { -- GitLab