diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/types/PatternSet.java b/proposal/myrmidon/src/java/org/apache/myrmidon/framework/PatternSet.java similarity index 98% rename from proposal/myrmidon/src/main/org/apache/tools/ant/types/PatternSet.java rename to proposal/myrmidon/src/java/org/apache/myrmidon/framework/PatternSet.java index ce86a5e7f..be2b59692 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/types/PatternSet.java +++ b/proposal/myrmidon/src/java/org/apache/myrmidon/framework/PatternSet.java @@ -5,14 +5,13 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.tools.ant.types; +package org.apache.myrmidon.framework; import java.util.ArrayList; import java.util.Iterator; import java.util.StringTokenizer; import org.apache.myrmidon.api.TaskContext; import org.apache.myrmidon.api.TaskException; -import org.apache.myrmidon.framework.Pattern; /** * Named collection of include/exclude tags.

diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Expand.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Expand.java index 66a657e1a..aa3d8fdc1 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Expand.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Expand.java @@ -21,7 +21,7 @@ import org.apache.avalon.excalibur.io.FileUtil; import org.apache.myrmidon.api.TaskException; import org.apache.tools.ant.types.DirectoryScanner; import org.apache.tools.ant.types.FileSet; -import org.apache.tools.ant.types.PatternSet; +import org.apache.myrmidon.framework.PatternSet; import org.apache.tools.ant.types.ScannerUtil; /** diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/MatchingTask.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/MatchingTask.java index cf2334c38..1df30a589 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/MatchingTask.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/MatchingTask.java @@ -13,7 +13,7 @@ import org.apache.myrmidon.framework.Pattern; import org.apache.tools.ant.Task; import org.apache.tools.ant.types.DirectoryScanner; import org.apache.tools.ant.types.FileSet; -import org.apache.tools.ant.types.PatternSet; +import org.apache.myrmidon.framework.PatternSet; /** * This is an abstract task that should be used by all those tasks that require diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ide/VAJExport.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ide/VAJExport.java index 0d0f61db2..c58b79a08 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ide/VAJExport.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ide/VAJExport.java @@ -10,7 +10,7 @@ package org.apache.tools.ant.taskdefs.optional.ide; import java.io.File; import org.apache.myrmidon.api.TaskException; import org.apache.myrmidon.framework.Pattern; -import org.apache.tools.ant.types.PatternSet; +import org.apache.myrmidon.framework.PatternSet; /** * Export packages from the Visual Age for Java workspace. The packages are diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/unix/Chmod.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/unix/Chmod.java index c570f7fad..ca97a287c 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/unix/Chmod.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/unix/Chmod.java @@ -16,7 +16,7 @@ import org.apache.tools.ant.taskdefs.exec.Execute; import org.apache.tools.ant.taskdefs.exec.ExecuteOn; import org.apache.tools.ant.types.Argument; import org.apache.tools.ant.types.FileSet; -import org.apache.tools.ant.types.PatternSet; +import org.apache.myrmidon.framework.PatternSet; /** * Chmod equivalent for unix-like environments. diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/types/FileSet.java b/proposal/myrmidon/src/main/org/apache/tools/ant/types/FileSet.java index 096beeb8d..737f9b2e3 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/types/FileSet.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/types/FileSet.java @@ -11,6 +11,7 @@ import java.io.File; import java.util.ArrayList; import org.apache.myrmidon.api.TaskException; import org.apache.myrmidon.framework.Pattern; +import org.apache.myrmidon.framework.PatternSet; import org.apache.tools.ant.ProjectComponent; /** diff --git a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/Expand.java b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/Expand.java index 66a657e1a..aa3d8fdc1 100644 --- a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/Expand.java +++ b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/Expand.java @@ -21,7 +21,7 @@ import org.apache.avalon.excalibur.io.FileUtil; import org.apache.myrmidon.api.TaskException; import org.apache.tools.ant.types.DirectoryScanner; import org.apache.tools.ant.types.FileSet; -import org.apache.tools.ant.types.PatternSet; +import org.apache.myrmidon.framework.PatternSet; import org.apache.tools.ant.types.ScannerUtil; /** diff --git a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/MatchingTask.java b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/MatchingTask.java index cf2334c38..1df30a589 100644 --- a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/MatchingTask.java +++ b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/MatchingTask.java @@ -13,7 +13,7 @@ import org.apache.myrmidon.framework.Pattern; import org.apache.tools.ant.Task; import org.apache.tools.ant.types.DirectoryScanner; import org.apache.tools.ant.types.FileSet; -import org.apache.tools.ant.types.PatternSet; +import org.apache.myrmidon.framework.PatternSet; /** * This is an abstract task that should be used by all those tasks that require diff --git a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/ide/VAJExport.java b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/ide/VAJExport.java index 0d0f61db2..c58b79a08 100644 --- a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/ide/VAJExport.java +++ b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/ide/VAJExport.java @@ -10,7 +10,7 @@ package org.apache.tools.ant.taskdefs.optional.ide; import java.io.File; import org.apache.myrmidon.api.TaskException; import org.apache.myrmidon.framework.Pattern; -import org.apache.tools.ant.types.PatternSet; +import org.apache.myrmidon.framework.PatternSet; /** * Export packages from the Visual Age for Java workspace. The packages are diff --git a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/unix/Chmod.java b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/unix/Chmod.java index c570f7fad..ca97a287c 100644 --- a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/unix/Chmod.java +++ b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/unix/Chmod.java @@ -16,7 +16,7 @@ import org.apache.tools.ant.taskdefs.exec.Execute; import org.apache.tools.ant.taskdefs.exec.ExecuteOn; import org.apache.tools.ant.types.Argument; import org.apache.tools.ant.types.FileSet; -import org.apache.tools.ant.types.PatternSet; +import org.apache.myrmidon.framework.PatternSet; /** * Chmod equivalent for unix-like environments. diff --git a/proposal/myrmidon/src/todo/org/apache/tools/ant/types/FileSet.java b/proposal/myrmidon/src/todo/org/apache/tools/ant/types/FileSet.java index 096beeb8d..737f9b2e3 100644 --- a/proposal/myrmidon/src/todo/org/apache/tools/ant/types/FileSet.java +++ b/proposal/myrmidon/src/todo/org/apache/tools/ant/types/FileSet.java @@ -11,6 +11,7 @@ import java.io.File; import java.util.ArrayList; import org.apache.myrmidon.api.TaskException; import org.apache.myrmidon.framework.Pattern; +import org.apache.myrmidon.framework.PatternSet; import org.apache.tools.ant.ProjectComponent; /** diff --git a/proposal/myrmidon/src/todo/org/apache/tools/ant/types/PatternSet.java b/proposal/myrmidon/src/todo/org/apache/tools/ant/types/PatternSet.java deleted file mode 100644 index ce86a5e7f..000000000 --- a/proposal/myrmidon/src/todo/org/apache/tools/ant/types/PatternSet.java +++ /dev/null @@ -1,148 +0,0 @@ -/* - * Copyright (C) The Apache Software Foundation. All rights reserved. - * - * This software is published under the terms of the Apache Software License - * version 1.1, a copy of which has been included with this distribution in - * the LICENSE.txt file. - */ -package org.apache.tools.ant.types; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.StringTokenizer; -import org.apache.myrmidon.api.TaskContext; -import org.apache.myrmidon.api.TaskException; -import org.apache.myrmidon.framework.Pattern; - -/** - * Named collection of include/exclude tags.

- * - * @author Arnout J. Kuiper - * @author Stefano Mazzocchi - * @author Sam Ruby - * @author Jon S. Stevens - * @author Stefan Bodewig - * @author Peter Donald - */ -public class PatternSet -{ - private ArrayList m_includeList = new ArrayList(); - private ArrayList m_excludeList = new ArrayList(); - - /** - * Sets the set of exclude patterns. Patterns may be separated by a comma or - * a space. - * - * @param excludes the string containing the exclude patterns - */ - public void setExcludes( final String excludes ) - { - final Pattern[] patterns = parsePatterns( excludes ); - for( int i = 0; i < patterns.length; i++ ) - { - addExclude( patterns[ i ] ); - } - } - - /** - * Sets the set of include patterns. Patterns may be separated by a comma or - * a space. - * - * @param includes the string containing the include patterns - */ - public void setIncludes( final String includes ) - { - final Pattern[] patterns = parsePatterns( includes ); - for( int i = 0; i < patterns.length; i++ ) - { - addInclude( patterns[ i ] ); - } - } - - /** - * add a name entry on the exclude list - */ - public void addExclude( final Pattern pattern ) - { - m_excludeList.add( pattern ); - } - - /** - * add a name entry on the include list - */ - public void addInclude( final Pattern pattern ) - { - m_includeList.add( pattern ); - } - - public String[] getExcludePatterns( final TaskContext context ) - throws TaskException - { - return toArray( m_excludeList, context ); - } - - /** - * Returns the filtered include patterns. - */ - public String[] getIncludePatterns( final TaskContext context ) - throws TaskException - { - return toArray( m_includeList, context ); - } - - /** - * Adds the patterns of the other instance to this set. - */ - protected void append( final PatternSet other ) - { - m_includeList.addAll( other.m_includeList ); - m_excludeList.addAll( other.m_excludeList ); - } - - public String toString() - { - return "PatternSet [ includes: " + m_includeList + - " excludes: " + m_excludeList + " ]"; - } - - private Pattern[] parsePatterns( final String patternString ) - { - final ArrayList patterns = new ArrayList(); - if( patternString != null && patternString.length() > 0 ) - { - StringTokenizer tok = new StringTokenizer( patternString, ", ", false ); - while( tok.hasMoreTokens() ) - { - final Pattern pattern = new Pattern( tok.nextToken() ); - patterns.add( pattern ); - } - } - - return (Pattern[])patterns.toArray( new Pattern[ patterns.size() ] ); - } - - /** - * Convert a vector of Pattern elements into an array of Strings. - */ - private String[] toArray( final ArrayList list, final TaskContext context ) - { - if( list.size() == 0 ) - { - return null; - } - - final ArrayList names = new ArrayList(); - final Iterator e = list.iterator(); - while( e.hasNext() ) - { - final Pattern pattern = (Pattern)e.next(); - final String result = pattern.evaluateName( context ); - if( null != result && result.length() > 0 ) - { - names.add( result ); - } - } - - return (String[])names.toArray( new String[ names.size() ] ); - } -}