public class XMLValidateTask extends Task
Modifier and Type | Class and Description |
---|---|
static class |
XMLValidateTask.Attribute
The class to create to set a feature of the parser.
|
static class |
XMLValidateTask.Property
A Parser property.
|
protected class |
XMLValidateTask.ValidatorErrorHandler
ValidatorErrorHandler role :
log SAX parse exceptions,
remember if an error occurred
|
Modifier and Type | Field and Description |
---|---|
protected Path |
classpath |
protected XMLValidateTask.ValidatorErrorHandler |
errorHandler |
protected boolean |
failOnError |
protected java.io.File |
file
file to be validated
|
protected java.util.Vector<FileSet> |
filesets
sets of file to be validated
|
protected static java.lang.String |
INIT_FAILED_MSG |
protected boolean |
lenient |
static java.lang.String |
MESSAGE_FILES_VALIDATED
Message for successful validation
|
protected java.lang.String |
readerClassName |
protected boolean |
warn |
protected org.xml.sax.XMLReader |
xmlReader
the parser is viewed as a SAX2 XMLReader.
|
description, location, project
Constructor and Description |
---|
XMLValidateTask() |
Modifier and Type | Method and Description |
---|---|
void |
addConfiguredXMLCatalog(XMLCatalog catalog)
add an XMLCatalog as a nested element; optional.
|
void |
addFileset(FileSet set)
specify a set of file to be checked
|
protected void |
cleanup()
Cleans up resources.
|
XMLValidateTask.Attribute |
createAttribute()
Add an attribute nested element.
|
Path |
createClasspath() |
protected org.xml.sax.XMLReader |
createDefaultReader()
Create a reader if the use of the class did not specify another one.
|
DTDLocation |
createDTD()
Create a DTD location record; optional.
|
XMLValidateTask.Property |
createProperty()
Creates a property.
|
protected org.xml.sax.XMLReader |
createXmlReader()
create the XML reader.
|
protected boolean |
doValidate(java.io.File afile)
parse the file
|
void |
execute()
execute the task
|
protected org.xml.sax.EntityResolver |
getEntityResolver()
accessor to the xmlCatalog used in the task
|
protected org.xml.sax.XMLReader |
getXmlReader()
get the XML reader.
|
void |
init()
Called by the project to let the task initialize properly.
|
protected void |
initValidator()
init the parser :
load the parser class, and set features if necessary
It is only after this that the reader is valid
|
protected boolean |
isSax1Parser()
test that returns true if we are using a SAX1 parser.
|
protected void |
onSuccessfulValidation(int fileProcessed)
handler called on successful file validation.
|
void |
setClassName(java.lang.String className)
Specify the class name of the SAX parser to be used.
|
void |
setClasspath(Path classpath)
Specify the classpath to be searched to load the parser (optional)
|
void |
setClasspathRef(Reference r)
Where to find the parser class; optional.
|
void |
setFailOnError(boolean fail)
Specify how parser error are to be handled.
|
protected void |
setFeature(java.lang.String feature,
boolean value)
Set a feature on the parser.
|
void |
setFile(java.io.File file)
specify the file to be checked; optional.
|
void |
setLenient(boolean bool)
Specify whether the parser should be validating.
|
protected void |
setProperty(java.lang.String name,
java.lang.String value)
Sets a property.
|
void |
setWarn(boolean bool)
Specify how parser error are to be handled.
|
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
protected static final java.lang.String INIT_FAILED_MSG
protected boolean failOnError
protected boolean warn
protected boolean lenient
protected java.lang.String readerClassName
protected java.io.File file
protected java.util.Vector<FileSet> filesets
protected Path classpath
protected org.xml.sax.XMLReader xmlReader
protected XMLValidateTask.ValidatorErrorHandler errorHandler
public static final java.lang.String MESSAGE_FILES_VALIDATED
public void setFailOnError(boolean fail)
true
.
If set to true
(default), throw a buildException if the
parser yields an error.
fail
- if set to false
do not fail on errorpublic void setWarn(boolean bool)
If set to true
(default), log a warn message for each SAX warn event.
bool
- if set to false
do not send warningspublic void setLenient(boolean bool)
true
.
If set to false, the validation will fail only if the parsed document is not well formed XML.
this option is ignored if the specified class
with setClassName(String)
is not a SAX2 XMLReader.
bool
- if set to false
only fail on malformed XMLpublic void setClassName(java.lang.String className)
className
- should be an implementation of SAX2
org.xml.sax.XMLReader
or SAX2 org.xml.sax.Parser
.
If className is an implementation of
org.xml.sax.Parser
, setLenient(boolean)
,
will be ignored.
If not set, the default will be used.
XMLReader
,
Parser
public void setClasspath(Path classpath)
classpath
- the classpath to load the parserpublic Path createClasspath()
setClasspath(org.apache.tools.ant.types.Path)
public void setClasspathRef(Reference r)
r
- reference to a classpath defined elsewheresetClasspath(org.apache.tools.ant.types.Path)
public void setFile(java.io.File file)
file
- the file to be checkedpublic void addConfiguredXMLCatalog(XMLCatalog catalog)
catalog
- XMLCatalog to usepublic void addFileset(FileSet set)
set
- the fileset to checkpublic XMLValidateTask.Attribute createAttribute()
public XMLValidateTask.Property createProperty()
public void init() throws BuildException
init
in class Task
BuildException
- if something goes wrong with the buildpublic DTDLocation createDTD()
protected org.xml.sax.EntityResolver getEntityResolver()
protected org.xml.sax.XMLReader getXmlReader()
initValidator()
.
If the reader is an instance of ParserAdapter
then
the parser is a SAX1 parser, and you cannot call
setFeature(String, boolean)
or setProperty(String, String)
on it.public void execute() throws BuildException
execute
in class Task
BuildException
- if failonerror
is true and an error happensprotected void onSuccessfulValidation(int fileProcessed)
fileProcessed
- number of files processed.protected void initValidator()
BuildException
- if something went wrongprotected boolean isSax1Parser()
protected org.xml.sax.XMLReader createXmlReader()
readerClassName
,
falling back to a default reader if not.
If the returned reader is an instance of ParserAdapter
then
we have created and wrapped a SAX1 parser.protected void cleanup()
protected org.xml.sax.XMLReader createDefaultReader()
BuildException
- if something went wrongprotected void setFeature(java.lang.String feature, boolean value) throws BuildException
feature
- the name of the feature to setvalue
- the value of the featureBuildException
- if the feature was not supportedprotected void setProperty(java.lang.String name, java.lang.String value) throws BuildException
name
- a property namevalue
- a property value.BuildException
- if an error occurs.BuildException
- if the property was not supportedprotected boolean doValidate(java.io.File afile)
afile
- the file to validate.