Example usage for org.eclipse.jdt.core IPackageFragmentRoot getKind

List of usage examples for org.eclipse.jdt.core IPackageFragmentRoot getKind

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IPackageFragmentRoot getKind.

Prototype

int getKind() throws JavaModelException;

Source Link

Document

Returns this package fragment root's kind encoded as an integer.

Usage

From source file:com.siteview.mde.internal.core.ClasspathComputer.java

License:Open Source License

private static void addSourceFolder(IBuildEntry buildEntry, IProject project, HashSet paths, ArrayList result)
        throws CoreException {
    String[] folders = buildEntry.getTokens();
    for (int j = 0; j < folders.length; j++) {
        String folder = folders[j];
        IPath path = project.getFullPath().append(folder);
        if (paths.add(path)) {
            if (project.findMember(folder) == null) {
                CoreUtility.createFolder(project.getFolder(folder));
            } else {
                IPackageFragmentRoot root = JavaCore.create(project).getPackageFragmentRoot(path.toString());
                if (root.exists() && root.getKind() == IPackageFragmentRoot.K_BINARY) {
                    result.add(root.getRawClasspathEntry());
                    continue;
                }//w w w  .j a v  a2s  .  c  om
            }
            result.add(JavaCore.newSourceEntry(path));
        }
    }
}

From source file:com.siteview.mde.internal.core.ClasspathComputer.java

License:Open Source License

private static void addLibraryEntry(IProject project, IMonitorLibrary library, IPath sourceAttachment,
        IClasspathAttribute[] attrs, ArrayList result) throws JavaModelException {
    String name = ClasspathUtilCore.expandLibraryName(library.getName());
    IResource jarFile = project.findMember(name);
    if (jarFile == null)
        return;/*from www .  j a  v a  2  s. co m*/

    IPackageFragmentRoot root = JavaCore.create(project).getPackageFragmentRoot(jarFile);
    if (root.exists() && root.getKind() == IPackageFragmentRoot.K_BINARY) {
        IClasspathEntry oldEntry = root.getRawClasspathEntry();
        // If we have the same binary root but new or different source, we should recreate the entry 
        if ((sourceAttachment == null && oldEntry.getSourceAttachmentPath() != null)
                || (sourceAttachment != null && sourceAttachment.equals(oldEntry.getSourceAttachmentPath()))) {
            if (!result.contains(oldEntry)) {
                result.add(oldEntry);
                return;
            }
        }
    }

    IClasspathEntry entry = createClasspathEntry(project, jarFile, name, sourceAttachment, attrs,
            library.isExported());
    if (!result.contains(entry))
        result.add(entry);
}

From source file:com.siteview.mde.internal.core.util.ManifestUtils.java

License:Open Source License

public static boolean isImmediateRoot(IPackageFragmentRoot root) throws JavaModelException {
    int kind = root.getKind();
    return kind == IPackageFragmentRoot.K_SOURCE
            || (kind == IPackageFragmentRoot.K_BINARY && !root.isExternal());
}

From source file:com.siteview.mde.internal.ui.wizards.tools.ConvertJarsAction.java

License:Open Source License

/**
 * @see IActionDelegate#selectionChanged(IAction, ISelection)
 *//*w  ww  . j  a va  2 s .c om*/
public void selectionChanged(IAction action, ISelection s) {
    boolean enabled = true;
    if (s instanceof IStructuredSelection) {
        selection = (IStructuredSelection) s;
        if (selection.size() == 0)
            return;
        Iterator i = selection.iterator();
        while (i.hasNext()) {
            Object obj = i.next();
            if (obj instanceof IPackageFragmentRoot) {
                try {
                    IPackageFragmentRoot packageFragment = (IPackageFragmentRoot) obj;
                    if (packageFragment.getKind() == IPackageFragmentRoot.K_BINARY) {
                        if (MDE.hasPluginNature(packageFragment.getJavaProject().getProject())) {
                            if (packageFragment.getRawClasspathEntry()
                                    .getEntryKind() == IClasspathEntry.CPE_LIBRARY)
                                continue;
                        }
                    }
                } catch (JavaModelException e) {
                }
            }
            enabled = false;
            break;
        }
    } else {
        enabled = false;
        this.selection = null;
    }
    action.setEnabled(enabled);
}

From source file:com.testify.ecfeed.ui.common.EclipseModelImplementer.java

License:Open Source License

private IPackageFragmentRoot getAnySourceFolder() throws CoreException {
    if (fFileInfoProvider.getProject().hasNature(JavaCore.NATURE_ID)) {
        IJavaProject project = JavaCore.create(fFileInfoProvider.getProject());
        for (IPackageFragmentRoot packageFragmentRoot : project.getPackageFragmentRoots()) {
            if (packageFragmentRoot.getKind() == IPackageFragmentRoot.K_SOURCE) {
                return packageFragmentRoot;
            }/* w ww  .  j a  v  a 2 s.c  o m*/
        }
    }
    return null;
}

From source file:com.tsc9526.monalisa.plugin.eclipse.proposal.QueryNamespaceCache.java

License:Open Source License

private void collectMappers(IJavaProject project, final Map<String, IFile> map, final IReporter reporter) {
    try {//from   w w  w  .j  av  a 2 s .c om
        for (IPackageFragmentRoot root : project.getAllPackageFragmentRoots()) {
            if (root.getKind() != IPackageFragmentRoot.K_SOURCE) {
                continue;
            }

            root.getResource().accept(new IResourceProxyVisitor() {
                @Override
                public boolean visit(IResourceProxy proxy) throws CoreException {
                    if (!proxy.isDerived() && proxy.getType() == IResource.FILE
                            && proxy.getName().endsWith(".xml")) {
                        IFile file = (IFile) proxy.requestResource();
                        IContentDescription contentDesc = file.getContentDescription();
                        if (contentDesc != null) {
                            IContentType contentType = contentDesc.getContentType();
                            if (contentType != null && contentType.isKindOf(queryContentType)) {
                                String namespace = extractNamespace(file);
                                if (namespace != null) {
                                    map.put(namespace, file);
                                }
                                return false;
                            }
                        }
                    }
                    return true;
                }
            }, IContainer.NONE);
        }
    } catch (CoreException e) {
        Logger.error("Searching MyBatis Mapper xml failed.", e);
    }
}

From source file:com.versant.core.jdo.tools.eclipse.Utils.java

License:Open Source License

public static IPath getSrcPath(IProject iProject) throws JavaModelException {
    IJavaProject iJavaProject = JavaModelManager.getJavaModelManager().getJavaModel().findJavaProject(iProject);
    IPackageFragmentRoot[] roots = iJavaProject.getAllPackageFragmentRoots();
    IPath rawLocation = iProject.getLocation();
    for (int x = 0; x < roots.length; x++) {
        IPackageFragmentRoot root = roots[x];
        if (root.getKind() == IPackageFragmentRoot.K_SOURCE) {
            return rawLocation.append(root.getPath().removeFirstSegments(1));
        }// www . j  a v a  2s. c  om
    }
    return null;
}

From source file:com.versant.core.jdo.tools.plugins.eclipse.views.BaseExplorer.java

License:Open Source License

protected void makeActions() {
    actAddJDONature = new Action() {
        public void run() {
            IProject iProject = getSelectedIProject();
            if (iProject != null) {
                try {
                    VOAAddNatureDialog wizard = new VOAAddNatureDialog(iProject);
                    WizardDialog dialog = new WizardDialog(getSite().getShell(), wizard);
                    PixelConverter converter = new PixelConverter(JavaPlugin.getActiveWorkbenchShell());

                    dialog.setMinimumPageSize(converter.convertWidthInCharsToPixels(70),
                            converter.convertHeightInCharsToPixels(20));
                    dialog.create();/* w w w .  j  a v  a 2  s.  c om*/
                    int res = dialog.open();
                    if (res == Window.OK) {
                        IJavaProject iJavaProject = JavaModelManager.getJavaModelManager().getJavaModel()
                                .findJavaProject(iProject);
                        Utils.addJDONature(iJavaProject);
                    }
                    notifyResult(res == Window.OK);
                } catch (Exception x) {
                    VOAToolsPlugin.log(x, "Problems opening Mapping editor.");
                }
                refreshTree(false, true);
            }
        }
    };
    actAddJDONature.setText("Add VOA Nature");
    actAddJDONature.setToolTipText("Add VOA Nature");

    actRemoveJDONature = new Action() {
        public void run() {
            IProject iProject = getSelectedIProject();
            if (iProject != null) {
                IJavaProject iJavaProject = JavaModelManager.getJavaModelManager().getJavaModel()
                        .findJavaProject(iProject);
                RemoveJDONature.removeJDONature(iJavaProject);
                VOAProjectControler.removeInstance(iProject);
                refreshTree(false, true);
            }
        }
    };
    actRemoveJDONature.setText("Remove VOA Nature");
    actRemoveJDONature.setToolTipText("Remove VOA Nature");

    actEnhance = new Action() {
        public void run() {
            EnhanceAction.enhance(getSelectedIProject());
        }
    };
    actEnhance.setText("Enhance Classes");
    actEnhance.setToolTipText("Enhance Classes");

    actAddClass = new Action() {
        public void run() {
            try {
                IProject iProject = getSelectedIProjectInTree();
                if (iProject == null) {
                    return;
                }

                IJavaProject iJavaProject = JavaModelManager.getJavaModelManager().getJavaModel()
                        .findJavaProject(iProject);
                IPackageFragmentRoot[] roots = iJavaProject.getAllPackageFragmentRoots();
                ArrayList elementList = new ArrayList();
                for (int x = 0; x < roots.length; x++) {
                    IPackageFragmentRoot root = roots[x];
                    if (root.getKind() == IPackageFragmentRoot.K_SOURCE) {
                        elementList.addAll(Arrays.asList(root.getChildren()));
                    }
                }
                IJavaElement[] elements = new IJavaElement[elementList.size()];
                elementList.toArray(elements);
                IJavaSearchScope scope = SearchEngine.createJavaSearchScope(elements);
                SelectionDialog dialog = JavaUI.createTypeDialog(getSite().getShell(),
                        getSite().getWorkbenchWindow(), scope,
                        IJavaElementSearchConstants.CONSIDER_CLASSES_AND_INTERFACES, true);
                dialog.setTitle("Make Class Persistent");
                dialog.setMessage("Please select a class to make persistent");

                if (dialog.open() == Window.OK) {
                    VOAProjectControler controler = VOAProjectControler.getInstance(iProject);
                    Object[] results = dialog.getResult();
                    for (int i = 0; i < results.length; i++) {
                        IType itype = (IType) results[i];
                        controler.addClass(itype.getFullyQualifiedName());
                    }
                }
            } catch (Exception e) {
                VOAToolsPlugin.log(e, "Problems adding a persistent class.");
            } finally {
                refreshTree(false, true);
            }
        }
    };
    actAddClass.setText("Make Class Persistent");
    actAddClass.setImageDescriptor(VOAToolsPlugin.imageDescriptorFromPlugin("Versant", "icons/class16.png"));
    actAddClass.setToolTipText("Make  a class in you project persistent.");
}

From source file:com.windowtester.eclipse.ui.convert.WTAPIUsage.java

License:Open Source License

/**
 * Recursively iterate over the elements in the specified java element to convert each
 * compilation to use the new WindowTester API.
 * //from   ww w.j  a  v  a2  s  .  com
 * @param root the package fragment root (not <code>null</code>)
 * @param monitor the progress monitor (not <code>null</code>)
 */
private void scanPackageRoot(IPackageFragmentRoot root, IProgressMonitor monitor) throws JavaModelException {
    if (root.getKind() != IPackageFragmentRoot.K_SOURCE || visited.contains(root))
        return;
    visited.add(root);
    IJavaElement[] children = root.getChildren();
    monitor.beginTask("Scanning " + root.getPath(), children.length);
    for (int i = 0; i < children.length; i++) {
        scanElement(children[i], new SubProgressMonitor(monitor, 1));
        monitor.worked(1);
    }
    monitor.done();
}

From source file:com.windowtester.eclipse.ui.convert.WTConvertAPIRefactoring.java

License:Open Source License

/**
 * Recursively iterate over the elements in the specified java element to convert each
 * compilation to use the new WindowTester API.
 * //w ww.ja va  2  s  .  co m
 * @param root the package fragment root (not <code>null</code>)
 * @param monitor the progress monitor (not <code>null</code>)
 */
private void convertPackageRoot(IPackageFragmentRoot root, IProgressMonitor monitor) throws JavaModelException {
    if (root.getKind() != IPackageFragmentRoot.K_SOURCE || visited.contains(root))
        return;
    visited.add(root);
    IJavaElement[] children = root.getChildren();
    monitor.beginTask("Converting " + root.getPath(), children.length);
    for (int i = 0; i < children.length; i++)
        convertElement(children[i], new SubProgressMonitor(monitor, 1));
    monitor.done();
}