Search in sources :

Example 1 with Constrainable

use of io.automatiko.engine.workflow.process.core.node.Constrainable in project automatiko-engine by automatiko-io.

the class ConstraintHandler method end.

public Object end(final String uri, final String localName, final ExtensibleXmlParser parser) throws SAXException {
    final Element element = parser.endElementBuilder();
    Constrainable parent = (Constrainable) parser.getParent();
    Constraint constraint = new ConstraintImpl();
    final String toNodeIdString = element.getAttribute("toNodeId");
    String toType = element.getAttribute("toType");
    ConnectionRef connectionRef = null;
    if (toNodeIdString != null && toNodeIdString.trim().length() > 0) {
        int toNodeId = new Integer(toNodeIdString);
        if (toType == null || toType.trim().length() == 0) {
            toType = NodeImpl.CONNECTION_DEFAULT_TYPE;
        }
        connectionRef = new ConnectionRef(toNodeId, toType);
    }
    final String name = element.getAttribute("name");
    constraint.setName(name);
    final String priority = element.getAttribute("priority");
    if (priority != null && priority.length() != 0) {
        constraint.setPriority(new Integer(priority));
    }
    final String type = element.getAttribute("type");
    constraint.setType(type);
    final String dialect = element.getAttribute("dialect");
    constraint.setDialect(dialect);
    String text = ((Text) element.getChildNodes().item(0)).getWholeText();
    if (text != null) {
        text = text.trim();
        if ("".equals(text)) {
            text = null;
        }
    }
    constraint.setConstraint(text);
    parent.addConstraint(connectionRef, constraint);
    return null;
}
Also used : Constrainable(io.automatiko.engine.workflow.process.core.node.Constrainable) Constraint(io.automatiko.engine.workflow.process.core.Constraint) ConstraintImpl(io.automatiko.engine.workflow.process.core.impl.ConstraintImpl) Element(org.w3c.dom.Element) Text(org.w3c.dom.Text) ConnectionRef(io.automatiko.engine.workflow.process.core.impl.ConnectionRef) Constraint(io.automatiko.engine.workflow.process.core.Constraint)

Aggregations

Constraint (io.automatiko.engine.workflow.process.core.Constraint)1 ConnectionRef (io.automatiko.engine.workflow.process.core.impl.ConnectionRef)1 ConstraintImpl (io.automatiko.engine.workflow.process.core.impl.ConstraintImpl)1 Constrainable (io.automatiko.engine.workflow.process.core.node.Constrainable)1 Element (org.w3c.dom.Element)1 Text (org.w3c.dom.Text)1