diff options
Diffstat (limited to 'anttasks/src/com/android/ant/BaseTask.java')
-rw-r--r-- | anttasks/src/com/android/ant/BaseTask.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/anttasks/src/com/android/ant/BaseTask.java b/anttasks/src/com/android/ant/BaseTask.java index 00b7fcb..0ff7bf1 100644 --- a/anttasks/src/com/android/ant/BaseTask.java +++ b/anttasks/src/com/android/ant/BaseTask.java @@ -21,6 +21,8 @@ import org.apache.tools.ant.Task; import java.io.File; import java.util.ArrayList; +import java.util.HashSet; +import java.util.Set; /** * A base class for the ant task that contains logic for handling dependency files @@ -41,6 +43,22 @@ public abstract class BaseTask extends Task { protected abstract String getExecTaskName(); + private Set<String> mRestrictTouchedExtensionsTo; + + /** + * Sets the value of the "restricttouchedextensionsto" attribute. + * @param touchedExtensions the extensions to check to see if they have been modified. + * values should be separated by a colon (:). If left blank or not set, all extensions + * will be checked. + */ + public void setRestrictTouchedExtensionsTo(String restrictTouchedExtensionsTo) { + mRestrictTouchedExtensionsTo = new HashSet<String>(); + String[] extensions = restrictTouchedExtensionsTo.split(":"); + for (String s : extensions) { + mRestrictTouchedExtensionsTo.add(s); + } + } + @Override public void execute() throws BuildException { @@ -84,6 +102,6 @@ public abstract class BaseTask extends Task { } assert mDependencies != null : "Dependencies have not been initialized"; - return mDependencies.dependenciesHaveChanged(); + return mDependencies.dependenciesHaveChanged(mRestrictTouchedExtensionsTo); } } |