Example usage for org.eclipse.jdt.core IJavaProject getPackageFragmentRoots

List of usage examples for org.eclipse.jdt.core IJavaProject getPackageFragmentRoots

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IJavaProject getPackageFragmentRoots.

Prototype

IPackageFragmentRoot[] getPackageFragmentRoots() throws JavaModelException;

Source Link

Document

Returns all of the package fragment roots contained in this project, identified on this project's resolved classpath.

Usage

From source file:com.iw.plugins.spindle.refactor.DeletedComponentOrPageRefactor.java

License:Mozilla Public License

private List getSourceRootPaths(IJavaProject jproject) {

    ArrayList result = new ArrayList();

    try {//from   www .j  ava2s  . c o  m

        IPackageFragmentRoot[] roots = jproject.getPackageFragmentRoots();

        for (int i = 0; i < roots.length; i++) {

            if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) {

                result.add(roots[i].getPath());

            }

        }
    } catch (JavaModelException e) {
    }

    return result;

}

From source file:com.iw.plugins.spindle.ui.wizards.fields.ContainerDialogField.java

License:Mozilla Public License

public void init(IJavaElement elem, IRunnableContext context) {
    super.init(context);

    setButtonLabel(UIPlugin.getString(fName + ".button"));

    IPackageFragmentRoot initRoot = null;
    if (elem != null) {
        initRoot = CoreUtils.getPackageFragmentRoot(elem);
        if (initRoot == null) {
            IJavaProject jproject = elem.getJavaProject();
            try {
                initRoot = null;//from   w w  w.  ja v  a 2s .co  m
                IPackageFragmentRoot[] roots = jproject.getPackageFragmentRoots();
                for (int i = 0; i < roots.length; i++) {
                    if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) {
                        initRoot = roots[i];
                        break;
                    }
                }
            } catch (JavaModelException e) {
                UIPlugin.log(e);
            }
            if (initRoot == null) {
                initRoot = jproject.getPackageFragmentRoot("");
            }
        }
        setPackageFragmentRoot(initRoot, true);
    }
}

From source file:com.iw.plugins.spindle.ui.wizards.TypeChooseWizardPage.java

License:Mozilla Public License

private IPackageFragmentRoot getInitialRoot(IJavaProject jproject) {
    try {// w  w  w  .  j  a  va 2  s  .  c o m
        if (jproject != null) {
            IPackageFragmentRoot[] roots = jproject.getPackageFragmentRoots();
            for (int i = 0; i < roots.length; i++) {
                if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) {
                    return roots[i];
                }
            }
        }
    } catch (CoreException e) {
        // eat it
    }
    return null;
}

From source file:com.iw.plugins.spindle.wizards.fields.ContainerDialogField.java

License:Mozilla Public License

public void init(IJavaElement elem, IRunnableContext context) {
    super.init(context);

    setButtonLabel(MessageUtil.getString(name + ".button"));

    IPackageFragmentRoot initRoot = null;
    if (elem != null) {

        initRoot = Utils.getPackageFragmentRoot(elem);
        if (initRoot == null || initRoot.isArchive()) {
            IJavaProject jproject = elem.getJavaProject();
            try {
                initRoot = null;// ww w  .ja  v a 2s  .com
                IPackageFragmentRoot[] roots = jproject.getPackageFragmentRoots();
                for (int i = 0; i < roots.length; i++) {
                    if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) {
                        initRoot = roots[i];
                        break;
                    }
                }
            } catch (JavaModelException e) {
                TapestryPlugin.getDefault().logException(e);
            }
            if (initRoot == null) {
                initRoot = jproject.getPackageFragmentRoot("");
            }
        }
        setPackageFragmentRoot(initRoot, true);
    }
}

From source file:com.legstar.eclipse.plugin.cixsmap.dialogs.LegacyStructureDialog.java

License:Open Source License

/**
 * Examines packages in a given project and adds segments which contain the
 * .bind suffix to the package list table. ".bind" suffix identify segments
 * that correspond to COXB binding packages.
 * /*from w ww .j a va 2  s .  co  m*/
 * @param project the java project to get packages from
 * @return map of java package names to fragments
 * @throws CoreException if the given project is not a Java project
 */
private Map<String, IPackageFragment> createPackageList(final IProject project) throws CoreException {
    Map<String, IPackageFragment> packageMap = new HashMap<String, IPackageFragment>();
    IJavaProject jproject = JavaCore.create(project);
    IPackageFragmentRoot[] pkgRoots = jproject.getPackageFragmentRoots();
    for (int j = 0; j < pkgRoots.length; j++) {
        IPackageFragmentRoot pkgRoot = pkgRoots[j];
        if (pkgRoot.getKind() == IPackageFragmentRoot.K_SOURCE) {
            for (int k = 0; k < pkgRoot.getChildren().length; k++) {
                IJavaElement el = pkgRoot.getChildren()[k];
                if (el.getPath().lastSegment().compareTo(BIND_FRAG) == 0) {
                    packageMap.put(el.getElementName(), (IPackageFragment) el);
                }
            }
        }
    }
    return packageMap;
}

From source file:com.legstar.eclipse.plugin.cixsmap.wizards.NewMappingFileWizardPage.java

License:Open Source License

/** {@inheritDoc} */
protected boolean validatePage() {
    setCanFinish(false);/*from  ww  w . j a  va  2 s.  co  m*/
    if (!super.validatePage()) {
        return false;
    }

    /* There must be a mapping file name */
    if (getFileName() == null || getFileName().length() == 0) {
        setErrorMessage(NLS.bind(Messages.invalid_mapping_file_msg, getFileName()));
        return false;
    }

    /* There must be more than the mere mapping file name extension */
    IPath path = new Path(getFileName());
    IPath noExtensionPath = path.removeFileExtension();
    if (noExtensionPath.isEmpty()) {
        setErrorMessage(NLS.bind(Messages.invalid_mapping_file_msg, getFileName()));
        return false;
    }

    /* Make sure the file name has the correct extension */
    String extension = path.getFileExtension();
    if (extension == null || !extension.equals(Messages.operations_mapping_file_suffix)) {
        setErrorMessage(NLS.bind(Messages.invalid_mapping_file_extension_msg, extension,
                Messages.operations_mapping_file_suffix));
        return false;
    }

    /* Only Java projects are valid containers. */
    IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
    IResource resource = root.findMember(getContainerFullPath());
    IJavaProject jproject = JavaCore.create(resource.getProject());
    try {
        /* Check that there are LegStar binding classes in this project */
        IPackageFragmentRoot[] pkgRoots = jproject.getPackageFragmentRoots();
        for (int j = 0; j < pkgRoots.length; j++) {
            IPackageFragmentRoot pkgRoot = pkgRoots[j];
            if (pkgRoot.getKind() == IPackageFragmentRoot.K_SOURCE) {
                for (int k = 0; k < pkgRoot.getChildren().length; k++) {
                    IJavaElement el = pkgRoot.getChildren()[k];
                    if (el.getPath().lastSegment().compareTo(LegacyStructureDialog.BIND_FRAG) == 0) {
                        setCanFinish(true);
                        return true;
                    }
                }
            }
        }
        setErrorMessage(NLS.bind(Messages.no_coxb_classes_in_project_msg, resource.getProject().getName()));
        return false;
    } catch (JavaModelException e) {
        setErrorMessage(
                NLS.bind(Messages.invalid_java_project_msg, resource.getProject().getName(), e.getMessage()));
        return false;
    }

}

From source file:com.liferay.ide.adt.core.model.internal.JavaPackageNameDefaultValueService.java

License:Open Source License

@Override
protected String compute() {
    final IJavaProject project = op().adapt(IJavaProject.class);

    try {//from  www. j  av a 2s .c om
        final IPackageFragmentRoot[] roots = project.getPackageFragmentRoots();

        for (IPackageFragmentRoot root : roots) {
            if (root.getKind() != IPackageFragmentRoot.K_BINARY) {
                for (IJavaElement element : root.getChildren()) {
                    if (element instanceof IPackageFragment) {
                        final IPackageFragment fragment = (IPackageFragment) element;

                        if (!fragment.isDefaultPackage() && !fragment.hasSubpackages()) {
                            return fragment.getElementName();
                        }
                    }
                }
            }
        }
    } catch (Exception e) {
        ADTCore.logError(e.getMessage(), e);
    }

    return null;
}

From source file:com.liferay.ide.core.util.PropertiesUtil.java

License:Open Source License

public static List<IFile> getDefaultLanguagePropertiesFromModuleProject(IProject project) {
    IJavaProject javaProject = JavaCore.create(project);

    IType portletType = null;/* www  .j  ava  2  s . c  o m*/

    List<IFile> retvals = new ArrayList<IFile>();

    try {
        portletType = javaProject.findType("javax.portlet.Portlet");

        final ITypeHierarchy typeHierarchy = portletType.newTypeHierarchy(javaProject,
                new NullProgressMonitor());

        final IPackageFragmentRoot[] packageRoots = javaProject.getPackageFragmentRoots();

        List<String> packages = new ArrayList<String>();

        List<IType> srcJavaTypes = new ArrayList<IType>();

        for (IPackageFragmentRoot packageRoot : packageRoots) {
            if (packageRoot.getKind() == IPackageFragmentRoot.K_SOURCE) {
                IJavaElement[] javaElements = packageRoot.getChildren();

                for (IJavaElement javaElement : javaElements) {
                    IPackageFragment packageFragment = (IPackageFragment) javaElement;

                    packages.add(packageFragment.getElementName());
                }
            }
        }

        IType[] subTypes = typeHierarchy.getAllSubtypes(portletType);

        for (IType type : subTypes) {
            if (isInPackage(packages, type.getFullyQualifiedName())) {
                srcJavaTypes.add(type);
            }
        }

        String resourceBundleValue = null;

        for (IType type : srcJavaTypes) {
            File file = type.getResource().getLocation().toFile();
            String content = FileUtil.readContents(file);

            String key = "javax.portlet.resource-bundle=";

            int i = content.indexOf(key);

            if (i == -1) {
                continue;
            } else {
                i += key.length();

                StringBuilder strBuilder = new StringBuilder();

                for (; i < content.length(); i++) {
                    char ch = content.charAt(i);
                    if (ch != '"') {
                        strBuilder.append(ch);
                    } else {
                        break;
                    }
                }

                resourceBundleValue = strBuilder.toString();
                // find the first language config
                break;
            }
        }

        String resourceBundle = resourceBundleValue.replaceAll("(^\\s*)|(\\s*$)", StringPool.BLANK);

        if (!resourceBundle.endsWith(PROPERTIES_FILE_SUFFIX) && !resourceBundle.contains(IPath.SEPARATOR + "")
                && !(CoreUtil.isWindows() && resourceBundle.contains("\\"))) {
            resourceBundle = new Path(resourceBundle.replace(".", IPath.SEPARATOR + "")).toString();
        }

        final ILiferayProject lrproject = LiferayCore.create(project);
        final IFolder[] srcFolders = lrproject.getSourceFolders();

        for (IFolder srcFolder : srcFolders) {
            final IFile languageFile = CoreUtil.getWorkspaceRoot()
                    .getFile(srcFolder.getFullPath().append(resourceBundle + PROPERTIES_FILE_SUFFIX));

            if ((languageFile != null) && languageFile.exists()) {
                retvals.add(languageFile);
            }
        }
    } catch (Exception e) {
    }

    return retvals;
}

From source file:com.liferay.ide.portlet.core.util.PortletUtil.java

License:Open Source License

/**
 * This method will return the first source folder of the Java project
 * //from  ww  w.j  a  va2  s.  c om
 * @param javaProject
 *            - the java project where the source folder needs to be indentified
 * @return
 * @throws JavaModelException
 */
public static IPackageFragmentRoot getSourceFolder(IJavaProject javaProject) throws JavaModelException {
    for (IPackageFragmentRoot root : javaProject.getPackageFragmentRoots()) {
        if (root.getKind() == IPackageFragmentRoot.K_SOURCE) {
            return root;
        }
    }

    return null;
}

From source file:com.liferay.ide.project.core.modules.templates.AbstractLiferayComponentTemplate.java

License:Open Source License

protected IPackageFragmentRoot getSourceFolder(IJavaProject javaProject) {
    try {//from  w  w  w . jav a2s  . co m
        for (IPackageFragmentRoot root : javaProject.getPackageFragmentRoots()) {
            if (root.getKind() == IPackageFragmentRoot.K_SOURCE) {
                return root;
            }
        }
    } catch (Exception e) {
        ProjectCore.logError(e);
    }
    return null;
}