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

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

Introduction

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

Prototype

boolean isReadOnly();

Source Link

Document

Returns whether this Java element is read-only.

Usage

From source file:org.codehaus.groovy.eclipse.core.model.GroovyProjectFacade.java

License:Apache License

public List<IType> findAllRunnableTypes() throws JavaModelException {
    final List<IType> results = newList();
    IPackageFragmentRoot[] roots = project.getAllPackageFragmentRoots();
    for (IPackageFragmentRoot root : roots) {
        if (!root.isReadOnly()) {
            IJavaElement[] children = root.getChildren();
            for (IJavaElement child : children) {
                if (child.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
                    ICompilationUnit[] units = ((IPackageFragment) child).getCompilationUnits();
                    for (ICompilationUnit unit : units) {
                        results.addAll(findAllRunnableTypes(unit));
                    }/*  w w w.  j ava2s  .c o m*/
                }
            }
        }
    }
    return results;
}

From source file:org.codehaus.groovy.eclipse.core.model.GroovyProjectFacade.java

License:Apache License

/**
 * @return/*from w  w  w. jav  a 2 s.  co m*/
 * @throws JavaModelException
 */
public List<IType> findAllScripts() throws JavaModelException {
    final List<IType> results = newList();
    IPackageFragmentRoot[] roots = project.getAllPackageFragmentRoots();
    for (IPackageFragmentRoot root : roots) {
        if (!root.isReadOnly()) {
            IJavaElement[] children = root.getChildren();
            for (IJavaElement child : children) {
                if (child.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
                    ICompilationUnit[] units = ((IPackageFragment) child).getCompilationUnits();
                    for (ICompilationUnit unit : units) {
                        if (unit instanceof GroovyCompilationUnit) {
                            for (IType type : unit.getTypes()) {
                                if (isGroovyScript(type)) {
                                    results.add(type);
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    return results;
}

From source file:org.eclipse.ajdt.internal.core.ajde.CoreOutputLocationManager.java

License:Open Source License

public String getSourceFolderForFile(File sourceFile) {
    String sourceFilePath = sourceFile.getAbsolutePath();
    for (Entry<String, String> sourceFolderMapping : allSourceFolders.entrySet()) {
        if (sourceFilePath.startsWith(sourceFolderMapping.getKey())) {
            return sourceFolderMapping.getValue();
        }//from  ww w .ja va2s  .c o  m
    }

    // might be a linked folder in a source folder
    IFile[] files = fileCache.findFilesForURI(sourceFile.toURI());
    try {
        IPackageFragmentRoot[] roots = jProject.getPackageFragmentRoots();
        for (IPackageFragmentRoot root : roots) {
            if (!root.isReadOnly()) {
                IContainer container = (IContainer) root.getResource();
                for (IFile file : files) {
                    if (container.getFullPath().isPrefixOf(file.getFullPath())) {
                        return allSourceFolders.get(container.getLocation().toOSString());
                    }
                }
            }
        }
    } catch (JavaModelException e) {
    }

    return null;
}

From source file:org.eclipse.babel.tapiji.tools.core.ui.quickfix.CreateResourceBundle.java

License:Open Source License

protected void runAction() {
    // First see if this is a "new wizard".
    IWizardDescriptor descriptor = PlatformUI.getWorkbench().getNewWizardRegistry().findWizard(newBunldeWizard);
    // If not check if it is an "import wizard".
    if (descriptor == null) {
        descriptor = PlatformUI.getWorkbench().getImportWizardRegistry().findWizard(newBunldeWizard);
    }/*www  . j ava 2  s .  c  om*/
    // Or maybe an export wizard
    if (descriptor == null) {
        descriptor = PlatformUI.getWorkbench().getExportWizardRegistry().findWizard(newBunldeWizard);
    }
    try {
        // Then if we have a wizard, open it.
        if (descriptor != null) {
            IWizard wizard = descriptor.createWizard();
            if (!(wizard instanceof IResourceBundleWizard)) {
                return;
            }

            IResourceBundleWizard rbw = (IResourceBundleWizard) wizard;
            String[] keySilbings = key.split("\\.");
            String rbName = keySilbings[keySilbings.length - 1];
            String packageName = "";

            rbw.setBundleId(rbName);

            // Set the default path according to the specified package name
            String pathName = "";
            if (keySilbings.length > 1) {
                try {
                    IJavaProject jp = JavaCore.create(resource.getProject());
                    packageName = key.substring(0, key.lastIndexOf("."));

                    for (IPackageFragmentRoot fr : jp.getAllPackageFragmentRoots()) {
                        IPackageFragment pf = fr.getPackageFragment(packageName);
                        if (pf.exists()) {
                            pathName = pf.getResource().getFullPath().removeFirstSegments(0).toOSString();
                            break;
                        }
                    }
                } catch (Exception e) {
                    pathName = "";
                }
            }

            try {
                IJavaProject jp = JavaCore.create(resource.getProject());
                if (pathName.trim().equals("")) {
                    for (IPackageFragmentRoot fr : jp.getAllPackageFragmentRoots()) {
                        if (!fr.isReadOnly()) {
                            pathName = fr.getResource().getFullPath().removeFirstSegments(0).toOSString();
                            break;
                        }
                    }
                }
            } catch (Exception e) {
                pathName = "";
            }

            rbw.setDefaultPath(pathName);

            WizardDialog wd = new WizardDialog(Display.getDefault().getActiveShell(), wizard);
            wd.setTitle(wizard.getWindowTitle());
            if (wd.open() == WizardDialog.OK) {
                try {
                    resource.getProject().build(IncrementalProjectBuilder.FULL_BUILD, I18nBuilder.BUILDER_ID,
                            null, null);
                } catch (CoreException e) {
                    Logger.logError(e);
                }

                ITextFileBufferManager bufferManager = FileBuffers.getTextFileBufferManager();
                IPath path = resource.getRawLocation();
                try {
                    bufferManager.connect(path, null);
                    ITextFileBuffer textFileBuffer = bufferManager.getTextFileBuffer(path);
                    IDocument document = textFileBuffer.getDocument();

                    if (document.get().charAt(start - 1) == '"' && document.get().charAt(start) != '"') {
                        start--;
                        end++;
                    }
                    if (document.get().charAt(end + 1) == '"' && document.get().charAt(end) != '"') {
                        end++;
                    }

                    document.replace(start, end - start,
                            "\"" + (packageName.equals("") ? "" : packageName + ".") + rbName + "\"");

                    textFileBuffer.commit(null, false);
                } catch (Exception e) {
                    Logger.logError(e);
                } finally {
                    try {
                        bufferManager.disconnect(path, null);
                    } catch (CoreException e) {
                        Logger.logError(e);
                    }
                }
            }
        }
    } catch (CoreException e) {
        Logger.logError(e);
    }
}

From source file:org.eclipse.babel.tapiji.tools.java.ui.autocompletion.CreateResourceBundleProposal.java

License:Open Source License

@SuppressWarnings("deprecation")
protected void runAction() {
    // First see if this is a "new wizard".
    IWizardDescriptor descriptor = PlatformUI.getWorkbench().getNewWizardRegistry().findWizard(newBunldeWizard);
    // If not check if it is an "import wizard".
    if (descriptor == null) {
        descriptor = PlatformUI.getWorkbench().getImportWizardRegistry().findWizard(newBunldeWizard);
    }//from  w w w .j  a  v a 2 s .  co  m
    // Or maybe an export wizard
    if (descriptor == null) {
        descriptor = PlatformUI.getWorkbench().getExportWizardRegistry().findWizard(newBunldeWizard);
    }
    try {
        // Then if we have a wizard, open it.
        if (descriptor != null) {
            IWizard wizard = descriptor.createWizard();

            if (!(wizard instanceof IResourceBundleWizard)) {
                return;
            }

            IResourceBundleWizard rbw = (IResourceBundleWizard) wizard;
            String[] keySilbings = key.split("\\.");
            String rbName = keySilbings[keySilbings.length - 1];
            String packageName = "";

            rbw.setBundleId(rbName);

            // Set the default path according to the specified package name
            String pathName = "";
            if (keySilbings.length > 1) {
                try {
                    IJavaProject jp = JavaCore.create(resource.getProject());
                    packageName = key.substring(0, key.lastIndexOf("."));

                    for (IPackageFragmentRoot fr : jp.getAllPackageFragmentRoots()) {
                        IPackageFragment pf = fr.getPackageFragment(packageName);
                        if (pf.exists()) {
                            pathName = pf.getResource().getFullPath().removeFirstSegments(0).toOSString();
                            break;
                        }
                    }
                } catch (Exception e) {
                    pathName = "";
                }
            }

            try {
                IJavaProject jp = JavaCore.create(resource.getProject());
                if (pathName.trim().equals("")) {
                    for (IPackageFragmentRoot fr : jp.getAllPackageFragmentRoots()) {
                        if (!fr.isReadOnly()) {
                            pathName = fr.getResource().getFullPath().removeFirstSegments(0).toOSString();
                            break;
                        }
                    }
                }
            } catch (Exception e) {
                pathName = "";
            }

            rbw.setDefaultPath(pathName);

            WizardDialog wd = new WizardDialog(Display.getDefault().getActiveShell(), wizard);

            wd.setTitle(wizard.getWindowTitle());
            if (wd.open() == WizardDialog.OK) {
                try {
                    resource.getProject().build(IncrementalProjectBuilder.FULL_BUILD, I18nBuilder.BUILDER_ID,
                            null, null);
                } catch (CoreException e) {
                    Logger.logError(e);
                }

                ITextFileBufferManager bufferManager = FileBuffers.getTextFileBufferManager();
                IPath path = resource.getRawLocation();
                try {
                    bufferManager.connect(path, LocationKind.NORMALIZE, null);
                    ITextFileBuffer textFileBuffer = bufferManager.getTextFileBuffer(path,
                            LocationKind.NORMALIZE);
                    IDocument document = textFileBuffer.getDocument();

                    if (document.get().charAt(start - 1) == '"' && document.get().charAt(start) != '"') {
                        start--;
                        end++;
                    }
                    if (document.get().charAt(end + 1) == '"' && document.get().charAt(end) != '"') {
                        end++;
                    }

                    document.replace(start, end - start,
                            "\"" + (packageName.equals("") ? "" : packageName + ".") + rbName + "\"");

                    textFileBuffer.commit(null, false);
                } catch (Exception e) {
                } finally {
                    try {
                        bufferManager.disconnect(path, null);
                    } catch (CoreException e) {
                    }
                }
            }
        }
    } catch (CoreException e) {
    }
}

From source file:org.eclipse.jst.servlet.ui.internal.navigator.WebJavaContentProvider.java

License:Open Source License

private IPackageFragment locatePackageFragment(IFolder child) throws JavaModelException {
    IJavaElement elem = JavaCore.create(child);
    if (elem instanceof IPackageFragment) {
        IPackageFragment packageFragment = (IPackageFragment) elem;
        for (IJavaElement javaElem = packageFragment; javaElem != null; javaElem = javaElem.getParent()) {
            if (javaElem instanceof IPackageFragmentRoot) {
                IPackageFragmentRoot fragmentRoot = (IPackageFragmentRoot) javaElem;
                if (!fragmentRoot.isReadOnly() && !fragmentRoot.isExternal()) {
                    return packageFragment;
                }/*from   w w  w  .  j  a va  2 s.  c o m*/
            }
        }
    }
    return null;
}

From source file:org.eclipse.scout.sdk.saml.importer.operation.AbstractSamlElementImportOperation.java

License:Open Source License

protected void deleteClass(IScoutBundle bundle, String pckName, String className) throws CoreException {
    String fileName = className + ".java";
    for (IPackageFragmentRoot r : bundle.getJavaProject().getPackageFragmentRoots()) {
        if (!r.isArchive() && !r.isReadOnly() && !r.isExternal()) {
            IFolder fld = (IFolder) r.getResource();
            if (fld.exists()) {
                IFolder packageFolder = fld.getFolder(new Path(pckName.replace('.', '/')));
                if (packageFolder.exists()) {
                    IFile javaFile = packageFolder.getFile(fileName);
                    if (javaFile.exists()) {
                        javaFile.delete(true, false, getSamlContext().getMonitor());
                        break;
                    }/*from w w  w  .  j  a va 2s .c om*/
                }
            }
        }
    }
}

From source file:org.fastcode.util.SourceUtil.java

License:Open Source License

/**
 *
 * @return// w  w  w .ja v a  2 s.  c om
 */
public static String[][] getAllSourcePaths(final String filter) {
    final IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();

    final List<String> paths = new ArrayList<String>();

    try {
        for (final IProject project : projects) {
            final IJavaProject javaProject = JavaCore.create(project);
            if (javaProject != null && javaProject.exists() && isJunitEnabled(javaProject)
                    && javaProject.isOpen() && !javaProject.isReadOnly()) {
                for (final IPackageFragmentRoot packageFragmentRoot : javaProject
                        .getAllPackageFragmentRoots()) {
                    if (!(packageFragmentRoot.isArchive() || packageFragmentRoot.isReadOnly())) {
                        String sourcePath = packageFragmentRoot.getPath().toString();
                        sourcePath = sourcePath.replace(FORWARD_SLASH + project.getName(), "${project}");
                        if (filter == null || sourcePath.toUpperCase().contains(filter.toUpperCase())) {
                            boolean include = true;
                            for (final String path : paths) {
                                if (path.equals(sourcePath)) {
                                    include = false;
                                    break;
                                }
                            }
                            if (include) {
                                paths.add(sourcePath);
                            }
                        }
                    }
                }
            }
        }
    } catch (final JavaModelException ex) {
        ex.printStackTrace();
        return new String[0][0];
    }

    return getStringArrayFromList(paths, false);
}

From source file:org.key_project.util.jdt.JDTUtil.java

License:Open Source License

/**
 * Returns all available packages.//from  w ww .j a  va  2 s .co  m
 * @return All packages.
 * @throws JavaModelException Occurred Exception.
 */
public static IJavaElement[] getAllPackageFragmentRoot() throws JavaModelException {
    IJavaProject[] jProjects = getAllJavaProjects();
    Set<IJavaElement> packages = new HashSet<IJavaElement>();
    for (IJavaProject jProject : jProjects) {
        IPackageFragmentRoot[] froots = jProject.getAllPackageFragmentRoots();
        for (IPackageFragmentRoot froot : froots) {
            if (froot != null && froot.exists() && !froot.isReadOnly()) {
                IJavaElement[] children = froot.getChildren();
                for (IJavaElement element : children) {
                    packages.add(element);
                }
            }
        }
    }
    return packages.toArray(new IJavaElement[packages.size()]);
}