git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270506 13f79535-47bb-0310-9956-ffa450edef68master
@@ -1,87 +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.optional.depend; | |||
import java.util.ArrayList; | |||
import java.util.List; | |||
import org.apache.myrmidon.api.TaskException; | |||
import org.apache.tools.ant.DirectoryScanner; | |||
import org.apache.tools.ant.Project; | |||
import org.apache.tools.ant.types.FileSet; | |||
/** | |||
* A DepSet is a FileSet, that enlists all classes that depend on a certain | |||
* class. A DependSet extends FileSets and uses another FileSet as input. The | |||
* nested FileSet attribute provides the domain, that is used for searching for | |||
* dependent classes | |||
* | |||
* @author <a href="mailto:hengels@innovidata.com">Holger Engels</a> | |||
*/ | |||
public class ClassfileSet extends FileSet | |||
{ | |||
private List rootClasses = new ArrayList(); | |||
protected ClassfileSet( ClassfileSet s ) | |||
{ | |||
super( s ); | |||
rootClasses = s.rootClasses; | |||
} | |||
public void setRootClass( String rootClass ) | |||
throws TaskException | |||
{ | |||
rootClasses.add( rootClass ); | |||
} | |||
/** | |||
* Return the DirectoryScanner associated with this FileSet. | |||
* | |||
* @param p Description of Parameter | |||
* @return The DirectoryScanner value | |||
*/ | |||
public DirectoryScanner getDirectoryScanner( Project p ) | |||
{ | |||
DependScanner scanner = new DependScanner(); | |||
scanner.setBasedir( getDir() ); | |||
scanner.setRootClasses( rootClasses ); | |||
scanner.scan(); | |||
return scanner; | |||
} | |||
public void addConfiguredRoot( ClassRoot root ) | |||
{ | |||
rootClasses.add( root.getClassname() ); | |||
} | |||
public Object clone() | |||
{ | |||
if( isReference() ) | |||
{ | |||
return new ClassfileSet( (ClassfileSet)getRef( getProject() ) ); | |||
} | |||
else | |||
{ | |||
return new ClassfileSet( this ); | |||
} | |||
} | |||
public static class ClassRoot | |||
{ | |||
private String rootClass; | |||
public void setClassname( String name ) | |||
{ | |||
this.rootClass = name; | |||
} | |||
public String getClassname() | |||
{ | |||
return rootClass; | |||
} | |||
} | |||
} |
@@ -1,87 +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.optional.depend; | |||
import java.util.ArrayList; | |||
import java.util.List; | |||
import org.apache.myrmidon.api.TaskException; | |||
import org.apache.tools.ant.DirectoryScanner; | |||
import org.apache.tools.ant.Project; | |||
import org.apache.tools.ant.types.FileSet; | |||
/** | |||
* A DepSet is a FileSet, that enlists all classes that depend on a certain | |||
* class. A DependSet extends FileSets and uses another FileSet as input. The | |||
* nested FileSet attribute provides the domain, that is used for searching for | |||
* dependent classes | |||
* | |||
* @author <a href="mailto:hengels@innovidata.com">Holger Engels</a> | |||
*/ | |||
public class ClassfileSet extends FileSet | |||
{ | |||
private List rootClasses = new ArrayList(); | |||
protected ClassfileSet( ClassfileSet s ) | |||
{ | |||
super( s ); | |||
rootClasses = s.rootClasses; | |||
} | |||
public void setRootClass( String rootClass ) | |||
throws TaskException | |||
{ | |||
rootClasses.add( rootClass ); | |||
} | |||
/** | |||
* Return the DirectoryScanner associated with this FileSet. | |||
* | |||
* @param p Description of Parameter | |||
* @return The DirectoryScanner value | |||
*/ | |||
public DirectoryScanner getDirectoryScanner( Project p ) | |||
{ | |||
DependScanner scanner = new DependScanner(); | |||
scanner.setBasedir( getDir() ); | |||
scanner.setRootClasses( rootClasses ); | |||
scanner.scan(); | |||
return scanner; | |||
} | |||
public void addConfiguredRoot( ClassRoot root ) | |||
{ | |||
rootClasses.add( root.getClassname() ); | |||
} | |||
public Object clone() | |||
{ | |||
if( isReference() ) | |||
{ | |||
return new ClassfileSet( (ClassfileSet)getRef( getProject() ) ); | |||
} | |||
else | |||
{ | |||
return new ClassfileSet( this ); | |||
} | |||
} | |||
public static class ClassRoot | |||
{ | |||
private String rootClass; | |||
public void setClassname( String name ) | |||
{ | |||
this.rootClass = name; | |||
} | |||
public String getClassname() | |||
{ | |||
return rootClass; | |||
} | |||
} | |||
} |