aboutsummaryrefslogtreecommitdiff
path: root/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/ChangedFileSetHelper.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/ChangedFileSetHelper.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/ChangedFileSetHelper.java200
1 files changed, 0 insertions, 200 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/ChangedFileSetHelper.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/ChangedFileSetHelper.java
deleted file mode 100644
index 9fc19a7a6..000000000
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/ChangedFileSetHelper.java
+++ /dev/null
@@ -1,200 +0,0 @@
-/*
- * Copyright (C) 2012 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.build.builders;
-
-import com.android.SdkConstants;
-import com.android.annotations.NonNull;
-import com.android.ide.eclipse.adt.AdtConstants;
-import com.android.ide.eclipse.adt.internal.project.BaseProjectHelper;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IPath;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Helper class to generate {@link ChangedFileSet} for given projects.
- *
- * Also contains non project specific {@link ChangedFileSet} such as {@link #MANIFEST}
- * and {@link #NATIVE_LIBS}
- */
-class ChangedFileSetHelper {
-
- final static ChangedFileSet MANIFEST;
- final static ChangedFileSet NATIVE_LIBS;
-
- static {
- MANIFEST = new ChangedFileSet("manifest", //$NON-NLS-1$
- SdkConstants.FN_ANDROID_MANIFEST_XML);
-
- // FIXME: move compiled native libs to bin/libs/
- NATIVE_LIBS = new ChangedFileSet(
- "nativeLibs",
- SdkConstants.FD_NATIVE_LIBS + "/*/*.so", //$NON-NLS-1$
- SdkConstants.FD_NATIVE_LIBS + "/*/" + SdkConstants.FN_GDBSERVER); //$NON-NLS-1$
- }
-
- /**
- * Returns a ChangedFileSet for Java resources inside a given project's source folders.
- * @param project the project.
- * @return a ChangedFileSet
- */
- static ChangedFileSet getJavaResCfs(@NonNull IProject project) {
-
- // get the source folder for the given project.
- IPath projectPath = project.getFullPath();
-
- // get the source folders.
- List<IPath> srcPaths = BaseProjectHelper.getSourceClasspaths(project);
- List<String> paths = new ArrayList<String>(srcPaths.size());
-
- // create a pattern for each of them.
- for (IPath path : srcPaths) {
- paths.add(path.makeRelativeTo(projectPath).toString() + "/**"); //$NON-NLS-1$
- }
-
- // custom ChangedFileSet to ignore .java files.
- return new JavaResChangedSet("javaRes", //$NON-NLS-1$
- paths.toArray(new String[paths.size()]));
- }
-
- /**
- * Returns a {@link ChangedFileSet} for all the resources (included assets), and the output
- * file (compiled resources
- * @param project the project
- * @return a ChangeFileSet
- */
- static ChangedFileSet getResCfs(@NonNull IProject project) {
- // generated res is inside the project's android output folder
- String path = getRelativeAndroidOut(project);
-
- ChangedFileSet set = new ChangedFileSet(
- "resources", //$NON-NLS-1$
- SdkConstants.FD_RES + "/**", //$NON-NLS-1$
- SdkConstants.FD_ASSETS + "/**", //$NON-NLS-1$
- path + '/' + AdtConstants.WS_BIN_RELATIVE_BC + "/**"); //$NON-NLS-1$
-
- // output file is based on the project's android output folder
- set.setOutput(path + '/' + AdtConstants.FN_RESOURCES_AP_);
-
- return set;
- }
-
- /**
- * Returns a {@link ChangedFileSet} for all the resources (included assets), and the output
- * file (compiled resources
- * @param project the project
- * @return a ChangeFileSet
- */
- static ChangedFileSet getMergedManifestCfs(@NonNull IProject project) {
- // input path is inside the project's android output folder
- String path = getRelativeAndroidOut(project);
-
- ChangedFileSet set = new ChangedFileSet(
- "mergedManifest", //$NON-NLS-1$
- path + '/' + SdkConstants.FN_ANDROID_MANIFEST_XML);
-
- return set;
- }
-
- /**
- * Returns a {@link ChangedFileSet} for the generated R.txt file
- * @param project the project
- * @return a ChangeFileSet
- */
- static ChangedFileSet getTextSymbols(@NonNull IProject project) {
- // input path is inside the project's android output folder
- String path = getRelativeAndroidOut(project);
-
- ChangedFileSet set = new ChangedFileSet(
- "textSymbols", //$NON-NLS-1$
- path + '/' + SdkConstants.FN_RESOURCE_TEXT);
-
- return set;
- }
-
- /**
- * Returns a {@link ChangedFileSet} for a project's javac output.
- * @param project the project
- * @return a ChangedFileSet
- */
- static ChangedFileSet getByteCodeCfs(@NonNull IProject project) {
- // input pattern is based on the project's Java compiler's output folder
- String path = getRelativeJavaCOut(project);
-
- ChangedFileSet set = new ChangedFileSet("compiledCode", //$NON-NLS-1$
- path + "/**/*" + SdkConstants.DOT_CLASS); //$NON-NLS-1$
-
- return set;
- }
-
- /**
- * Returns a {@link ChangedFileSet} for a project's complete resources, including
- * generated resources and crunch cache.
- * @param project the project
- * @return a ChangeFileSet
- */
- static ChangedFileSet getFullResCfs(@NonNull IProject project) {
- // generated res are in the project's android output folder
- String path = getRelativeAndroidOut(project);
-
- ChangedFileSet set = new ChangedFileSet("libResources", //$NON-NLS-1$
- SdkConstants.FD_RES + "/**", //$NON-NLS-1$
- path + '/' + SdkConstants.FD_RES + "/**"); //$NON-NLS-1$
-
- return set;
- }
-
- /**
- * Returns a {@link ChangedFileSet} for a project's whole code, including
- * compiled bytecode, 3rd party libs, and the output file containing the Dalvik
- * bytecode file.
- * @param project the project
- * @return a ChangeFileSet
- */
- static ChangedFileSet getCodeCfs(@NonNull IProject project) {
- // input pattern is based on the project's Java compiler's output folder
- String path = getRelativeJavaCOut(project);
-
- ChangedFileSet set = new ChangedFileSet("classAndJars", //$NON-NLS-1$
- path + "/**/*" + SdkConstants.DOT_CLASS, //$NON-NLS-1$
- SdkConstants.FD_NATIVE_LIBS + "/*" + SdkConstants.DOT_JAR); //$NON-NLS-1$
-
- // output file is based on the project's android output folder
- path = getRelativeAndroidOut(project);
- set.setOutput(path + '/' + SdkConstants.FN_APK_CLASSES_DEX);
-
- return set;
- }
-
- private static String getRelativePath(@NonNull IProject project, @NonNull IResource resource) {
- return resource.getFullPath().makeRelativeTo(project.getFullPath()).toString();
- }
-
- private static String getRelativeAndroidOut(@NonNull IProject project) {
- IFolder folder = BaseProjectHelper.getAndroidOutputFolder(project);
- return getRelativePath(project, folder);
- }
-
- private static String getRelativeJavaCOut(@NonNull IProject project) {
- IFolder folder = BaseProjectHelper.getJavaOutputFolder(project);
- return getRelativePath(project, folder);
- }
-}