List of usage examples for org.eclipse.jdt.core IPackageFragmentRoot getResource
IResource getResource();
From source file:org.eclipselabs.spray.xtext.ui.commands.SprayJavaProjectUtil.java
License:Open Source License
/** * Returns <code>true</code> when the compilation unit is in the generated sources folder, does not end with the name "Base", but * has a sibling unit that has this name. *//* www. j a va 2s . c om*/ public boolean isGeneratedExtensionFile(ICompilationUnit cu) { IPackageFragmentRoot pfRoot = getPackageFragmentRoot(cu); if (pfRoot != null && pfRoot.getResource().equals(getSrcGenFolder(cu.getResource().getProject()))) { IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot(); IPath baseClassPath = new Path(cu.getPath().removeFileExtension().toString() + "Base.java"); if (root.findMember(baseClassPath) != null) { return true; } } return false; }
From source file:org.entirej.ide.core.project.EJFormConsistencyChecker.java
License:Apache License
protected IProject[] build(int kind, Map<String, String> args, IProgressMonitor monitor) throws CoreException { IResourceDelta delta = null;/*from w w w.j a v a2 s . co m*/ if (kind != FULL_BUILD) delta = getDelta(getProject()); if (delta == null || kind == FULL_BUILD) { if (isInterestingProject(getProject())) { clean(monitor); IJavaProject project = JavaCore.create(getProject()); // make sure it is refresh before build again EJPluginEntireJClassLoader.reload(project); IPackageFragmentRoot[] packageFragmentRoots = project.getPackageFragmentRoots(); for (IPackageFragmentRoot iPackageFragmentRoot : packageFragmentRoots) { if (iPackageFragmentRoot.getResource() instanceof IContainer) validateFormsIn((IContainer) iPackageFragmentRoot.getResource(), getValidateProviders(), monitor); } } } else { delta.accept(new DeltaVisitor(monitor)); } return new IProject[0]; }
From source file:org.entirej.ide.ui.editors.descriptors.AbstractProjectSrcFileDescriptor.java
License:Apache License
@Override public String browseType() { List<IPackageFragmentRoot> elements = new ArrayList<IPackageFragmentRoot>(); IJavaProject javaProject = projectProvider.getJavaProject(); try {/*ww w .j a v a 2s. c o m*/ IPackageFragmentRoot[] roots = javaProject.getPackageFragmentRoots(); for (int i = 0; i < roots.length; i++) { if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) { elements.add(roots[i]); } } } catch (JavaModelException e) { EJCoreLog.logException(e); } final List<IResource> resources = new ArrayList<IResource>(); for (IPackageFragmentRoot root : elements) { try { IResource resource = root.getResource(); if (resource instanceof IContainer) ((IContainer) resource).accept(new IResourceProxyVisitor() { public boolean visit(IResourceProxy proxy) { if (proxy.isDerived()) { return false; } int type = proxy.getType(); if ((IResource.FILE & type) != 0) { IResource res = proxy.requestResource(); resources.add(res); return true; } if (type == IResource.FILE) { return false; } return true; } }, IResource.NONE); } catch (CoreException e) { // ignore } } ResourceListSelectionDialog dialog = new ResourceListSelectionDialog(EJUIPlugin.getActiveWorkbenchShell(), resources.toArray(new IResource[0])); dialog.setTitle("Select File"); dialog.setMessage("Select a project file:"); if (dialog.open() == Window.OK) { Object[] result = dialog.getResult(); if (result != null && result.length > 0) { IResource resource = (IResource) result[0]; String chosenPath = resource.getFullPath().toPortableString(); // Return the chosen package without the source directory path for (IPackageFragmentRoot root : elements) { String sourcePath = root.getPath().toPortableString(); if (chosenPath.startsWith(sourcePath)) { chosenPath = chosenPath.replace(sourcePath, ""); break; } } return chosenPath; } } return getValue(); }
From source file:org.entirej.ide.ui.editors.form.builder.EJFormConstBuilder.java
License:Apache License
protected IProject[] build(int kind, Map<String, String> args, IProgressMonitor monitor) throws CoreException { IResourceDelta delta = null;//from ww w.j a v a2 s . c om if (kind != FULL_BUILD) delta = getDelta(getProject()); if (delta == null || kind == FULL_BUILD) { if (isInterestingProject(getProject())) { clean(monitor); IProject p = getProject(); IJavaProject project = JavaCore.create(p); // make sure it is refresh before build again EJPluginEntireJClassLoader.reload(project); genPropertiesConstantFile(EJProject.getPropertiesFile(p), monitor); IPackageFragmentRoot[] packageFragmentRoots = project.getPackageFragmentRoots(); for (IPackageFragmentRoot iPackageFragmentRoot : packageFragmentRoots) { if (iPackageFragmentRoot.getResource() instanceof IContainer) genFormConstantsIn((IContainer) iPackageFragmentRoot.getResource(), monitor); } p.refreshLocal(IResource.DEPTH_INFINITE, monitor); } } else { delta.accept(new DeltaVisitor(monitor)); } return new IProject[0]; }
From source file:org.entirej.ide.ui.refactoring.EJFormPackageMoveParticipant.java
License:Apache License
@Override public Change createChange(IProgressMonitor pm) throws CoreException, OperationCanceledException { if (!getArguments().getUpdateReferences()) return null; final IJavaElement[] elements = fElements.keySet().toArray(new IJavaElement[0]); final String[] newNames = getNewNames(); IPackageFragmentRoot[] packageFragmentRoots = fProject.getPackageFragmentRoots(); CompositeChange result = new CompositeChange(getName()); for (IPackageFragmentRoot iPackageFragmentRoot : packageFragmentRoots) { if (iPackageFragmentRoot.getResource() instanceof IContainer) handelFormsIn((IContainer) iPackageFragmentRoot.getResource(), elements, newNames, result); }/* www. ja va 2 s . co m*/ return result; }
From source file:org.entirej.ide.ui.refactoring.EJFormTypeDeleteParticipant.java
License:Apache License
@Override public Change createChange(IProgressMonitor pm) throws CoreException, OperationCanceledException { final IJavaElement[] elements = fElements.toArray(new IJavaElement[0]); IPackageFragmentRoot[] packageFragmentRoots = fProject.getPackageFragmentRoots(); CompositeChange result = new CompositeChange(getName()); for (IPackageFragmentRoot iPackageFragmentRoot : packageFragmentRoots) { if (iPackageFragmentRoot.getResource() instanceof IContainer) handelFormsIn((IContainer) iPackageFragmentRoot.getResource(), elements, result); }/*from w ww. j a v a 2s.c o m*/ return result; }
From source file:org.entirej.ide.ui.refactoring.EJFormTypeMoveParticipant.java
License:Apache License
@Override public Change createChange(IProgressMonitor pm) throws CoreException, OperationCanceledException { if (!getArguments().getUpdateReferences()) return null; final IJavaElement[] elements = fElements.keySet().toArray(new IJavaElement[0]); final String[] newNames = getNewNames(); IPackageFragmentRoot[] packageFragmentRoots = fProject.getPackageFragmentRoots(); CompositeChange result = new CompositeChange(getName()); for (IPackageFragmentRoot iPackageFragmentRoot : packageFragmentRoots) { if (iPackageFragmentRoot.getResource() instanceof IContainer) handelFormsIn((IContainer) iPackageFragmentRoot.getResource(), elements, newNames, result); }/*w ww.j a va 2s . co m*/ return result; }
From source file:org.entirej.ide.ui.refactoring.EJFormTypeRenameParticipant.java
License:Apache License
@Override public Change createChange(IProgressMonitor pm) throws CoreException, OperationCanceledException { if (!getArguments().getUpdateReferences()) return null; final IJavaElement[] elements = fElements.keySet().toArray(new IJavaElement[0]); final String[] newNames = getNewNames(); IPackageFragmentRoot[] packageFragmentRoots = fProject.getPackageFragmentRoots(); CompositeChange result = new CompositeChange(getName()); for (IPackageFragmentRoot iPackageFragmentRoot : packageFragmentRoots) { if (iPackageFragmentRoot.getResource() instanceof IContainer) handelFormsIn((IContainer) iPackageFragmentRoot.getResource(), elements, newNames, result); }//from w ww. ja v a 2 s .com return result; }
From source file:org.entirej.ide.ui.refactoring.EJLovDefRenameParticipant.java
License:Apache License
@Override public Change createChange(IProgressMonitor pm) throws CoreException, OperationCanceledException { if (!getArguments().getUpdateReferences() || fProject == null) return null; final IFile[] elements = fElements.keySet().toArray(new IFile[0]); final String[] newNames = getNewNames(); IPackageFragmentRoot[] packageFragmentRoots = fProject.getPackageFragmentRoots(); CompositeChange result = new CompositeChange(getName()); for (int i = 0; i < elements.length; i++) { final IFile element = elements[i]; String fileExtension = element.getFileExtension(); final String newName = newNames[i]; final IFile newelement = element.getParent().getFile(new Path(newName)); final EJPluginFormProperties formProperties = getFormProperties(element, fProject); if (EJDevConstants.REFERENCED_LOVDEF_PROPERTIES_FILE_SUFFIX.equalsIgnoreCase(fileExtension)) { // rename Constants String formId = EJFormConstBuilder.getFormId(formProperties.getFormName()); IFile formConstantsSource = EJFormConstBuilder.getFormJavaSource(element, pm, formId); if (formConstantsSource.exists()) { String newNameref = EJFormConstBuilder .getFormId(newName.substring(0, newName.lastIndexOf("."))); String id = IJavaRefactorings.RENAME_COMPILATION_UNIT; RefactoringContribution contrib = RefactoringCore.getRefactoringContribution(id); RenameJavaElementDescriptor desc = (RenameJavaElementDescriptor) contrib.createDescriptor(); desc.setUpdateReferences(true); desc.setProject(formConstantsSource.getProject().getName()); desc.setJavaElement(JavaCore.create(formConstantsSource)); desc.setNewName(newNameref); Refactoring refactoring = desc.createRefactoring(new RefactoringStatus()); refactoring.checkInitialConditions(pm); refactoring.checkFinalConditions(pm); result.add(refactoring.createChange(pm)); }// w w w. j av a 2 s . c om Change propChange = new Change() { @Override public Change perform(IProgressMonitor pm) throws CoreException { String oldName = element.getName(); oldName = oldName.substring(0, oldName.lastIndexOf(".")); List<EJPluginLovDefinitionProperties> definitionProperties = formProperties .getLovDefinitionContainer().getAllLovDefinitionProperties(); for (EJPluginLovDefinitionProperties blockProp : definitionProperties) { String newDef = newName.substring(0, newName.lastIndexOf(".")); blockProp.internalSetName(newDef); blockProp.getBlockProperties().internalSetName(newDef); } FormPropertiesWriter write = new FormPropertiesWriter(); write.saveForm(formProperties, newelement, pm); // do we need to support undo change as well ? return null; } @Override public RefactoringStatus isValid(IProgressMonitor pm) throws CoreException, OperationCanceledException { return new RefactoringStatus(); } @Override public void initializeValidationData(IProgressMonitor pm) { // ignore } @Override public String getName() { return String.format("Rename LOV definition name : %s.", element.getName()); } @Override public Object getModifiedElement() { return newelement; } }; result.add(propChange); } } for (IPackageFragmentRoot iPackageFragmentRoot : packageFragmentRoots) { if (iPackageFragmentRoot.getResource() instanceof IContainer) handelFormsIn((IContainer) iPackageFragmentRoot.getResource(), elements, newNames, result); } return result; }
From source file:org.entirej.ide.ui.refactoring.EJObjectGroupDefRenameParticipant.java
License:Apache License
@Override public Change createChange(IProgressMonitor pm) throws CoreException, OperationCanceledException { if (!getArguments().getUpdateReferences() || fProject == null) return null; final IFile[] elements = fElements.keySet().toArray(new IFile[0]); final String[] newNames = getNewNames(); IPackageFragmentRoot[] packageFragmentRoots = fProject.getPackageFragmentRoots(); CompositeChange result = new CompositeChange(getName()); for (int i = 0; i < elements.length; i++) { final IFile element = elements[i]; String fileExtension = element.getFileExtension(); final String newName = newNames[i]; final IFile newelement = element.getParent().getFile(new Path(newName)); final EJPluginFormProperties formProperties = getFormProperties(element, fProject); if (formProperties == null) continue; if (EJDevConstants.OBJECT_GROUP_PROPERTIES_FILE_SUFFIX.equalsIgnoreCase(fileExtension)) { // rename Constants String formId = EJFormConstBuilder.getFormId(formProperties.getFormName()); IFile formConstantsSource = EJFormConstBuilder.getFormJavaSource(element, pm, formId); if (formConstantsSource.exists()) { String newNameref = EJFormConstBuilder .getFormId(newName.substring(0, newName.lastIndexOf("."))); String id = IJavaRefactorings.RENAME_COMPILATION_UNIT; RefactoringContribution contrib = RefactoringCore.getRefactoringContribution(id); RenameJavaElementDescriptor desc = (RenameJavaElementDescriptor) contrib.createDescriptor(); desc.setUpdateReferences(true); desc.setProject(formConstantsSource.getProject().getName()); desc.setJavaElement(JavaCore.create(formConstantsSource)); desc.setNewName(newNameref); Refactoring refactoring = desc.createRefactoring(new RefactoringStatus()); refactoring.checkInitialConditions(pm); refactoring.checkFinalConditions(pm); result.add(refactoring.createChange(pm)); }/* w w w . jav a 2s . co m*/ Change propChange = new Change() { @Override public Change perform(IProgressMonitor pm) throws CoreException { String oldName = element.getName(); oldName = oldName.substring(0, oldName.lastIndexOf(".")); List<EJPluginObjectGroupProperties> definitionProperties = formProperties .getObjectGroupContainer().getAllObjectGroupProperties(); for (EJPluginObjectGroupProperties blockProp : definitionProperties) { String newDef = newName.substring(0, newName.lastIndexOf(".")); blockProp.changeName(newDef); } FormPropertiesWriter write = new FormPropertiesWriter(); write.saveForm(formProperties, newelement, pm); // do we need to support undo change as well ? return null; } @Override public RefactoringStatus isValid(IProgressMonitor pm) throws CoreException, OperationCanceledException { return new RefactoringStatus(); } @Override public void initializeValidationData(IProgressMonitor pm) { // ignore } @Override public String getName() { return String.format("Rename referenced ObjectGroup definition name : %s.", element.getName()); } @Override public Object getModifiedElement() { return newelement; } }; result.add(propChange); } } for (IPackageFragmentRoot iPackageFragmentRoot : packageFragmentRoots) { if (iPackageFragmentRoot.getResource() instanceof IContainer) handelFormsIn((IContainer) iPackageFragmentRoot.getResource(), elements, newNames, result); } return result; }