List of usage examples for org.eclipse.jdt.internal.core.util Messages status_nameCollision
String status_nameCollision
To view the source code for org.eclipse.jdt.internal.core.util Messages status_nameCollision.
Click Source Link
From source file:com.codenvy.ide.ext.java.server.internal.core.JavaModelStatus.java
License:Open Source License
/** * Returns the message that is relevant to the code of this status. *///from w w w. jav a2s. c o m public String getMessage() { Throwable exception = getException(); if (exception == null) { switch (getCode()) { case CORE_EXCEPTION: return Messages.status_coreException; case BUILDER_INITIALIZATION_ERROR: return Messages.build_initializationError; case BUILDER_SERIALIZATION_ERROR: return Messages.build_serializationError; case DEVICE_PATH: return Messages.bind(Messages.status_cannotUseDeviceOnPath, getPath().toString()); case DOM_EXCEPTION: return Messages.status_JDOMError; case ELEMENT_DOES_NOT_EXIST: return Messages.bind(Messages.element_doesNotExist, ((JavaElement) this.elements[0]).toStringWithAncestors()); case ELEMENT_NOT_ON_CLASSPATH: return Messages.bind(Messages.element_notOnClasspath, ((JavaElement) this.elements[0]).toStringWithAncestors()); case EVALUATION_ERROR: return Messages.bind(Messages.status_evaluationError, this.string); case INDEX_OUT_OF_BOUNDS: return Messages.status_indexOutOfBounds; case INVALID_CONTENTS: return Messages.status_invalidContents; case INVALID_DESTINATION: return Messages.bind(Messages.status_invalidDestination, ((JavaElement) this.elements[0]).toStringWithAncestors()); case INVALID_ELEMENT_TYPES: StringBuffer buff = new StringBuffer(Messages.operation_notSupported); for (int i = 0; i < this.elements.length; i++) { if (i > 0) { buff.append(", "); //$NON-NLS-1$ } buff.append(((JavaElement) this.elements[i]).toStringWithAncestors()); } return buff.toString(); case INVALID_NAME: return Messages.bind(Messages.status_invalidName, this.string); case INVALID_PACKAGE: return Messages.bind(Messages.status_invalidPackage, this.string); case INVALID_PATH: if (this.string != null) { return this.string; } else { return Messages.bind(Messages.status_invalidPath, new String[] { getPath() == null ? "null" : getPath().toString() } //$NON-NLS-1$ ); } case INVALID_PROJECT: return Messages.bind(Messages.status_invalidProject, this.string); case INVALID_RESOURCE: return Messages.bind(Messages.status_invalidResource, this.string); case INVALID_RESOURCE_TYPE: return Messages.bind(Messages.status_invalidResourceType, this.string); case INVALID_SIBLING: if (this.string != null) { return Messages.bind(Messages.status_invalidSibling, this.string); } else { return Messages.bind(Messages.status_invalidSibling, ((JavaElement) this.elements[0]).toStringWithAncestors()); } case IO_EXCEPTION: return Messages.status_IOException; case NAME_COLLISION: if (this.elements != null && this.elements.length > 0) { IJavaElement element = this.elements[0]; if (element instanceof org.eclipse.jdt.internal.core.PackageFragment && ((PackageFragment) element).isDefaultPackage()) { return Messages.operation_cannotRenameDefaultPackage; } } if (this.string != null) { return this.string; } else { return Messages.bind(Messages.status_nameCollision, ""); //$NON-NLS-1$ } case NO_ELEMENTS_TO_PROCESS: return Messages.operation_needElements; case NULL_NAME: return Messages.operation_needName; case NULL_PATH: return Messages.operation_needPath; case NULL_STRING: return Messages.operation_needString; case PATH_OUTSIDE_PROJECT: return Messages.bind(Messages.operation_pathOutsideProject, new String[] { this.string, ((JavaElement) this.elements[0]).toStringWithAncestors() }); case READ_ONLY: IJavaElement element = this.elements[0]; String name = element.getElementName(); if (element instanceof IPackageFragment && name.equals(IPackageFragment.DEFAULT_PACKAGE_NAME)) { return Messages.status_defaultPackageReadOnly; } return Messages.bind(Messages.status_readOnly, name); case RELATIVE_PATH: return Messages.bind(Messages.operation_needAbsolutePath, getPath().toString()); case TARGET_EXCEPTION: return Messages.status_targetException; case UPDATE_CONFLICT: return Messages.status_updateConflict; case NO_LOCAL_CONTENTS: return Messages.bind(Messages.status_noLocalContents, getPath().toString()); case CP_CONTAINER_PATH_UNBOUND: IJavaProject javaProject = (IJavaProject) this.elements[0]; ClasspathContainerInitializer initializer = JavaCore .getClasspathContainerInitializer(this.path.segment(0)); String description = null; if (initializer != null) description = initializer.getDescription(this.path, javaProject); if (description == null) description = this.path.makeRelative().toString(); return Messages.bind(Messages.classpath_unboundContainerPath, new String[] { description, javaProject.getElementName() }); case INVALID_CP_CONTAINER_ENTRY: javaProject = (IJavaProject) this.elements[0]; IClasspathContainer container = null; description = null; try { container = JavaCore.getClasspathContainer(this.path, javaProject); } catch (JavaModelException e) { // project doesn't exist: ignore } if (container == null) { initializer = JavaCore.getClasspathContainerInitializer(this.path.segment(0)); if (initializer != null) description = initializer.getDescription(this.path, javaProject); } else { description = container.getDescription(); } if (description == null) description = this.path.makeRelative().toString(); return Messages.bind(Messages.classpath_invalidContainer, new String[] { description, javaProject.getElementName() }); case CP_VARIABLE_PATH_UNBOUND: javaProject = (IJavaProject) this.elements[0]; return Messages.bind(Messages.classpath_unboundVariablePath, new String[] { this.path.makeRelative().toString(), javaProject.getElementName() }); case CLASSPATH_CYCLE: javaProject = (IJavaProject) this.elements[0]; return Messages.bind(Messages.classpath_cycle, new String[] { javaProject.getElementName(), this.string }); case DISABLED_CP_EXCLUSION_PATTERNS: javaProject = (IJavaProject) this.elements[0]; String projectName = javaProject.getElementName(); IPath newPath = this.path; if (this.path.segment(0).toString().equals(projectName)) { newPath = this.path.removeFirstSegments(1); } return Messages.bind(Messages.classpath_disabledInclusionExclusionPatterns, new String[] { newPath.makeRelative().toString(), projectName }); case DISABLED_CP_MULTIPLE_OUTPUT_LOCATIONS: javaProject = (IJavaProject) this.elements[0]; projectName = javaProject.getElementName(); newPath = this.path; if (this.path.segment(0).toString().equals(projectName)) { newPath = this.path.removeFirstSegments(1); } return Messages.bind(Messages.classpath_disabledMultipleOutputLocations, new String[] { newPath.makeRelative().toString(), projectName }); case CANNOT_RETRIEVE_ATTACHED_JAVADOC: if (this.elements != null && this.elements.length == 1) { if (this.string != null) { return Messages.bind(Messages.status_cannot_retrieve_attached_javadoc, ((JavaElement) this.elements[0]).toStringWithAncestors(), this.string); } return Messages.bind(Messages.status_cannot_retrieve_attached_javadoc, ((JavaElement) this.elements[0]).toStringWithAncestors(), ""); //$NON-NLS-1$ } if (this.string != null) { return Messages.bind(Messages.status_cannot_retrieve_attached_javadoc, this.string, "");//$NON-NLS-1$ } break; case CANNOT_RETRIEVE_ATTACHED_JAVADOC_TIMEOUT: if (this.elements != null && this.elements.length == 1) { if (this.string != null) { return Messages.bind(Messages.status_timeout_javadoc, ((JavaElement) this.elements[0]).toStringWithAncestors(), this.string); } return Messages.bind(Messages.status_timeout_javadoc, ((JavaElement) this.elements[0]).toStringWithAncestors(), ""); //$NON-NLS-1$ } if (this.string != null) { return Messages.bind(Messages.status_timeout_javadoc, this.string, "");//$NON-NLS-1$ } break; case UNKNOWN_JAVADOC_FORMAT: return Messages.bind(Messages.status_unknown_javadoc_format, ((JavaElement) this.elements[0]).toStringWithAncestors()); case DEPRECATED_VARIABLE: javaProject = (IJavaProject) this.elements[0]; return Messages.bind(Messages.classpath_deprecated_variable, new String[] { this.path.segment(0).toString(), javaProject.getElementName(), this.string }); } if (this.string != null) { return this.string; } else { return ""; //$NON-NLS-1$ } } else { String message = exception.getMessage(); if (message != null) { return message; } else { return exception.toString(); } } }
From source file:org.eclipse.jdt.internal.core.CopyResourceElementsOperation.java
License:Open Source License
/** * Copies/moves a compilation unit with the name <code>newCUName</code> * to the destination package.<br> * The package statement in the compilation unit is updated if necessary. * The main type of the compilation unit is renamed if necessary. * * @exception JavaModelException if the operation is unable to * complete// ww w . java 2 s. c o m */ private void processCompilationUnitResource(ICompilationUnit source, PackageFragment dest) throws JavaModelException { String newCUName = getNewNameFor(source); String destName = (newCUName != null) ? newCUName : source.getElementName(); TextEdit edit = updateContent(source, dest, newCUName); // null if unchanged // TODO (frederic) remove when bug 67606 will be fixed (bug 67823) // store encoding (fix bug 66898) IFile sourceResource = (IFile) source.getResource(); String sourceEncoding = null; try { sourceEncoding = sourceResource.getCharset(false); } catch (CoreException ce) { // no problem, use default encoding } // end todo // copy resource IContainer destFolder = (IContainer) dest.getResource(); // can be an IFolder or an IProject IFile destFile = destFolder.getFile(new Path(destName)); // GROOVY start /* old { org.eclipse.jdt.internal.core.CompilationUnit destCU = new org.eclipse.jdt.internal.core.CompilationUnit(dest, destName, DefaultWorkingCopyOwner.PRIMARY); } new */ org.eclipse.jdt.internal.core.CompilationUnit destCU = LanguageSupportFactory.newCompilationUnit(dest, destName, DefaultWorkingCopyOwner.PRIMARY); // GROOVY end if (!destFile.equals(sourceResource)) { try { if (!destCU.isWorkingCopy()) { if (destFile.exists()) { if (this.force) { // we can remove it deleteResource(destFile, IResource.KEEP_HISTORY); destCU.close(); // ensure the in-memory buffer for the dest CU is closed } else { // abort throw new JavaModelException( new JavaModelStatus(IJavaModelStatusConstants.NAME_COLLISION, Messages.bind( Messages.status_nameCollision, destFile.getFullPath().toString()))); } } int flags = this.force ? IResource.FORCE : IResource.NONE; if (isMove()) { flags |= IResource.KEEP_HISTORY; sourceResource.move(destFile.getFullPath(), flags, getSubProgressMonitor(1)); } else { if (edit != null) flags |= IResource.KEEP_HISTORY; sourceResource.copy(destFile.getFullPath(), flags, getSubProgressMonitor(1)); } setAttribute(HAS_MODIFIED_RESOURCE_ATTR, TRUE); } else { destCU.getBuffer().setContents(source.getBuffer().getContents()); } } catch (JavaModelException e) { throw e; } catch (CoreException e) { throw new JavaModelException(e); } // update new resource content if (edit != null) { boolean wasReadOnly = destFile.isReadOnly(); try { saveContent(dest, destName, edit, sourceEncoding, destFile); } catch (CoreException e) { if (e instanceof JavaModelException) throw (JavaModelException) e; throw new JavaModelException(e); } finally { Util.setReadOnly(destFile, wasReadOnly); } } // register the correct change deltas prepareDeltas(source, destCU, isMove()); if (newCUName != null) { //the main type has been renamed String oldName = Util.getNameWithoutJavaLikeExtension(source.getElementName()); String newName = Util.getNameWithoutJavaLikeExtension(newCUName); prepareDeltas(source.getType(oldName), destCU.getType(newName), isMove()); } } else { if (!this.force) { throw new JavaModelException(new JavaModelStatus(IJavaModelStatusConstants.NAME_COLLISION, Messages.bind(Messages.status_nameCollision, destFile.getFullPath().toString()))); } // update new resource content // in case we do a saveas on the same resource we have to simply update the contents // see http://dev.eclipse.org/bugs/show_bug.cgi?id=9351 if (edit != null) { saveContent(dest, destName, edit, sourceEncoding, destFile); } } }
From source file:org.eclipse.jdt.internal.core.CopyResourceElementsOperation.java
License:Open Source License
/** * Copies/moves a package fragment with the name <code>newName</code> * to the destination package.<br> * * @exception JavaModelException if the operation is unable to * complete/*from w w w . j a v a 2s .com*/ */ private void processPackageFragmentResource(PackageFragment source, PackageFragmentRoot root, String newName) throws JavaModelException { try { String[] newFragName = (newName == null) ? source.names : Util.getTrimmedSimpleNames(newName); PackageFragment newFrag = root.getPackageFragment(newFragName); IResource[] resources = collectResourcesOfInterest(source); // if isMove() can we move the folder itself ? (see http://bugs.eclipse.org/bugs/show_bug.cgi?id=22458) boolean shouldMoveFolder = isMove() && !newFrag.resource().exists(); // if new pkg fragment exists, it is an override IFolder srcFolder = (IFolder) source.resource(); IPath destPath = newFrag.getPath(); if (shouldMoveFolder) { // check if destination is not included in source if (srcFolder.getFullPath().isPrefixOf(destPath)) { shouldMoveFolder = false; } else { // check if there are no sub-packages IResource[] members = srcFolder.members(); for (int i = 0; i < members.length; i++) { if (members[i] instanceof IFolder) { shouldMoveFolder = false; break; } } } } boolean containsReadOnlySubPackageFragments = createNeededPackageFragments( (IContainer) source.parent.resource(), root, newFragName, shouldMoveFolder); boolean sourceIsReadOnly = Util.isReadOnly(srcFolder); // Process resources if (shouldMoveFolder) { // move underlying resource // TODO Revisit once bug 43044 is fixed if (sourceIsReadOnly) { Util.setReadOnly(srcFolder, false); } srcFolder.move(destPath, this.force, true /* keep history */, getSubProgressMonitor(1)); if (sourceIsReadOnly) { Util.setReadOnly(srcFolder, true); } setAttribute(HAS_MODIFIED_RESOURCE_ATTR, TRUE); } else { // process the leaf resources if (resources.length > 0) { if (isRename()) { if (!destPath.equals(source.getPath())) { moveResources(resources, destPath); } } else if (isMove()) { // we need to delete this resource if this operation wants to override existing resources for (int i = 0, max = resources.length; i < max; i++) { IResource destinationResource = ResourcesPlugin.getWorkspace().getRoot() .findMember(destPath.append(resources[i].getName())); if (destinationResource != null) { if (this.force) { deleteResource(destinationResource, IResource.KEEP_HISTORY); } else { throw new JavaModelException( new JavaModelStatus(IJavaModelStatusConstants.NAME_COLLISION, Messages.bind(Messages.status_nameCollision, destinationResource.getFullPath().toString()))); } } } moveResources(resources, destPath); } else { // we need to delete this resource if this operation wants to override existing resources for (int i = 0, max = resources.length; i < max; i++) { IResource destinationResource = ResourcesPlugin.getWorkspace().getRoot() .findMember(destPath.append(resources[i].getName())); if (destinationResource != null) { if (this.force) { // we need to delete this resource if this operation wants to override existing resources deleteResource(destinationResource, IResource.KEEP_HISTORY); } else { throw new JavaModelException( new JavaModelStatus(IJavaModelStatusConstants.NAME_COLLISION, Messages.bind(Messages.status_nameCollision, destinationResource.getFullPath().toString()))); } } } copyResources(resources, destPath); } } } // Update package statement in compilation unit if needed if (!Util.equalArraysOrNull(newFragName, source.names)) { // if package has been renamed, update the compilation units char[][] inclusionPatterns = root.fullInclusionPatternChars(); char[][] exclusionPatterns = root.fullExclusionPatternChars(); for (int i = 0; i < resources.length; i++) { String resourceName = resources[i].getName(); if (Util.isJavaLikeFileName(resourceName)) { // we only consider potential compilation units ICompilationUnit cu = newFrag.getCompilationUnit(resourceName); if (Util.isExcluded(cu.getPath(), inclusionPatterns, exclusionPatterns, false/*not a folder*/)) continue; this.parser.setSource(cu); CompilationUnit astCU = (CompilationUnit) this.parser.createAST(this.progressMonitor); AST ast = astCU.getAST(); ASTRewrite rewrite = ASTRewrite.create(ast); updatePackageStatement(astCU, newFragName, rewrite, cu); TextEdit edits = rewrite.rewriteAST(); applyTextEdit(cu, edits); cu.save(null, false); } } } // Discard empty old package (if still empty after the rename) boolean isEmpty = true; if (isMove()) { // delete remaining files in this package (.class file in the case where Proj=src=bin) // in case of a copy updateReadOnlyPackageFragmentsForMove((IContainer) source.parent.resource(), root, newFragName, sourceIsReadOnly); if (srcFolder.exists()) { IResource[] remaining = srcFolder.members(); for (int i = 0, length = remaining.length; i < length; i++) { IResource file = remaining[i]; if (file instanceof IFile) { if (Util.isReadOnly(file)) { Util.setReadOnly(file, false); } deleteResource(file, IResource.FORCE | IResource.KEEP_HISTORY); } else { isEmpty = false; } } } if (isEmpty) { IResource rootResource; // check if source is included in destination if (destPath.isPrefixOf(srcFolder.getFullPath())) { rootResource = newFrag.resource(); } else { rootResource = source.parent.resource(); } // delete recursively empty folders deleteEmptyPackageFragment(source, false, rootResource); } } else if (containsReadOnlySubPackageFragments) { // in case of a copy updateReadOnlyPackageFragmentsForCopy((IContainer) source.parent.resource(), root, newFragName); } // workaround for bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=24505 if (isEmpty && isMove() && !(Util.isExcluded(source) || Util.isExcluded(newFrag))) { IJavaProject sourceProject = source.getJavaProject(); getDeltaFor(sourceProject).movedFrom(source, newFrag); IJavaProject destProject = newFrag.getJavaProject(); getDeltaFor(destProject).movedTo(newFrag, source); } } catch (JavaModelException e) { throw e; } catch (CoreException ce) { throw new JavaModelException(ce); } }