Source:
protected Change createManifestChange(IProgressMonitor monitor) throws CoreException { IFile manifest = PDEProject.getManifest(fProject); if (manifest.exists()) { SubMonitor subMonitor = SubMonitor.convert(monitor, "", 4); try { String newText = fElements.get(fProject); CompositeChange result = new CompositeChange(PDEUIMessages.ContainerRenameParticipant_renameBundleId); IBundle bundle = BundleManifestChange.getBundle(manifest, subMonitor.newChild(1)); if (bundle != null) { BundleTextChangeListener listener = new BundleTextChangeListener(((BundleModel) bundle.getModel()).getDocument()); bundle.getModel().addModelChangedListener(listener); BundleSymbolicNameHeader header = (BundleSymbolicNameHeader) bundle.getManifestHeader(Constants.BUNDLE_SYMBOLICNAME); if (header != null) { String calcProjectId = IdUtil.getValidId(fProject.getName()); String oldText = header.getId(); if (!oldText.equals(calcProjectId)) return null; String newId = IdUtil.getValidId(newText); header.setId(newId); IProject newProject = ((IWorkspaceRoot) manifest.getProject().getParent()).getProject(newText); IPath oldManifest = manifest.getFullPath().removeFirstSegments(1); IFile newManifest = newProject.getFile(oldManifest); MovedTextFileChange change = new MovedTextFileChange("", newManifest, manifest); MultiTextEdit edit = new MultiTextEdit(); edit.addChildren(listener.getTextOperations()); change.setEdit(edit); PDEModelUtility.setChangeTextType(change, manifest); result.add(change); FindReferenceOperation op = new FindReferenceOperation(PluginRegistry.findModel(fProject).getBundleDescription(), newId); op.run(subMonitor.newChild(2)); result.addAll(op.getChanges()); return result; } } } catch (CoreException e) { } catch (MalformedTreeException e) { } catch (BadLocationException e) { } finally { FileBuffers.getTextFileBufferManager().disconnect(manifest.getFullPath(), LocationKind.NORMALIZE, subMonitor.newChild(1)); } } return null; }

Target:
protected Change createManifestChange(IProgressMonitor monitor) throws CoreException { IFile manifest = PDEProject.getManifest(fProject); if (manifest.exists()) { SubMonitor subMonitor = SubMonitor.convert(monitor, 4); try { String newText = fElements.get(fProject); CompositeChange result = new CompositeChange(PDEUIMessages.ContainerRenameParticipant_renameBundleId); IBundle bundle = BundleManifestChange.getBundle(manifest, subMonitor.newChild(1)); if (bundle != null) { BundleTextChangeListener listener = new BundleTextChangeListener(((BundleModel) bundle.getModel()).getDocument()); bundle.getModel().addModelChangedListener(listener); BundleSymbolicNameHeader header = (BundleSymbolicNameHeader) bundle.getManifestHeader(Constants.BUNDLE_SYMBOLICNAME); if (header != null) { String calcProjectId = IdUtil.getValidId(fProject.getName()); String oldText = header.getId(); if (!oldText.equals(calcProjectId)) return null; String newId = IdUtil.getValidId(newText); header.setId(newId); IProject newProject = ((IWorkspaceRoot) manifest.getProject().getParent()).getProject(newText); IPath oldManifest = manifest.getFullPath().removeFirstSegments(1); IFile newManifest = newProject.getFile(oldManifest); MovedTextFileChange change = new MovedTextFileChange("", newManifest, manifest); MultiTextEdit edit = new MultiTextEdit(); edit.addChildren(listener.getTextOperations()); change.setEdit(edit); PDEModelUtility.setChangeTextType(change, manifest); result.add(change); FindReferenceOperation op = new FindReferenceOperation(PluginRegistry.findModel(fProject).getBundleDescription(), newId); op.run(subMonitor.newChild(2)); result.addAll(op.getChanges()); return result; } } } catch (CoreException e) { } catch (MalformedTreeException e) { } catch (BadLocationException e) { } finally { FileBuffers.getTextFileBufferManager().disconnect(manifest.getFullPath(), LocationKind.NORMALIZE, subMonitor.newChild(1)); } } return null; }