Methods Summary |
---|
public boolean | isSelected(java.io.File basedir, java.lang.String filename, java.io.File file)The heart of the matter. This is where the selector gets to decide
on the inclusion of a file in a particular fileset. Most of the work
for this selector is offloaded into SelectorUtils, a static class
that provides the same services for both FilenameSelector and
DirectoryScanner.
validate();
return (SelectorUtils.matchPath(pattern, filename,
casesensitive) == !(negated));
|
public void | setCasesensitive(boolean casesensitive)Whether to ignore case when checking filenames.
this.casesensitive = casesensitive;
|
public void | setName(java.lang.String pattern)The name of the file, or the pattern for the name, that
should be used for selection.
pattern = pattern.replace('/", File.separatorChar).replace('\\",
File.separatorChar);
if (pattern.endsWith(File.separator)) {
pattern += "**";
}
this.pattern = pattern;
|
public void | setNegate(boolean negated)You can optionally reverse the selection of this selector,
thereby emulating an <exclude> tag, by setting the attribute
negate to true. This is identical to surrounding the selector
with <not></not>.
this.negated = negated;
|
public void | setParameters(org.apache.tools.ant.types.Parameter[] parameters)When using this as a custom selector, this method will be called.
It translates each parameter into the appropriate setXXX() call.
super.setParameters(parameters);
if (parameters != null) {
for (int i = 0; i < parameters.length; i++) {
String paramname = parameters[i].getName();
if (NAME_KEY.equalsIgnoreCase(paramname)) {
setName(parameters[i].getValue());
} else if (CASE_KEY.equalsIgnoreCase(paramname)) {
setCasesensitive(Project.toBoolean(
parameters[i].getValue()));
} else if (NEGATE_KEY.equalsIgnoreCase(paramname)) {
setNegate(Project.toBoolean(parameters[i].getValue()));
} else {
setError("Invalid parameter " + paramname);
}
}
}
|
public java.lang.String | toString()
StringBuffer buf = new StringBuffer("{filenameselector name: ");
buf.append(pattern);
buf.append(" negate: ");
if (negated) {
buf.append("true");
} else {
buf.append("false");
}
buf.append(" casesensitive: ");
if (casesensitive) {
buf.append("true");
} else {
buf.append("false");
}
buf.append("}");
return buf.toString();
|
public void | verifySettings()Checks to make sure all settings are kosher. In this case, it
means that the name attribute has been set.
if (pattern == null) {
setError("The name attribute is required");
}
|