/** * Creates a JavaNode for a CU. It represents the root of a JavaNode tree, so its parent is null. * * @param document the document which contains the Java element */ public JavaNode(IDocument document) { super( CU, JavaCompareUtilities.buildID(CU, "root"), document, 0, document.getLength()); // $NON-NLS-1$ }
/** * Creates a JavaNode under the given parent. * * @param parent the parent node * @param type the Java elements type. Legal values are from the range CU to METHOD of this class. * @param name the name of the Java element * @param start the starting position of the java element in the underlying document * @param length the number of characters of the java element in the underlying document */ public JavaNode(JavaNode parent, int type, String name, int start, int length) { super( parent, type, JavaCompareUtilities.buildID(type, name), parent.getDocument(), start, length); parent.addChild(this); }
/** * Creates a place holder ASTNode for the given element. * * @param rewriter * @param element * @param delimiter the line delimiter * @param project * @return a ASTNode or null * @throws CoreException */ private ASTNode createASTNode( ASTRewrite rewriter, ITypedElement element, String delimiter, IJavaProject project) throws CoreException { if (element instanceof IStreamContentAccessor) { String content = JavaCompareUtilities.readString((IStreamContentAccessor) element); if (content != null) { content = trimTextBlock(content, delimiter, project); if (content != null) { int type = getPlaceHolderType(element); if (type != -1) return rewriter.createStringPlaceholder(content, type); } } } return null; }
/** * Returns a shared image for this Java element. * * <p>see ITypedInput.getImage */ public Image getImage() { ImageDescriptor id = null; switch (getTypeCode()) { case CU: id = JavaCompareUtilities.getImageDescriptor(IJavaElement.COMPILATION_UNIT); break; case PACKAGE: id = JavaCompareUtilities.getImageDescriptor(IJavaElement.PACKAGE_DECLARATION); break; case IMPORT: id = JavaCompareUtilities.getImageDescriptor(IJavaElement.IMPORT_DECLARATION); break; case IMPORT_CONTAINER: id = JavaCompareUtilities.getImageDescriptor(IJavaElement.IMPORT_CONTAINER); break; case CLASS: id = JavaCompareUtilities.getTypeImageDescriptor(true); break; case INTERFACE: id = JavaCompareUtilities.getTypeImageDescriptor(false); break; case INIT: id = JavaCompareUtilities.getImageDescriptor(IJavaElement.INITIALIZER); break; case CONSTRUCTOR: case METHOD: id = JavaCompareUtilities.getImageDescriptor(IJavaElement.METHOD); break; case FIELD: id = JavaCompareUtilities.getImageDescriptor(IJavaElement.FIELD); break; case ENUM: id = JavaCompareUtilities.getEnumImageDescriptor(); break; case ANNOTATION: id = JavaCompareUtilities.getAnnotationImageDescriptor(); break; } return JavaPlugin.getImageDescriptorRegistry().get(id); }