for (String label : attrs) {
Attr attr = source.getInput().getAttributeNode(label);
if (attr instanceof IDOMAttr) {
Node ref = getReferencedNode(attr.getValue());
if (ref instanceof IDOMElement && target.getInput().equals(ref)) {
Transition trans;
if (target instanceof ImplicitChannelModelElement) {
if (incoming) {
trans = new ImplicitTransition(target, source, (IDOMAttr) attr);
}
else {
trans = new ImplicitTransition(source, target, (IDOMAttr) attr);
}
}
else {
if (incoming) {
trans = new Transition(target, source, (IDOMAttr) attr);
}
else {
trans = new Transition(source, target, (IDOMAttr) attr);
}
}
if (!(trans instanceof ImplicitTransition) && !primary) {
trans.setLineStyle(Transition.DASHED_CONNECTION);
}
transitions.add(trans);
}
}
}