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

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

Introduction

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

Prototype

IProject getProject();

Source Link

Document

Returns the IProject on which this IJavaProject was created.

Usage

From source file:com.iw.plugins.spindle.ui.properties.ProjectPropertyPage.java

License:Mozilla Public License

public boolean isValid() {
    setErrorMessage(null);//from  www.  j  a  v a2 s . c om

    IJavaProject jproject = null;
    try {
        jproject = getJavaProject();
    } catch (CoreException e) {
        UIPlugin.log(e);
    }

    if (jproject == null) {
        setErrorMessage(UIPlugin.getString("property-page-no-java-project"));
        disableAll();
        return true;
    }

    IProject project = jproject.getProject();

    try {
        // old spindle and new spindle can't co-exist!
        if (project.hasNature("com.iw.plugins.spindle.project.TapestryProject")) {
            setErrorMessage(UIPlugin.getString("property-page-conflicts-with-old-spindle"));
            disableAll();
            return false;
        }
    } catch (CoreException e1) {
        UIPlugin.log(e1);
    }

    if (!fIsTapestryProjectCheck.getSelection()) {
        return true;
    }

    String wcroot = fWebContextRoot.getText();
    if (wcroot == null || wcroot.trim().length() == 0)
        return false;

    wcroot = wcroot.trim();

    if (!wcroot.startsWith("/"))
        wcroot = "/" + wcroot;

    IPath projPath = project.getFullPath();
    String fullPath = projPath.toString() + wcroot;
    if (!projPath.isValidPath(fullPath)) {
        setErrorMessage("not a valid path: " + fullPath); // TODO

        return false;
    }
    if (DEBUG)
        UIPlugin.log("isValid() ->about to validate the context root: " + wcroot);
    String badApp;
    try {
        badApp = fDialogContextValidator.isValid(new Path(fullPath));
    } catch (RuntimeException e2) {
        if (DEBUG)
            UIPlugin.log("isValid() -> an exception ocurred");
        throw e2;
    }
    if (badApp != null) {
        setErrorMessage(badApp);
        return false;
    }

    return true;
}

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

License:Mozilla Public License

private IPackageFragmentRoot chooseSourceContainer(IJavaElement initElement) {
    final IJavaProject thisProject = initElement.getJavaProject();
    Class[] acceptedClasses = new Class[] { IPackageFragmentRoot.class, IJavaProject.class };
    ISelectionStatusValidator validator = new TypeSelectionValidator(acceptedClasses, false) {
        public boolean isSelectedValid(Object element) {
            try {
                boolean accepted = false;
                if (fThisProjectOnly) {
                    accepted = element instanceof IJavaProject && thisProject.equals((IJavaProject) element);
                } else {
                    accepted = element instanceof IJavaProject;
                }/*from w w  w .ja  v  a2 s. c om*/
                if (accepted) {

                    IJavaProject jproject = (IJavaProject) element;
                    IPath path = jproject.getProject().getFullPath();
                    return (jproject.findPackageFragmentRoot(path) != null);
                } else if (element instanceof IPackageFragmentRoot) {
                    return (((IPackageFragmentRoot) element).getKind() == IPackageFragmentRoot.K_SOURCE);
                }
                return true;
            } catch (JavaModelException e) {
                UIPlugin.log(e); // just log, no ui in validation
            }
            return false;
        }
    };

    acceptedClasses = new Class[] { IJavaModel.class, IPackageFragmentRoot.class, IJavaProject.class };
    ViewerFilter filter = new TypeFilter(acceptedClasses) {
        public boolean select(Viewer viewer, Object parent, Object element) {

            if (fThisProjectOnly && thisProject == null)
                return false;

            if (element instanceof IJavaProject) {

                return thisProject.equals((IJavaProject) element);

            }
            if (element instanceof IPackageFragmentRoot) {
                try {
                    return (((IPackageFragmentRoot) element).getKind() == IPackageFragmentRoot.K_SOURCE);
                } catch (JavaModelException e) {
                    UIPlugin.log(e);
                    return false;
                }
            }
            return super.select(viewer, parent, element);
        }
    };
    StandardJavaElementContentProvider provider = new StandardJavaElementContentProvider();
    ILabelProvider labelProvider = new JavaElementLabelProvider(JavaElementLabelProvider.SHOW_DEFAULT);
    ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(getShell(), labelProvider, provider);
    dialog.setValidator(validator);
    dialog.setSorter(new JavaElementSorter());
    dialog.setTitle(UIPlugin.getString(fName + ".ChooseSourceContainerDialog.title"));
    dialog.setMessage(UIPlugin.getString(fName + ".ChooseSourceContainerDialog.description"));
    dialog.addFilter(filter);
    dialog.setInput(JavaCore.create(fWorkspaceRoot));
    dialog.setInitialSelection(initElement);

    if (dialog.open() == Window.OK) {
        Object element = dialog.getFirstResult();
        if (element instanceof IJavaProject) {
            IJavaProject jproject = (IJavaProject) element;
            return jproject.getPackageFragmentRoot(jproject.getProject());
        } else if (element instanceof IPackageFragmentRoot) {
            return (IPackageFragmentRoot) element;
        }
        return null;
    }
    return null;

}

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

License:Mozilla Public License

private ITapestryProject chooseTapestryProject() {
    IJavaProject thisProject = null;/*from  ww w .j av a  2s  .c  o  m*/
    try {
        if (fCurrentTapestryProject != null)
            thisProject = fCurrentTapestryProject.getJavaProject();
    } catch (CoreException e) {
        UIPlugin.log(e);
    }

    final IJavaProject useProject = thisProject;
    Class[] acceptedClasses = new Class[] { IJavaProject.class };
    ISelectionStatusValidator validator = new TypeSelectionValidator(acceptedClasses, false) {
        public boolean isSelectedValid(Object element) {
            if (element instanceof IJavaProject)
                return TapestryProjectDialogField.this.hasTapestryNature(((IJavaProject) element).getProject());

            return false;
        }
    };

    acceptedClasses = new Class[] { IJavaProject.class };
    ViewerFilter filter = new TypeFilter(acceptedClasses) {
        public boolean select(Viewer viewer, Object parent, Object element) {
            if (element instanceof IJavaProject) {
                if (((IJavaProject) element).equals(useProject))
                    return true;

                return TapestryProjectDialogField.this.hasTapestryNature(((IJavaProject) element).getProject());
            }
            return super.select(viewer, parent, element);
        }
    };
    StandardJavaElementContentProvider provider = new StandardJavaElementContentProvider();
    ILabelProvider labelProvider = new JavaElementLabelProvider(JavaElementLabelProvider.SHOW_DEFAULT);
    ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(getShell(), labelProvider, provider);
    dialog.setValidator(validator);
    dialog.setSorter(new JavaElementSorter());
    dialog.setTitle(UIPlugin.getString(fName + ".ChooseTapestryProjectDialog.title"));
    dialog.setMessage(UIPlugin.getString(fName + ".ChooseTapestryProjectDialog.description"));
    dialog.addFilter(filter);
    dialog.setInput(JavaCore.create(fWorkspaceRoot));
    dialog.setInitialSelection(thisProject);

    if (dialog.open() == Window.OK) {
        Object element = dialog.getFirstResult();
        if (element instanceof IJavaProject) {
            IJavaProject jproject = (IJavaProject) element;
            try {
                return (ITapestryProject) jproject.getProject().getNature(TapestryCore.NATURE_ID);
            } catch (CoreException e) {
                UIPlugin.log(e);
            }
        }
    }
    return null;
}

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

License:Mozilla Public License

/**
 * @see Wizard#performFinish()/*  w  w  w.j a v a 2  s.co m*/
 */
public boolean performFinish() {
    if (finishPage(fJavaPage.getRunnable())) {
        IJavaProject jproject = fJavaPage.getJavaProject();
        fInstallData.setProject(jproject.getProject());
        fInstallData.setApplicationFactory(new ApplicationFactory());
        fInstallData.setPageFactory(new PageFactory());
        fInstallData.setTemplateFactory(new TapestryTemplateFactory());
        fInstallData.setTemplateSource(fTemplatePage);

        IRunnableWithProgress operation = new IRunnableWithProgress() {
            public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
                ArrayList created = new ArrayList();

                IStatus status = new SpindleStatus();
                monitor.beginTask("", 100);

                TapestryProjectInstaller installer = new TapestryProjectInstaller(fInstallData);

                status = installer.configureTapestryProject(created, new SubProgressMonitor(monitor, 50));

                if (!status.isOK()) {
                    ErrorDialog.openError(null, "Tapestry Install Problems",
                            "Unable to create all Tapestry files.", status);
                    return;
                }

                status = installer.addTapestryNature(new SubProgressMonitor(monitor, 50));

                if (!status.isOK()) {
                    ErrorDialog.openError(null, "Tapestry Install Problems",
                            "Unable to install the Tapestry nature.", status);

                    return;
                }

                for (Iterator iter = created.iterator(); iter.hasNext();) {
                    IResource element = (IResource) iter.next();
                    selectAndReveal(element);
                }

            }
        };
        finishPage(operation);
        finishPage(fTemplatePage.getRunnable(fInstallData.getProject()));

    }
    return true;
}

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

License:Mozilla Public License

private void doStatusUpdate() {
    IStatus status = null;/*from   w  w w .  j  a  va2 s  .c  o m*/

    if (fChooseClass.getCheckBoxValue()) {
        // status of choose type component
        status = fChooseSpecClassDialogField.getStatus();
    } else {
        // status of all new java type components
        status = TapestryWizardPage.getMostSevere(new IStatus[] { fContainerStatus,
                isEnclosingTypeSelected() ? fEnclosingTypeStatus : fPackageStatus, fTypeNameStatus,
                fModifierStatus, fSuperClassStatus, fSuperInterfacesStatus });

        if (status.getSeverity() < IStatus.ERROR || getSuperClass().trim().length() == 0) {
            // need to extra checks to see if the new class conforms
            // to Tapestry norms.
            SpindleStatus spindle = new SpindleStatus();
            if (isEnclosingTypeSelected())
                checkEnclosingModifiers(spindle);

            if (!isEnclosingTypeSelected() && getPackageFragment().isDefaultPackage()
                    && fContainerStatus.isOK()) {
                spindle.setError(UIPlugin.getString(PAGE_NAME + ".newclass.package"));
            }
            try {
                // common check, did user change the project to a non
                // Tapestry
                // one?
                IJavaProject current = getPackageFragmentRoot().getJavaProject();
                if (current != null) {
                    if (!current.getProject().hasNature(TapestryCore.NATURE_ID)) {
                        spindle.setWarning(UIPlugin.getString(PAGE_NAME + ".newclass.project"));

                    } else if (!current.equals(fFirstPageProjectField.getTapestryProject().getJavaProject())) {
                        spindle.setWarning(UIPlugin.getString(PAGE_NAME + ".newclass.project1"));
                    }
                }

                // here we do any other checks to see if the class we are
                // about to
                // create is a valid tapestry type

                boolean hasDefaultSuperclass = fBaseSpecClass.equals(getSuperClass())
                        || fDefaultSpecClass.equals(getSuperClass());

                boolean hasDefaultIface = getSuperInterfaces().contains(fDefaultInterface);

                if (!hasDefaultSuperclass && !hasDefaultIface) {
                    checkNewType(spindle, fFirstPageProjectField.getTapestryProject().getJavaProject());
                }

            } catch (CoreException e) {
                UIPlugin.log(e);
            }

            status = spindle.getSeverity() >= status.getSeverity() ? spindle : status;
        }

    }
    // severe status will affect in the ok button
    // enabled/disabled.
    updateStatus(status);
}

From source file:com.iw.plugins.spindle.util.lookup.DefaultAcceptor.java

License:Mozilla Public License

protected final boolean defaultAcceptAsTapestry(IJavaProject jproject, IStorage s, int acceptFlags) {
    String extension = s.getFullPath().getFileExtension();
    //    int w = acceptFlags & WRITEABLE;
    //    int j = acceptFlags & ACCEPT_COMPONENTS;
    if ((acceptFlags & WRITEABLE) != 0 && s.isReadOnly()) {
        return false;
    }/*  w w  w  .  j a v a  2  s .c  om*/

    if (s instanceof IResource) {

        IResource resource = (IResource) s;

        if ((acceptFlags & THIS_PROJECT_ONLY) != 0) {

            if (!resource.getProject().equals(jproject.getProject())) {

                return false;
            }
        } else if ((acceptFlags & ACCEPT_TAPESTRY_PROJECTS_ONLY) != 0) {

            try {

                IProject thisProject = jproject.getProject();
                IProject resourceProject = resource.getProject();

                if (!thisProject.equals(resourceProject)
                        && !resourceProject.hasNature(TapestryPlugin.NATURE_ID)) {

                    return false;
                }
            } catch (CoreException e) {

                return false;
            }

        }

    }

    if ("jwc".equals(extension)) {
        return (acceptFlags & ACCEPT_COMPONENTS) != 0 || (acceptFlags & ACCEPT_ANY) != 0;
    }
    if ("application".equals(extension)) {
        return (acceptFlags & ACCEPT_APPLICATIONS) != 0 || (acceptFlags & ACCEPT_ANY) != 0;
    }
    if ("html".equals(extension)) {
        return (acceptFlags & ACCEPT_HTML) != 0 || (acceptFlags & ACCEPT_ANY) != 0;
    }
    if ("library".equals(extension)) {
        return (acceptFlags & ACCEPT_LIBRARIES) != 0 || (acceptFlags & ACCEPT_ANY) != 0;
    }
    if ("page".equals(extension)) {
        return (acceptFlags & ACCEPT_PAGES) != 0 || (acceptFlags & ACCEPT_ANY) != 0;
    }
    return false;
}

From source file:com.iw.plugins.spindle.util.lookup.TapestryLookup.java

License:Mozilla Public License

public boolean acceptAsTapestry(IJavaProject jproject, IStorage s, int acceptFlags) {
    if (seekExtensions != null) {
        String extension = s.getFullPath().getFileExtension();
        boolean result = seekExtensions.contains(extension);

        if (result && (acceptFlags & ACCEPT_TAPESTRY_PROJECTS_ONLY) != 0 && s instanceof IResource) {

            try {

                IProject thisProject = jproject.getProject();
                IProject resourceProject = ((IResource) s).getProject();

                if (!thisProject.equals(resourceProject)
                        || !resourceProject.hasNature(TapestryPlugin.NATURE_ID)) {

                    return false;
                }//from  w  ww  . ja v  a 2 s  .  co  m
            } catch (CoreException e) {

                return false;
            }
        }
        return result;
    }
    return acceptor.acceptAsTapestry(jproject, s, acceptFlags);
}

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

License:Mozilla Public License

private IPackageFragmentRoot chooseSourceContainer(IJavaElement initElement) {

    final IJavaProject thisProject = initElement.getJavaProject();
    Class[] acceptedClasses = new Class[] { IPackageFragmentRoot.class, IJavaProject.class };
    ISelectionStatusValidator validator = new TypedElementSelectionValidator(acceptedClasses, false) {
        public boolean isSelectedValid(Object element) {
            try {
                boolean accepted = false;
                if (thisProjectOnly) {
                    accepted = element instanceof IJavaProject && thisProject.equals((IJavaProject) element);
                } else {
                    accepted = element instanceof IJavaProject;
                }/*from w  w  w .  j a  v  a2  s . c o  m*/
                if (accepted) {

                    IJavaProject jproject = (IJavaProject) element;
                    IPath path = jproject.getProject().getFullPath();
                    return (jproject.findPackageFragmentRoot(path) != null);
                } else if (element instanceof IPackageFragmentRoot) {
                    return (((IPackageFragmentRoot) element).getKind() == IPackageFragmentRoot.K_SOURCE);
                }
                return true;
            } catch (JavaModelException e) {
                TapestryPlugin.getDefault().logException(e); // just log, no ui in validation
            }
            return false;
        }
    };

    acceptedClasses = new Class[] { IJavaModel.class, IPackageFragmentRoot.class, IJavaProject.class };
    ViewerFilter filter = new TypedViewerFilter(acceptedClasses) {
        public boolean select(Viewer viewer, Object parent, Object element) {

            if (element instanceof IJavaProject) {

                return thisProject.equals((IJavaProject) element);

            }
            if (element instanceof IPackageFragmentRoot) {
                try {
                    return (((IPackageFragmentRoot) element).getKind() == IPackageFragmentRoot.K_SOURCE);
                } catch (JavaModelException e) {
                    TapestryPlugin.getDefault().logException(e);
                    return false;
                }
            }
            return super.select(viewer, parent, element);
        }
    };
    StandardJavaElementContentProvider provider = new StandardJavaElementContentProvider();
    ILabelProvider labelProvider = new JavaElementLabelProvider(JavaElementLabelProvider.SHOW_DEFAULT);
    ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(getShell(), labelProvider, provider);
    dialog.setValidator(validator);
    dialog.setSorter(new JavaElementSorter());
    dialog.setTitle(MessageUtil.getString(name + ".ChooseSourceContainerDialog.title"));
    dialog.setMessage(MessageUtil.getString(name + ".ChooseSourceContainerDialog.description"));
    dialog.addFilter(filter);
    dialog.setInput(JavaCore.create(workspaceRoot));
    dialog.setInitialSelection(initElement);

    if (dialog.open() == dialog.OK) {
        Object element = dialog.getFirstResult();
        if (element instanceof IJavaProject) {
            IJavaProject jproject = (IJavaProject) element;
            return jproject.getPackageFragmentRoot(jproject.getProject());
        } else if (element instanceof IPackageFragmentRoot) {
            return (IPackageFragmentRoot) element;
        }
        return null;
    }
    return null;

}

From source file:com.javapathfinder.vjp.DefaultProperties.java

License:Open Source License

/**
 * //  w w  w  .  ja  v a2 s .  co  m
 * @param project
 * @return String
 */
private static String getJPFConfigEntry(IJavaProject project) {
    StringBuilder cp = new StringBuilder();

    String config = null;
    final Path bin = new Path("src/");
    IProject JPFProject = project.getProject();
    URL url = FileLocator.find(VJP.getDefault().getBundle(), bin, null);
    try {
        config = FileLocator.toFileURL(url).getPath();
    } catch (IOException ioe) {
        VJP.logError("Could not append jpf path", ioe);
    }

    return "";

}

From source file:com.jayway.eclipse.adt.extensions.ui.wizards.NewActivityWizard.java

License:Apache License

@Override
public boolean performFinish() {
    boolean res = super.performFinish();
    if (res) {/*from   w  w w  .jav  a2 s .co m*/
        IResource resource = newActivityPage.getModifiedResource();
        if (resource != null) {
            // update manifest
            Set<String> selectedActions = newActivityPage.getSelectedActions();
            Set<String> selectedCategories = newActivityPage.getSelectedCategories();
            String activityName = newActivityPage.getTypeName();
            IJavaProject javaProject = newActivityPage.getJavaProject();
            AndroidManifestFile manifest = new AndroidManifestFile(javaProject.getProject());
            try {
                manifest.update(activityName, selectedActions, selectedCategories);
            } catch (CoreException e) {
                Status status = new Status(IStatus.ERROR, "com.jayway.adt.extensions", e.getMessage());
                ErrorDialog.openError(getShell(), "Error when updating manifest", e.getMessage(), status);
            }
            openResource((IFile) resource);
        }
    }
    return res;
}