aboutsummaryrefslogtreecommitdiffstats
path: root/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/refactoring/changes/AndroidPackageRenameChange.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/refactoring/changes/AndroidPackageRenameChange.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/refactoring/changes/AndroidPackageRenameChange.java135
1 files changed, 0 insertions, 135 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/refactoring/changes/AndroidPackageRenameChange.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/refactoring/changes/AndroidPackageRenameChange.java
deleted file mode 100644
index 590629a..0000000
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/refactoring/changes/AndroidPackageRenameChange.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Copyright (C) 2010 The Android Open Source Project
- *
- * Licensed under the Eclipse Public License, Version 1.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.eclipse.org/org/documents/epl-v10.php
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.ide.eclipse.adt.internal.refactoring.changes;
-
-import com.android.ide.eclipse.adt.internal.refactoring.core.FixImportsJob;
-import com.android.ide.eclipse.adt.internal.refactoring.core.RefactoringUtil;
-import com.android.xml.AndroidManifest;
-
-import org.eclipse.core.filebuffers.ITextFileBufferManager;
-import org.eclipse.core.filebuffers.LocationKind;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.text.edits.MultiTextEdit;
-import org.eclipse.text.edits.TextEdit;
-
-import java.util.Map;
-import java.util.Set;
-
-/**
- * A text change that operates on android manifest when execute Java Rename package refactoring
-*/
-public class AndroidPackageRenameChange extends AndroidDocumentChange {
-
- private boolean mIsPackage;
-
- /**
- * Creates a new <code>AndroidPackageRenameChange</code>
- *
- * @param androidManifest the android manifest file
- * @param manager the text buffer manager
- * @param document the document
- * @param elements the elements
- * @param newName the new name
- * @param oldName the old name
- * @param isPackage is the application package
- */
- public AndroidPackageRenameChange(IFile androidManifest, ITextFileBufferManager manager,
- IDocument document, Map<String, String> elements, String newName, String oldName,
- boolean isPackage) {
- super(document);
- this.mDocument = document;
- this.mIsPackage = isPackage;
- this.mElements = elements;
- this.mNewName = newName;
- this.mOldName = oldName;
- this.mManager = manager;
- this.mAndroidManifest = androidManifest;
- try {
- this.mModel = getModel(document);
- } catch (Exception ignore) {
- }
- if (mModel != null) {
- this.mAppPackage = getAppPackage();
- addEdits();
- }
- }
-
- /**
- * Adds text edits for this change
- */
- private void addEdits() {
- MultiTextEdit multiEdit = new MultiTextEdit();
-
- if (mIsPackage) {
- TextEdit edit = createTextEdit(AndroidManifest.NODE_MANIFEST,
- AndroidManifest.ATTRIBUTE_PACKAGE, mOldName, mNewName, false);
- if (edit != null) {
- multiEdit.addChild(edit);
- }
- }
- Set<String> keys = mElements.keySet();
- for (String key : keys) {
- String value = mElements.get(key);
- String oldValue = AndroidManifest.combinePackageAndClassName(mAppPackage, value);
- String newValue = oldValue.replaceFirst(mOldName, mNewName);
- TextEdit edit = createTextEdit(key, AndroidManifest.ATTRIBUTE_NAME, oldValue,
- newValue);
- if (edit != null) {
- multiEdit.addChild(edit);
- }
- if (AndroidManifest.NODE_ACTIVITY.equals(key)) {
- TextEdit alias = createTextEdit(AndroidManifest.NODE_ACTIVITY_ALIAS,
- AndroidManifest.ATTRIBUTE_TARGET_ACTIVITY, oldValue, newValue);
- if (alias != null) {
- multiEdit.addChild(alias);
- }
- }
- }
- setEdit(multiEdit);
- }
-
- @Override
- public Change perform(IProgressMonitor pm) throws CoreException {
- super.perform(pm);
- return new AndroidPackageRenameChange(mAndroidManifest, mManager, mDocument, mElements,
- mOldName, mNewName, mIsPackage);
- }
-
- @Override
- public void dispose() {
- super.dispose();
- RefactoringUtil.fixModel(mModel, mDocument);
-
- if (mManager != null) {
- try {
- mManager.disconnect(mAndroidManifest.getFullPath(), LocationKind.NORMALIZE,
- new NullProgressMonitor());
- } catch (CoreException e) {
- RefactoringUtil.log(e);
- }
- }
- if (mIsPackage) {
- new FixImportsJob("Fix Rename Package", mAndroidManifest, mNewName).schedule(500);
- }
- }
-
-}