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

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

Introduction

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

Prototype

String getElementName();

Source Link

Document

Returns the name of this element.

Usage

From source file:nz.ac.massey.cs.barrio.srcgraphbuilder.ExtractDependencyGraphJob.java

License:Apache License

private void gatherBinaries(PackageRef p, IPackageFragment pf) {

    try {/*from w w  w  .  j av  a 2s. co m*/
        for (IJavaElement e : pf.getChildren()) {
            if (e instanceof IClassFile) {
                String n = e.getElementName();
                n = n.endsWith(".class") ? n.substring(0, n.length() - 6) : n;
                n = normalizeClassName(n);
                ClassRef c = new ClassRef();
                c.setName(n);
                c.setOwner(p);
                registerType(n, c);
            }
        }
    } catch (Exception x) {
        x.printStackTrace();
    }
}

From source file:nz.ac.massey.cs.jquest.views.QueryView.java

License:Open Source License

private String getFullname(IJavaElement e) {
    String fullname = null;// ww w  .  j a  v a2s  . c o  m
    try {
        if (e instanceof ICompilationUnit) {
            fullname = ".fullname=='" + ((ICompilationUnit) e).getTypes()[0].getFullyQualifiedName() + "'";
            return fullname;
        } else if (e instanceof IClassFile) {
            IClassFile icf = (IClassFile) e;
            IClassFileReader r = new ClassFileReader(icf.getBytes(), IClassFileReader.ALL);
            char[] name = r.getClassName();
            String classname = String.valueOf(name);
            classname = classname.replace("/", ".");
            fullname = ".fullname=='" + classname + "'";
            return fullname;
        } else if (e instanceof IPackageFragment) {
            fullname = ".namespace=='" + e.getElementName() + "'";
            return fullname;
        } else if (e instanceof IPackageFragmentRoot) {
            fullname = ".container=='" + e.getElementName() + "'";
            return fullname;
        } else {
            return null;
        }
    } catch (Exception e1) {
        e1.printStackTrace();
    }

    return null;
}

From source file:org.apache.felix.sigil.eclipse.internal.model.project.SigilProject.java

License:Apache License

private boolean findPackage(String packageName, IParent parent) throws JavaModelException {
    for (IJavaElement e : parent.getChildren()) {
        if (e.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
            return e.getElementName().equals(packageName);
        }//from  www .  j  av  a  2 s.c om

        if (e instanceof IParent) {
            if (findPackage(packageName, (IParent) e)) {
                return true;
            }
        }
    }

    return false;
}

From source file:org.apache.felix.sigil.eclipse.ui.util.ResourcesDialogHelper.java

License:Apache License

public static NewPackageExportDialog createNewExportDialog(Shell shell, String title,
        final IPackageExport selected, final ISigilProjectModel project, boolean multiSelect) {
    IFilter<IJavaElement> selectFilter = new IFilter<IJavaElement>() {
        public boolean select(IJavaElement e) {
            if (selected != null && e.getElementName().equals(selected.getPackageName())) {
                return true;
            }//from w ww.  ja  v  a 2  s  .co m

            if (e.getElementName().trim().length() > 0 && isLocal(e)) {
                for (IPackageExport p : project.getBundle().getBundleInfo().getExports()) {
                    if (p.getPackageName().equals(e.getElementName())) {
                        return false;
                    }
                }

                return true;
            } else {
                return false;
            }
        }

        private boolean isLocal(IJavaElement java) {
            try {
                switch (java.getElementType()) {
                case IJavaElement.PACKAGE_FRAGMENT:
                    IPackageFragment fragment = (IPackageFragment) java;
                    return fragment.containsJavaResources();
                default:
                    throw new IllegalStateException("Unexpected resource type " + java);
                }
            } catch (JavaModelException e) {
                SigilCore.error("Failed to inspect java element ", e);
                return false;
            }
        }

    };

    final NewPackageExportDialog dialog = new NewPackageExportDialog(shell, multiSelect);
    dialog.setFilter(selectFilter);

    dialog.setProjectVersion(project.getVersion());
    if (selected != null) {
        dialog.setSelectedName(selected.getPackageName());
        dialog.setVersion(selected.getRawVersion());
    }

    IJobRunnable job = new IJobRunnable() {
        public IStatus run(IProgressMonitor monitor) {
            try {
                ArrayList<IPackageFragment> list = new ArrayList<IPackageFragment>(UPDATE_BATCH_SIZE);
                for (IJavaElement e : JavaHelper.findTypes(project.getJavaModel(),
                        IJavaElement.PACKAGE_FRAGMENT)) {
                    IPackageFragment root = (IPackageFragment) e;
                    if (project.isInBundleClasspath(root)) {
                        list.add(root);
                        if (list.size() >= UPDATE_BATCH_SIZE) {
                            dialog.addElements(list);
                            list.clear();
                        }
                    }
                }
                if (!list.isEmpty()) {
                    dialog.addElements(list);
                }
                return Status.OK_STATUS;
            } catch (JavaModelException e) {
                return e.getStatus();
            }
        }
    };

    dialog.addBackgroundJob("Scanning for packages in project", job);

    return dialog;
}

From source file:org.apache.felix.sigil.ui.eclipse.ui.util.ResourcesDialogHelper.java

License:Apache License

public static NewPackageExportDialog createNewExportDialog(Shell shell, String title,
        final IPackageExport selected, final ISigilProjectModel project, boolean multiSelect) {
    IFilter<IJavaElement> selectFilter = new IFilter<IJavaElement>() {
        public boolean select(IJavaElement e) {
            if (selected != null && e.getElementName().equals(selected.getPackageName())) {
                return true;
            }// w w  w .j a v a2 s  . c  om

            if (e.getElementName().trim().length() > 0 && isLocal(e)) {
                for (IPackageExport p : project.getBundle().getBundleInfo().getExports()) {
                    if (p.getPackageName().equals(e.getElementName())) {
                        return false;
                    }
                }

                return true;
            } else {
                return false;
            }
        }

        private boolean isLocal(IJavaElement java) {
            try {
                switch (java.getElementType()) {
                case IJavaElement.PACKAGE_FRAGMENT:
                    IPackageFragment fragment = (IPackageFragment) java;
                    return fragment.containsJavaResources();
                default:
                    throw new IllegalStateException("Unexpected resource type " + java);
                }
            } catch (JavaModelException e) {
                SigilCore.error("Failed to inspect java element ", e);
                return false;
            }
        }

    };

    final NewPackageExportDialog dialog = new NewPackageExportDialog(shell, multiSelect);
    dialog.setFilter(selectFilter);

    dialog.setProjectVersion(project.getVersion());
    if (selected != null) {
        dialog.setSelectedName(selected.getPackageName());
        dialog.setVersion(selected.getRawVersion());
    }

    IJobRunnable job = new IJobRunnable() {
        public IStatus run(IProgressMonitor monitor) {
            try {
                ArrayList<IPackageFragment> list = new ArrayList<IPackageFragment>(UPDATE_BATCH_SIZE);
                for (IJavaElement e : JavaHelper.findTypes(project.getJavaModel(),
                        IJavaElement.PACKAGE_FRAGMENT_ROOT)) {
                    IPackageFragmentRoot root = (IPackageFragmentRoot) e;
                    if (project.isInBundleClasspath(root)) {
                        for (IJavaElement e1 : JavaHelper.findTypes(root, IJavaElement.PACKAGE_FRAGMENT)) {
                            list.add((IPackageFragment) e1);
                            if (list.size() >= UPDATE_BATCH_SIZE) {
                                dialog.addElements(list);
                                list.clear();
                            }
                        }
                    }
                }
                if (!list.isEmpty()) {
                    dialog.addElements(list);
                }
                return Status.OK_STATUS;
            } catch (JavaModelException e) {
                return e.getStatus();
            }
        }
    };

    dialog.addBackgroundJob("Scanning for packages in project", job);

    return dialog;
}

From source file:org.apache.tapestrytools.ui.internal.tcc.editor.PackagesPart.java

License:Open Source License

private void collectCustomComponents(IProject project) {
    List<ComponentInstance> componentList = new ArrayList<ComponentInstance>();
    try {/*from  w w w  .jav a 2  s. c o m*/
        IPackageFragmentRoot[] roots = JavaCore.create(project).getAllPackageFragmentRoots();
        for (int i = 0; i < roots.length; i++) {
            IPackageFragmentRoot root = roots[i];
            String srcPath = root.getElementName();
            for (ComponentPackage pi : model.getCustomPackageList()) {
                if (pi.isArchive() == root.isArchive() && srcPath.equals(pi.getFragmentRoot())) {
                    if (!root.isArchive()) {
                        //Load custom components from source directory
                        String wholePath = "/" + srcPath + "/" + pi.getPath().replace(".", "/");
                        IFolder folder = project.getFolder(wholePath);
                        if (folder.exists()) {
                            IResource[] fileList = folder.members();
                            for (IResource file : fileList) {
                                String fullPath = file.getFullPath().toString();
                                String classFile = fullPath.replace(".tml", ".java").substring(1);
                                classFile = classFile.substring(classFile.indexOf("/"));
                                if (fullPath.endsWith(".tml") && file.getType() == IResource.FILE
                                        && project.getFile(classFile).exists()) {
                                    IFile componentFile = (IFile) file;
                                    Element rootElement = getRootElementOfXML(componentFile.getContents());
                                    if (rootElement.getNodeName().trim().equals("t:container")) {
                                        String componentName = classFile.substring(classFile.lastIndexOf("/"));
                                        componentName = componentName.substring(0, componentName.indexOf("."));
                                        if (componentName.startsWith("/"))
                                            componentName = componentName.substring(1);
                                        ComponentInstance ci = new ComponentInstance();
                                        ci.setId(componentName);
                                        ci.setName(pi.getPrefix() + ":" + componentName);
                                        ci.setPath(pi.getPath());
                                        ci.setPrefix(pi.getPrefix());
                                        ci.setText(componentName);
                                        componentList.add(ci);
                                    }
                                }
                            }
                        }
                    } else {
                        // Load custom components from jar files
                        for (IJavaElement pack : root.getChildren()) {
                            if (pack != null && pack instanceof PackageFragment
                                    && pack.getElementName().equals(pi.getPath())) {
                                for (Object packo : ((PackageFragment) pack)
                                        .getChildrenOfType(IJavaElement.CLASS_FILE)) {
                                    ClassFile packi = (ClassFile) packo;
                                    String itemName = packi.getElementName();
                                    if (itemName.indexOf('$') < 0 && itemName.endsWith(".class")) {
                                        ComponentInstance ci = new ComponentInstance();
                                        String componentName = itemName.substring(0, itemName.length() - 6);
                                        ci.setId(componentName);
                                        ci.setName(pi.getPrefix() + ":" + componentName);
                                        ci.setPath(pi.getPath());
                                        ci.setPrefix(pi.getPrefix());
                                        ci.setText(componentName);
                                        componentList.add(ci);
                                    }
                                }
                                break;
                            }
                        }
                    }
                }
            }
        }
        model.setComponentList(componentList);
        markDirty();
    } catch (JavaModelException e) {
        e.printStackTrace();
    } catch (CoreException e) {
        e.printStackTrace();
    }
}

From source file:org.apache.tapestrytools.ui.internal.tcc.editor.Utils.java

License:Open Source License

public static Set<IJavaElement> getSrcDirectories(IProject project) {
    Set<IJavaElement> list = new HashSet<IJavaElement>();
    try {//from  ww  w. j ava  2 s  . co  m
        IPackageFragmentRoot[] sourceFolders = JavaCore.create(project).getAllPackageFragmentRoots();
        for (int i = 0; i < sourceFolders.length; i++) {
            IPackageFragmentRoot item = sourceFolders[i];
            String jarPath = item.getPath().toString();
            String jarName = jarPath.substring(jarPath.lastIndexOf('/'));
            if (sourceFolders[i].getResource() != null && !sourceFolders[i].isArchive()
                    || item.isArchive() && jarPath.endsWith(".jar") && !BLOCKED_JARS.contains(jarName)) {
                IJavaElement[] eles = sourceFolders[i].getChildren();
                for (IJavaElement ele : eles) {
                    if (!ele.getElementName().trim().isEmpty())
                        list.add(ele);
                }
            }
        }
    } catch (JavaModelException e) {
        e.printStackTrace();
    }
    return list;
}

From source file:org.autorefactor.refactoring.PrepareApplyRefactoringsJob.java

License:Open Source License

private List<IJavaElement> getSubPackages(IPackageFragment motherPackage) throws JavaModelException {
    List<IJavaElement> subPackages = new ArrayList<IJavaElement>();
    String packageName = motherPackage.getElementName();
    IJavaElement[] packages = ((IPackageFragmentRoot) motherPackage.getParent()).getChildren();

    for (IJavaElement onePackage : packages) {
        if (onePackage instanceof IPackageFragment
                && onePackage.getElementName().startsWith(packageName + ".")) {
            subPackages.add(onePackage);
        }//from ww w . jav  a 2 s.  co  m
    }

    return subPackages;
}

From source file:org.bonitasoft.studio.data.provider.JavaExpressionEditor.java

License:Open Source License

protected String generateJavaAdditionalPath(Data data, ITreeSelection selection) {
    if (selection == null) {
        return "";
    }//from   w  ww  .j  av a  2s. com
    TreePath path = selection.getPaths()[0];
    if (path.getSegmentCount() == 1) {
        return "";
    }
    StringBuilder res = new StringBuilder(data.getName());
    res.append(".");
    for (int i = 1; i < path.getSegmentCount() - 1; i++) {
        Object item = path.getSegment(i);
        final IJavaElement iJavaElement = (IJavaElement) item;
        res.append(iJavaElement.getElementName());
        if (iJavaElement.getElementType() == IJavaElement.METHOD) {
            res.append("()");
        }
        res.append(".");
    }
    if (res.length() > 0) {
        res.deleteCharAt(res.length() - 1);
    }
    res.append(BonitaConstants.JAVA_VAR_SEPARATOR);
    Object item = path.getSegment(path.getSegmentCount() - 1);
    res.append(((IJavaElement) item).getElementName());
    return res.toString();
}

From source file:org.bonitasoft.studio.groovy.ui.widgets.pojo.BrowseWriteToJavaDialog.java

License:Open Source License

/**
 * @return//from w ww. j a  v a2  s  .com
 */
public String generateJavaAdditionalPath() {
    if (selection == null) {
        return "";
    }
    TreePath path = selection.getPaths()[0];
    if (path.getSegmentCount() == 1) {
        return "";
    }
    StringBuilder res = new StringBuilder(dataName);
    res.append(".");
    for (int i = 1; i < path.getSegmentCount() - 1; i++) {
        Object item = path.getSegment(i);
        final IJavaElement iJavaElement = (IJavaElement) item;
        res.append(iJavaElement.getElementName());
        if (iJavaElement.getElementType() == IJavaElement.METHOD) {
            res.append("()");
        }
        res.append(".");
    }
    if (res.length() > 0) {
        res.deleteCharAt(res.length() - 1);
    }
    res.append(BonitaConstants.JAVA_VAR_SEPARATOR);
    Object item = path.getSegment(path.getSegmentCount() - 1);
    res.append(((IJavaElement) item).getElementName());
    return res.toString();
}