|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.tools.ant.ProjectComponent org.apache.tools.ant.Task org.apache.tools.ant.taskdefs.optional.XMLValidateTask
public class XMLValidateTask
Checks XML files are valid (or only well formed). The task uses the SAX2 parser implementation provided by JAXP by default (probably the one that is used by Ant itself), but one can specify any SAX1/2 parser if needed.
Nested Class Summary | |
---|---|
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 |
Field Summary | |
---|---|
protected Path |
classpath
|
protected XMLValidateTask.ValidatorErrorHandler |
errorHandler
|
protected boolean |
failOnError
|
protected java.io.File |
file
file to be validated |
protected java.util.Vector |
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 sucessfull validation |
protected java.lang.String |
readerClassName
|
protected boolean |
warn
|
protected org.xml.sax.XMLReader |
xmlReader
the parser is viewed as a SAX2 XMLReader. |
Fields inherited from class org.apache.tools.ant.Task |
---|
target, taskName, taskType, wrapper |
Fields inherited from class org.apache.tools.ant.ProjectComponent |
---|
description, location, project |
Constructor Summary | |
---|---|
XMLValidateTask()
|
Method Summary | |
---|---|
void |
addConfiguredXMLCatalog(XMLCatalog catalog)
add an XMLCatalog as a nested element; optional. |
void |
addFileset(FileSet set)
specify a set of file to be checked |
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. |
Methods inherited from class org.apache.tools.ant.Task |
---|
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType |
Methods inherited from class org.apache.tools.ant.ProjectComponent |
---|
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
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 filesets
protected Path classpath
protected org.xml.sax.XMLReader xmlReader
protected XMLValidateTask.ValidatorErrorHandler errorHandler
public static final java.lang.String MESSAGE_FILES_VALIDATED
Constructor Detail |
---|
public XMLValidateTask()
Method Detail |
---|
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 warnings
public 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 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 feature
BuildException
- 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.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |