private DiffNode buildPathNodes(EObject container, DiffNode node) { DiffNode parentNode = new DiffNode(Differencer.NO_CHANGE); node.setParent(parentNode); parentNode.add(node); CompareScript ancestor = null; String name = adapterFactoryLabelProvider.getText(container); Expression expr = ExpressionHelper.createConstantExpression(name, String.class.getName()); expr.setName(name); ancestor = new CompareScript(expr.getName(), expr); ancestor.setElement(container); ancestor.setImage(adapterFactoryLabelProvider.getImage(container)); parentNode.setAncestor(ancestor); if (insertParentNode(parentNode)) { return parentNode; } if (container instanceof Pool) { return parentNode; } if (container instanceof ConnectorParameter) { return buildPathNodes(container.eContainer().eContainer(), parentNode); } return buildPathNodes(container.eContainer(), parentNode); }
private void add(IDiffContainer result, String filePath, DiffNode diffNode) { IDiffContainer container = getFileParent(result, filePath); container.add(diffNode); diffNode.setParent(container); }