Skip to content
Snippets Groups Projects
Commit f22df594 authored by Piotr Gawron's avatar Piotr Gawron
Browse files

error information is more informative

parent 74315676
No related branches found
No related tags found
2 merge requests!630WIP: Resolve "The privileges of a new user are not saved in some cases",!538Resolve "improve information in exception"
Pipeline #7911 passed
......@@ -64,6 +64,7 @@ import lcsb.mapviewer.model.map.reaction.type.TwoProductReactionInterface;
import lcsb.mapviewer.model.map.reaction.type.TwoReactantReactionInterface;
import lcsb.mapviewer.model.map.species.Element;
import lcsb.mapviewer.model.map.species.Species;
import lcsb.mapviewer.modelutils.map.ElementUtils;
/**
* This is a part of {@link ReactionXmlParser} class functionality that allows
......@@ -216,9 +217,9 @@ public class ReactionFromXml extends XmlParser {
}
}
try {
assignStochiometry(result.getReactants(), reactantsNode, elements);
assignStochiometry(result.getProducts(), productsNode, elements);
assignStochiometry(result.getModifiers(), modifiersNode, elements);
assignStochiometry(result.getReactants(), reactantsNode, elements);
assignStochiometry(result.getProducts(), productsNode, elements);
assignStochiometry(result.getModifiers(), modifiersNode, elements);
} catch (InvalidStateException e) {
throw new ReactionParserException(result, e);
}
......@@ -476,7 +477,7 @@ public class ReactionFromXml extends XmlParser {
result.removeModifier(modifier);
i--;
} else if (modifier.getLine() == null) {
createLineForModifier(result, modifier);
createLineForModifier(modifier);
}
}
......@@ -579,26 +580,29 @@ public class ReactionFromXml extends XmlParser {
/**
* Creates line information for the modifier.
*
* @param reaction
* reaction where modifier is placed
* @param modifier
* modifier to update
* @throws ReactionParserException
*/
private void createLineForModifier(Reaction reaction, Modifier modifier) {
Element element = modifier.getElement();
CellDesignerAliasConverter converter = new CellDesignerAliasConverter(element, sbgn);
Point2D startPoint = converter.getPointCoordinates(element, anchorsByNodes.get(modifier));
ModifierTypeUtils modifierTypeUtils = new ModifierTypeUtils();
Point2D p = modifierTypeUtils.getAnchorPointOnReactionRect(modifier.getReaction(),
lineTypeByModifier.get(modifier));
PolylineData line = PolylineDataFactory.createPolylineDataFromEditPoints(startPoint, p,
pointsByModifier.get(modifier));
startPoint = converter.getAnchorPointCoordinates(element, anchorsByNodes.get(modifier), line);
line.setStartPoint(startPoint);
modifier.setLine(line);
modifierTypeUtils.updateLineEndPoint(modifier);
private void createLineForModifier(Modifier modifier) throws ReactionParserException {
try {
Element element = modifier.getElement();
CellDesignerAliasConverter converter = new CellDesignerAliasConverter(element, sbgn);
Point2D startPoint = converter.getPointCoordinates(element, anchorsByNodes.get(modifier));
ModifierTypeUtils modifierTypeUtils = new ModifierTypeUtils();
Point2D p = modifierTypeUtils.getAnchorPointOnReactionRect(modifier.getReaction(),
lineTypeByModifier.get(modifier));
PolylineData line = PolylineDataFactory.createPolylineDataFromEditPoints(startPoint, p,
pointsByModifier.get(modifier));
startPoint = converter.getAnchorPointCoordinates(element, anchorsByNodes.get(modifier), line);
line.setStartPoint(startPoint);
modifier.setLine(line);
modifierTypeUtils.updateLineEndPoint(modifier);
} catch (Exception e) {
throw new ReactionParserException("Problem with creating layout for modifier.", modifier.getReaction());
}
}
/**
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment