Example usage for org.eclipse.jdt.core IJavaElement PACKAGE_FRAGMENT

List of usage examples for org.eclipse.jdt.core IJavaElement PACKAGE_FRAGMENT

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IJavaElement PACKAGE_FRAGMENT.

Prototype

int PACKAGE_FRAGMENT

To view the source code for org.eclipse.jdt.core IJavaElement PACKAGE_FRAGMENT.

Click Source Link

Document

Constant representing a package fragment.

Usage

From source file:org.eclipse.jst.j2ee.internal.wizard.NewJavaClassWizardPage.java

License:Open Source License

/**
 * @return//  www.ja  va 2s.c  o  m
 */
private IPackageFragment getSelectedPackageFragment() {
    IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
    if (window == null)
        return null;
    ISelection selection = window.getSelectionService().getSelection();
    if (selection == null)
        return null;
    IJavaElement element = getInitialJavaElement(selection);
    if (element != null) {
        if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
            return (IPackageFragment) element;
        } else if (element.getElementType() == IJavaElement.COMPILATION_UNIT) {
            IJavaElement parent = ((ICompilationUnit) element).getParent();
            if (parent.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
                return (IPackageFragment) parent;
            }
        } else if (element.getElementType() == IJavaElement.TYPE) {
            return ((IType) element).getPackageFragment();
        }
    }
    return null;
}

From source file:org.eclipse.jst.jsf.common.internal.types.TypeInfoCache.java

License:Open Source License

/**Removes all cached info that may be affected by the given change.
 * @param delta - the change in the java model
 */// ww  w  .j  a  v  a  2s.  co m
protected void updateChangedJavaElement(IJavaElementDelta delta) {
    IJavaElement element = delta.getElement();
    switch (element.getElementType()) {
    case IJavaElement.JAVA_MODEL:
        updateChangedJavaModel(delta, element);
        break;
    case IJavaElement.JAVA_PROJECT:
        updateChangedJavaProject(delta, element);
        break;
    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
        updateChangedPackageFragmentRoot(delta, element);
        break;
    case IJavaElement.PACKAGE_FRAGMENT:
        updateChangedPackageFragment(delta, (IPackageFragment) element);
        break;
    case IJavaElement.CLASS_FILE:
    case IJavaElement.COMPILATION_UNIT:
        updateChangedOpenable(delta, element);
        break;
    }
}

From source file:org.eclipse.jst.jsf.common.ui.internal.utils.JavaModelUtil.java

License:Open Source License

private static IType findType(IPackageFragmentRoot root, String fullyQualifiedName) throws JavaModelException {
    IJavaElement[] children = root.getChildren();
    for (int i = 0; i < children.length; i++) {
        IJavaElement element = children[i];
        if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
            IPackageFragment pack = (IPackageFragment) element;
            if (!fullyQualifiedName.startsWith(pack.getElementName())) {
                continue;
            }//from  w  w  w .  j av a 2  s  . c  o  m
            IType type = findType(pack, fullyQualifiedName);
            if (type != null && type.exists()) {
                return type;
            }
        }
    }
    return null;
}

From source file:org.eclipse.jst.jsf.common.ui.internal.utils.JavaModelUtil.java

License:Open Source License

/**
 * Evaluates if a member (possible from another package) is visible from
 * elements in a package./* ww  w. ja v  a 2  s  .  c o  m*/
 * 
 * @param member
 *            The member to test the visibility for
 * @param pack
 *            The package in focus
 * @return true if visible
 * @throws JavaModelException 
 */
public static boolean isVisible(IMember member, IPackageFragment pack) throws JavaModelException {

    int type = member.getElementType();
    if (type == IJavaElement.INITIALIZER
            || (type == IJavaElement.METHOD && member.getElementName().startsWith("<"))) { //$NON-NLS-1$
        //$NON-NLS-1$
        return false;
    }

    int otherflags = member.getFlags();
    IType declaringType = member.getDeclaringType();
    if (Flags.isPublic(otherflags) || (declaringType != null && declaringType.isInterface())) {
        return true;
    } else if (Flags.isPrivate(otherflags)) {
        return false;
    }

    IPackageFragment otherpack = (IPackageFragment) findParentOfKind(member, IJavaElement.PACKAGE_FRAGMENT);
    return (pack != null && otherpack != null && isSamePackage(pack, otherpack));
}

From source file:org.eclipse.jst.jsf.common.ui.internal.utils.JavaModelUtil.java

License:Open Source License

/**
 * Evaluates if a member in the focus' element hierarchy is visible from
 * elements in a package.//from   w ww.j a va 2s . c o m
 * 
 * @param member
 *            The member to test the visibility for
 * @param pack
 *            The package of the focus element focus
 * @return true if is visible in hiearchy
 * @throws JavaModelException 
 */
public static boolean isVisibleInHierarchy(IMember member, IPackageFragment pack) throws JavaModelException {
    int type = member.getElementType();
    if (type == IJavaElement.INITIALIZER
            || (type == IJavaElement.METHOD && member.getElementName().startsWith("<"))) { //$NON-NLS-1$
        //$NON-NLS-1$
        return false;
    }

    int otherflags = member.getFlags();

    IType declaringType = member.getDeclaringType();
    if (Flags.isPublic(otherflags) || Flags.isProtected(otherflags)
            || (declaringType != null && declaringType.isInterface())) {
        return true;
    } else if (Flags.isPrivate(otherflags)) {
        return false;
    }

    IPackageFragment otherpack = (IPackageFragment) findParentOfKind(member, IJavaElement.PACKAGE_FRAGMENT);
    return (pack != null && pack.equals(otherpack));
}

From source file:org.eclipse.jst.jsf.taglibprocessing.attributevalues.JavaClassType.java

License:Open Source License

private IType findType(IPackageFragmentRoot root, String fullyQualifiedName) throws JavaModelException {
    IJavaElement[] children = root.getChildren();
    for (int i = 0; i < children.length; i++) {
        IJavaElement element = children[i];
        if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
            IPackageFragment pack = (IPackageFragment) element;
            if (!fullyQualifiedName.startsWith(pack.getElementName()))
                continue;
            IType type = findType(pack, fullyQualifiedName);
            if (type != null && type.exists())
                return type;
        }/*  w w  w  .  j a v  a  2 s. c om*/
    }
    return null;
}

From source file:org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPRenameElementActionDelegate.java

License:Open Source License

public void run(IAction action) {
    IJavaElement element = getSelectedElement();
    if (element != null) {
        RenameSupport renameSupport = null;
        try {/*from  ww w.jav  a 2s.  c o  m*/
            switch (element.getElementType()) {
            case IJavaElement.TYPE:
                renameSupport = RenameSupport.create((IType) element, element.getElementName(),
                        RenameSupport.UPDATE_REFERENCES);
                break;
            case IJavaElement.METHOD:
                renameSupport = RenameSupport.create((IMethod) element, element.getElementName(),
                        RenameSupport.UPDATE_REFERENCES);
                break;
            case IJavaElement.PACKAGE_FRAGMENT:
                renameSupport = RenameSupport.create((IPackageFragment) element, element.getElementName(),
                        RenameSupport.UPDATE_REFERENCES);
                break;
            }
            if (renameSupport != null) {
                renameSupport.openDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell());
                PlatformStatusLineUtil.clearStatusLine();
            }
        } catch (CoreException e) {
            Logger.logException(e);
        }
    } else {
        PlatformStatusLineUtil.displayErrorMessage(JSPUIMessages.JSPRenameElementAction_0); //$NON-NLS-1$
        PlatformStatusLineUtil.addOneTimeClearListener();
    }
}

From source file:org.eclipse.jst.jsp.ui.internal.java.refactoring.RenameElementHandler.java

License:Open Source License

public Object execute(ExecutionEvent event) throws ExecutionException {
    fEditor = HandlerUtil.getActiveEditor(event);

    IJavaElement element = getSelectedElement();
    if (element != null) {
        RenameSupport renameSupport = null;
        try {/* ww  w.  j  av a  2s . c  om*/
            switch (element.getElementType()) {
            case IJavaElement.TYPE:
                renameSupport = RenameSupport.create((IType) element, element.getElementName(),
                        RenameSupport.UPDATE_REFERENCES);
                break;
            case IJavaElement.METHOD:
                renameSupport = RenameSupport.create((IMethod) element, element.getElementName(),
                        RenameSupport.UPDATE_REFERENCES);
                break;
            case IJavaElement.PACKAGE_FRAGMENT:
                renameSupport = RenameSupport.create((IPackageFragment) element, element.getElementName(),
                        RenameSupport.UPDATE_REFERENCES);
                break;
            case IJavaElement.FIELD:
                renameSupport = RenameSupport.create((IField) element, element.getElementName(),
                        RenameSupport.UPDATE_REFERENCES);
                break;
            }
            if (renameSupport != null) {
                renameSupport.openDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell());
                PlatformStatusLineUtil.clearStatusLine();
            }
        } catch (CoreException e) {
            Logger.logException(e);
        }
    } else {
        PlatformStatusLineUtil.displayErrorMessage(JSPUIMessages.JSPRenameElementAction_0); //$NON-NLS-1$
        PlatformStatusLineUtil.addOneTimeClearListener();
    }

    return null;
}

From source file:org.eclipse.mylyn.internal.java.ui.JavaStructureBridge.java

License:Open Source License

/**
 * Some copying from:/*ww w  .  j a  va  2 s.  c o  m*/
 * 
 * @see org.eclipse.jdt.ui.ProblemsLabelDecorator
 */
public boolean containsProblem(IInteractionElement node) {
    try {
        IJavaElement element = (IJavaElement) getObjectForHandle(node.getHandleIdentifier());
        switch (element.getElementType()) {
        case IJavaElement.JAVA_PROJECT:
        case IJavaElement.PACKAGE_FRAGMENT_ROOT:
            return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_INFINITE, null);
        case IJavaElement.PACKAGE_FRAGMENT:
        case IJavaElement.COMPILATION_UNIT:
        case IJavaElement.CLASS_FILE:
            return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_ONE, null);
        case IJavaElement.PACKAGE_DECLARATION:
        case IJavaElement.IMPORT_DECLARATION:
        case IJavaElement.IMPORT_CONTAINER:
        case IJavaElement.TYPE:
        case IJavaElement.INITIALIZER:
        case IJavaElement.METHOD:
        case IJavaElement.FIELD:
        case IJavaElement.LOCAL_VARIABLE:
            ICompilationUnit cu = (ICompilationUnit) element.getAncestor(IJavaElement.COMPILATION_UNIT);
            if (cu != null) {
                return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_ONE, null);
            }
        }
    } catch (CoreException e) {
        // ignore
    }
    return false;
}

From source file:org.eclipse.objectteams.otdt.core.TypeHelper.java

License:Open Source License

/**
 * Find a role type within a given team. 
 * Respect inline roles and role files.//from   w  ww  .  j a  v  a2 s.  com
 * 
 * @param teamType where to look
 * @param roleName what to look for
 * @return null in cases the type is not found
 */
public static IType findRoleType(IType teamType, String roleName) {
    IType roleType = teamType.getType(roleName);

    // inline roles exit here:
    if (roleType.exists())
        return roleType;

    // look for a team package:
    // TODO(SH): does not yet account for all kinds of nesting!
    IJavaElement parent = teamType.getParent();
    if (parent.getElementType() == IJavaElement.COMPILATION_UNIT)
        parent = parent.getParent();
    if (parent.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
        IPackageFragment enclosingPackage = (IPackageFragment) parent;
        IPackageFragmentRoot root = (IPackageFragmentRoot) enclosingPackage.getParent();
        try {
            IPackageFragment teamPackage = root
                    .getPackageFragment(enclosingPackage.getElementName() + '.' + teamType.getElementName());
            if (teamPackage.exists()) {

                // found the team package, look for the role file:
                IJavaElement[] cus = teamPackage.getChildren();
                for (int i = 0; i < cus.length; i++) {
                    if (cus[i].getElementType() == IJavaElement.COMPILATION_UNIT) {
                        ICompilationUnit cu = (ICompilationUnit) cus[i];
                        IJavaElement[] children = cu.getChildren();
                        for (int j = 0; j < children.length; j++) {
                            if (children[j].getElementType() == IJavaElement.TYPE
                                    && children[j].getElementName().equals(roleName)) {
                                return (IType) children[j];
                            }
                        }
                    }
                }
            }
        } catch (JavaModelException jme) {
            return null;
        }
    }
    return null;
}