if (bo instanceof Flow) {
deleteFlowFromModel((Flow) bo);
} else if (bo instanceof AbstractNode) {
deleteBOFromModel((AbstractNode)bo);
} else if (bo instanceof EReferenceImpl) {
EReferenceImpl eimpl = (EReferenceImpl) bo;
EClassifier eType = eimpl.getEType();
if (eType instanceof AbstractNode) {
AbstractNode target = (AbstractNode) eType;
Activator.getLogger().debug("==== trying to zap the target: " + target);
EObject eContainer = eimpl.eContainer();
if (eContainer instanceof AbstractNode) {
AbstractNode source = (AbstractNode) eContainer;
Activator.getLogger().debug("==== trying to source: " + source + " -> target: " + target);
source.removeConnection(target);
}