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

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

Introduction

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

Prototype

IJavaProject getJavaProject();

Source Link

Document

Returns the Java project this element is contained in, or null if this element is not contained in any Java project (for instance, the IJavaModel is not contained in any Java project).

Usage

From source file:org.grails.ide.eclipse.core.internal.GrailsResourceUtil.java

License:Open Source License

public static boolean isSourceFolder(IPackageFragmentRoot root) {
    IJavaProject jp = root.getJavaProject();
    try {/*from www.j  a v a  2 s .c  o  m*/
        IResource rootRsrc = root.getCorrespondingResource();
        if (rootRsrc == null) {
            return false;
        }
        IPath rootPath = rootRsrc.getFullPath();
        for (IClasspathEntry entry : jp.getRawClasspath()) {
            if (entry.getEntryKind() == IClasspathEntry.CPE_SOURCE) {
                if (entry.getPath() != null && entry.getPath().equals(rootPath)) {
                    return true;
                }
            }
        }
    } catch (JavaModelException e) {
        e.printStackTrace();
    }
    return false;
}

From source file:org.gw4e.eclipse.facade.GraphWalkerContextManager.java

License:Open Source License

/**
 * @param file/* w  w w  .ja  va 2 s  . c  o m*/
 * @return
 * @throws CoreException
 */
public static AbstractPostConversion getDefaultGraphConversion(IFile file, boolean generateOnlyInterface)
        throws CoreException {
    AbstractPostConversion converter = null;
    boolean canBeConverted = PreferenceManager.isGraphModelFile(file);
    if (canBeConverted) {
        String targetFolder = GraphWalkerContextManager.getTargetFolderForTestImplementation(file);
        IPath pkgFragmentRootPath = file.getProject().getFullPath().append(new Path(targetFolder));
        IPackageFragmentRoot implementationFragmentRoot = JDTManager.getPackageFragmentRoot(file.getProject(),
                pkgFragmentRootPath);
        String classname = file.getName().split("\\.")[0];
        classname = classname + PreferenceManager.suffixForTestImplementation(
                implementationFragmentRoot.getJavaProject().getProject().getName()) + ".java";

        ClassExtension ce = PreferenceManager.getDefaultClassExtension(file);
        IPath p = ResourceManager.getPathWithinPackageFragment(file).removeLastSegments(1);
        p = implementationFragmentRoot.getPath().append(p);
        ResourceContext context = new ResourceContext(p, classname, file, true, false, generateOnlyInterface,
                ce);
        converter = new JavaTestBasedPostConversionImpl(context);
    }
    return converter;
}

From source file:org.gw4e.eclipse.facade.ResourceManager.java

License:Open Source License

/**
 * Lets get the path of hat have been selected in the UI - the complete path
 * a path is something like "src/main/resources"
 * /* w  w  w  . j av a2s.c  o  m*/
 * @param receiver
 * @return
 */
public static String getSelectedPathInProject(Object receiver) {
    if (!ResourceManager.isPackageFragmentRoot(receiver)) {
        return null;
    }
    IPackageFragmentRoot pkg = (IPackageFragmentRoot) receiver;

    IJavaProject javaProject = pkg.getJavaProject();
    if (javaProject == null)
        return null;

    IProject project = javaProject.getProject();

    if (!GW4ENature.hasGW4ENature(project))
        return null;

    String projectName = pkg.getJavaProject().getElementName();
    int pos = projectName.length();
    String input = pkg.getPath().toString().substring(pos + 2);
    return input;
}

From source file:org.gw4e.eclipse.menu.SynchronizeBuildPoliciesEnabled.java

License:Open Source License

@Override
public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
    IProject project = null;//from  www  . j av a  2  s.c  om
    boolean authorized = false;
    if (receiver instanceof IJavaProject) {
        project = ((IJavaProject) receiver).getProject();
        authorized = true;
    } else {
        if (receiver instanceof IPackageFragmentRoot) {
            IPackageFragmentRoot pfr = ((IPackageFragmentRoot) receiver);
            project = pfr.getJavaProject().getProject();
            try {
                authorized = (pfr.getKind() == IPackageFragmentRoot.K_SOURCE);
            } catch (JavaModelException ignore) {
            }
        } else {
            if (receiver instanceof IPackageFragment) {
                IPackageFragment pf = (IPackageFragment) receiver;
                project = pf.getJavaProject().getProject();
                authorized = true;
            }
        }
    }
    if (authorized && project != null) {
        if (GW4ENature.hasGW4ENature(project))
            return true;
    }

    return false;
}

From source file:org.gw4e.eclipse.test.fwk.GenerationFactory.java

License:Open Source License

public static TestResourceGeneration get(IFile file) throws CoreException, FileNotFoundException {
    String targetFolder = GraphWalkerContextManager.getTargetFolderForTestImplementation(file);
    IPath pkgFragmentRootPath = file.getProject().getFullPath().append(new Path(targetFolder));
    IPackageFragmentRoot implementationFragmentRoot = JDTManager.getPackageFragmentRoot(file.getProject(),
            pkgFragmentRootPath);/*from ww w  . j  a  v  a 2s .c om*/
    String classname = file.getName().split("\\.")[0];
    classname = classname + PreferenceManager.suffixForTestImplementation(
            implementationFragmentRoot.getJavaProject().getProject().getName()) + ".java";

    ClassExtension ce = PreferenceManager.getDefaultClassExtension(file);
    IPath p = ResourceManager.getPathWithinPackageFragment(file).removeLastSegments(1);
    p = implementationFragmentRoot.getPath().append(p);

    ResourceContext context = new ResourceContext(p, classname, file, true, false, false, ce);

    TestResourceGeneration trg = new TestResourceGeneration(context);
    return trg;
}

From source file:org.gw4e.eclipse.test.fwk.GenerationFactory.java

License:Open Source License

public static ResourceContext getResourceContext(IFile file) throws CoreException, FileNotFoundException {
    String targetFolder = GraphWalkerContextManager.getTargetFolderForTestImplementation(file);
    IPath pkgFragmentRootPath = file.getProject().getFullPath().append(new Path(targetFolder));
    IPackageFragmentRoot implementationFragmentRoot = JDTManager.getPackageFragmentRoot(file.getProject(),
            pkgFragmentRootPath);// w  ww.  j ava2  s .  c o m
    String classname = file.getName().split("\\.")[0];
    classname = classname + PreferenceManager.suffixForTestImplementation(
            implementationFragmentRoot.getJavaProject().getProject().getName()) + ".java";

    ClassExtension ce = PreferenceManager.getDefaultClassExtension(file);
    IPath p = ResourceManager.getPathWithinPackageFragment(file).removeLastSegments(1);
    p = implementationFragmentRoot.getPath().append(p);

    ResourceContext context = new ResourceContext(p, classname, file, true, false, false, ce);

    return context;
}

From source file:org.jboss.ide.eclipse.as.ui.mbeans.wizards.pages.NewSessionBeanWizardPage.java

License:Open Source License

protected IPackageFragment getPackageFragment(String packageName) throws CoreException {
    // This was copied over from NewTypeWizardPage.packageChanged, and made more generic so we could use it for multiple package inputs
    StatusInfo status = new StatusInfo();

    if (packageName.length() > 0) {
        IStatus val = JavaConventions.validatePackageName(packageName);
        if (val.getSeverity() == IStatus.ERROR) {
            status.setError(NewWizardMessages.bind(NewWizardMessages.NewTypeWizardPage_error_InvalidPackageName,
                    val.getMessage()));
            throw new CoreException(status);
        } else if (val.getSeverity() == IStatus.WARNING) {
            status.setWarning(NewWizardMessages.bind(
                    NewWizardMessages.NewTypeWizardPage_warning_DiscouragedPackageName, val.getMessage()));
            // continue
        }//w w w.j  av  a 2s .  com
    } else {
        status.setWarning(NewWizardMessages.NewTypeWizardPage_warning_DefaultPackageDiscouraged);
    }

    IPackageFragmentRoot root = getPackageFragmentRoot();
    if (root != null) {
        if (root.getJavaProject().exists() && packageName.length() > 0) {
            try {
                IPath rootPath = root.getPath();
                IPath outputPath = root.getJavaProject().getOutputLocation();
                if (rootPath.isPrefixOf(outputPath) && !rootPath.equals(outputPath)) {
                    // if the bin folder is inside of our root, don't allow to name a package
                    // like the bin folder
                    IPath packagePath = rootPath.append(packageName.replace('.', '/'));
                    if (outputPath.isPrefixOf(packagePath)) {
                        status.setError(NewWizardMessages.NewTypeWizardPage_error_ClashOutputLocation);
                        throw new CoreException(status);
                    }
                }
            } catch (JavaModelException e) {
                JavaPlugin.log(e);
                // let pass         
            }
        }

        return root.getPackageFragment(packageName);
    } else {
        status.setError(""); //$NON-NLS-1$
    }

    throw new CoreException(status);
}

From source file:org.jboss.tools.arquillian.ui.internal.wizards.NewArquillianJUnitTestCaseDeploymentPage.java

License:Open Source License

protected IJavaProject getJavaProject() {
    if (javaElement != null) {
        return javaElement.getJavaProject();
    }/*  w w  w .j a  v a 2s  .  co m*/
    IWizardPage page = getWizard().getPages()[0];
    if (page instanceof NewArquillianJUnitTestCasePageOne) {
        NewArquillianJUnitTestCasePageOne pageOne = (NewArquillianJUnitTestCasePageOne) page;
        IPackageFragmentRoot root = pageOne.getPackageFragmentRoot();
        if (root != null) {
            return root.getJavaProject();
        }
    }
    return null;
}

From source file:org.jboss.tools.arquillian.ui.internal.wizards.NewArquillianJUnitTestCasePageOne.java

License:Open Source License

private void updateBuildPathMessage() {
    if (fLink == null || fLink.isDisposed()) {
        return;// w  w w. j a  v  a2  s  .com
    }

    String message = null;
    IPackageFragmentRoot root = getPackageFragmentRoot();
    if (root != null) {
        IJavaProject project = root.getJavaProject();
        if (project.exists()) {
            if (!JUnitStubUtility.is50OrHigher(project)) {
                message = WizardMessages.NewTestCaseWizardPageOne_linkedtext_java5required;
            }
        }
    }
    fLink.setVisible(message != null);
    fImage.setVisible(message != null);

    if (message != null) {
        fLink.setText(message);
    }
}

From source file:org.jboss.tools.arquillian.ui.internal.wizards.NewArquillianJUnitTestCasePageOne.java

License:Open Source License

private IType chooseClassToTestType() {
    IPackageFragmentRoot root = getPackageFragmentRoot();
    if (root == null)
        return null;

    IJavaElement[] elements = new IJavaElement[] { root.getJavaProject() };
    IJavaSearchScope scope = SearchEngine.createJavaSearchScope(elements);

    try {/*from w w w. java 2s. c om*/
        SelectionDialog dialog = JavaUI.createTypeDialog(getShell(), getWizard().getContainer(), scope,
                IJavaElementSearchConstants.CONSIDER_CLASSES_AND_ENUMS, false, getClassUnderTestText());
        dialog.setTitle(WizardMessages.NewTestCaseWizardPageOne_class_to_test_dialog_title);
        dialog.setMessage(WizardMessages.NewTestCaseWizardPageOne_class_to_test_dialog_message);
        if (dialog.open() == Window.OK) {
            Object[] resultArray = dialog.getResult();
            if (resultArray != null && resultArray.length > 0)
                return (IType) resultArray[0];
        }
    } catch (JavaModelException e) {
        ArquillianUIActivator.log(e);
    }
    return null;
}