Example usage for org.eclipse.jdt.core.jdom IDOMNode COMPILATION_UNIT

List of usage examples for org.eclipse.jdt.core.jdom IDOMNode COMPILATION_UNIT

Introduction

In this page you can find the example usage for org.eclipse.jdt.core.jdom IDOMNode COMPILATION_UNIT.

Prototype

int COMPILATION_UNIT

To view the source code for org.eclipse.jdt.core.jdom IDOMNode COMPILATION_UNIT.

Click Source Link

Document

Node type constant indicating a compilation unit.

Usage

From source file:org.eclipse.emf.codegen.jmerge.JMerger.java

License:Open Source License

protected IDOMNode insertClone(IDOMNode sourceNode) {
    IDOMNode targetNode = null;/*w  w w.  j a  va 2 s . co  m*/
    switch (sourceNode.getNodeType()) {
    case IDOMNode.COMPILATION_UNIT: {
        targetNode = jdomFactory.createCompilationUnit(applyFormatRules(sourceNode.getContents()),
                ((IDOMCompilationUnit) sourceNode).getName());
        break;
    }
    case IDOMNode.PACKAGE: {
        targetNode = jdomFactory.createPackage(applyFormatRules(sourceNode.getContents()));
        break;
    }
    case IDOMNode.IMPORT: {
        targetNode = jdomFactory.createImport(applyFormatRules(sourceNode.getContents()));
        break;
    }
    case IDOMNode.TYPE: {
        targetNode = jdomFactory.createType(applyFormatRules(sourceNode.getContents()));
        break;
    }
    case IDOMNode.INITIALIZER: {
        targetNode = jdomFactory.createInitializer(applyFormatRules(sourceNode.getContents()));
        break;
    }
    case IDOMNode.FIELD: {
        targetNode = jdomFactory.createField(applyFormatRules(sourceNode.getContents()));
        break;
    }
    case IDOMNode.METHOD: {
        targetNode = jdomFactory.createMethod(applyFormatRules(sourceNode.getContents()));
        break;
    }
    default: {
        targetNode = (IDOMNode) sourceNode.clone();
        break;
    }
    }

    if (targetNode != null) {
        map(sourceNode, targetNode);
        mapChildren(sourceNode, targetNode);
    } else {
        // System.err.println("Warning: Cannot clone '" + sourceNode.getContents() + "'");
    }
    for (IDOMNode previousNode = sourceNode.getPreviousNode(); previousNode != null; previousNode = previousNode
            .getPreviousNode()) {
        IDOMNode targetSibling = (IDOMNode) sourceToTargetMap.get(previousNode);
        if (targetSibling != null) {
            IDOMNode targetNextSibling = targetSibling.getNextNode();
            if (targetNextSibling == null) {
                targetSibling.getParent().addChild(targetNode);
            } else {
                targetNextSibling.insertSibling(targetNode);
            }

            return targetNode;
        }
    }
    if (sourceNode.getParent() != null) {
        IDOMNode targetParent = (IDOMNode) sourceToTargetMap.get(sourceNode.getParent());
        IDOMNode targetSibling = targetParent.getFirstChild();
        if (targetSibling == null) {
            targetParent.addChild(targetNode);
        } else {
            targetSibling.insertSibling(targetNode);
        }
    }
    return targetNode;
}

From source file:org.eclipse.emf.codegen.jmerge.JPatternDictionary.java

License:Open Source License

public String getQualifiedName(IDOMNode jdomNode) {
    switch (jdomNode.getNodeType()) {
    case IDOMNode.COMPILATION_UNIT: {
        return jdomNode.getName();
    }/* ww  w  .  j  av a 2  s  . c o  m*/
    case IDOMNode.PACKAGE: {
        return jdomNode.getName();
    }
    case IDOMNode.IMPORT: {
        return jdomNode.getName();
    }
    case IDOMNode.TYPE: {
        return jPackage != null ? jPackage.getName() + "." + jdomNode.getName() : jdomNode.getName();
    }
    case IDOMNode.FIELD: {
        return getQualifiedName(jdomNode.getParent()) + "." + jdomNode.getName();
    }
    case IDOMNode.INITIALIZER: {
        String name = getQualifiedName(jdomNode.getParent());
        int index = 0;
        for (jdomNode = jdomNode.getNextNode(); jdomNode != null; jdomNode = jdomNode.getNextNode()) {
            if (jdomNode.getNodeType() == IDOMNode.INITIALIZER) {
                ++index;
            }
        }
        return name + "." + index;
    }
    case IDOMNode.METHOD: {
        IDOMMethod jdomMethod = (IDOMMethod) jdomNode;
        StringBuffer result = new StringBuffer(getQualifiedName(jdomNode.getParent()));
        result.append(".");
        if (jdomMethod.isConstructor()) {
            result.append(jdomMethod.getParent().getName());
        } else {
            result.append(jdomMethod.getName());
        }
        result.append("("); //)
        String[] parameters = jdomMethod.getParameterTypes();
        if (parameters != null) {
            for (int i = 0; i < parameters.length; ++i) {
                if (i != 0) {
                    result.append(", ");
                }
                result.append(parameters[i]);
            }
        }
        // (
        result.append(")");
        return result.toString();
    }
    default: {
        return "";
    }
    }
}