Package gov.nasa.pds.validate
Class ValidateLauncher
java.lang.Object
gov.nasa.pds.validate.ValidateLauncher
public class ValidateLauncher extends Object
Wrapper class for the Validate Tool. Class handles command-line parsing and
querying, in addition to reporting setup.
- Author:
- mcayanan
-
Constructor Summary
Constructors Constructor Description ValidateLauncher()Constructor. -
Method Summary
Modifier and Type Method Description voiddisplayHelp()Displays tool usage.voiddisplayVersion()Displays the current version and disclaimer notice.booleandoValidation(Map<URL,String> checksumManifest)Performs validation.voidflushValidators()Flush ValidatorFactory cache (set to null).ReportgetReport()Gets the object representation of the Validation Report.static voidmain(String[] args)Main class that launches the Validate Tool.org.apache.commons.cli.CommandLineparse(String[] args)Parse the command-line argumentsvoidprintReportFooter()Print the report footer.intprocessMain(String[] args)Wrapper method for the main class that returns valid exitCode for execution.voidquery(File configuration)Query the configuration file.voidquery(org.apache.commons.cli.CommandLine line)Query the command-line and process the command-line option flags set.voidsetAdditionalPaths(List<String> additionalPaths)Set additional paths to be specified when attempting referential integrity validation (pds4.bundle or pds4.collection rules)voidsetAllowUnlabeledFiles(boolean flag)voidsetCatalogs(List<String> catalogs)Set the catalogs.voidsetChecksumManifest(String manifest)Set the checksum manifest.voidsetContentValidation(boolean flag)Sets the flag that enables/disables data content validation.voidsetForce(boolean value)voidsetManifestBasePath(String path)Set the base path to look up relative file references in a given checksum manifest file.voidsetMaxErrors(long value)voidsetNonRegisteredProducts(boolean nonRegisteredProducts)voidsetRegExps(List<String> patterns)Sets the list of file patterns to look for if traversing a directory.voidsetReport(File report)Sets the report file.voidsetReportStyle(String style)Set the output style for the report.voidsetSchemas(List<String> schemas)Set the schemas.voidsetSchematrons(List<String> schematrons)Set the schematrons.voidsetSeverity(int level)Sets the severity level for the report.voidsetSkipProductValidation(boolean flag)voidsetSpotCheckData(int value)voidsetTargets(List<String> targets)Set the target.voidsetTraverse(boolean value)Sets the flag to enable/disable directory recursion.voidsetUpdateRegisteredProducts(boolean updateRegisteredProducts)voidsetupReport()Setup the report.voidsetValidateContext(boolean flag)Sets the flag that enables/disables context validation.voidsetValidationRule(String value)Sets the validation rule name to use.
-
Constructor Details
-
ValidateLauncher
Constructor.
-
-
Method Details
-
parse
public org.apache.commons.cli.CommandLine parse(String[] args) throws org.apache.commons.cli.ParseExceptionParse the command-line arguments- Parameters:
args- The command-line arguments- Returns:
- A class representation of the command-line arguments
- Throws:
org.apache.commons.cli.ParseException- If an error occurred during parsing.
-
query
Query the command-line and process the command-line option flags set.- Parameters:
line- A CommandLine object containing the flags that were set.- Throws:
Exception- If an error occurred while processing the command-line options.
-
query
public void query(File configuration) throws org.apache.commons.configuration.ConfigurationExceptionQuery the configuration file.- Parameters:
configuration- A configuration file.- Throws:
org.apache.commons.configuration.ConfigurationException- If an error occurred while querying the configuration file.
-
setAdditionalPaths
Set additional paths to be specified when attempting referential integrity validation (pds4.bundle or pds4.collection rules)- Parameters:
additionalPaths- A list of paths.- Throws:
MalformedURLException
-
setTargets
Set the target.- Parameters:
targets- A list of targets.- Throws:
MalformedURLException
-
setChecksumManifest
Set the checksum manifest.- Parameters:
manifest- A checksum manifest file.- Throws:
MalformedURLException
-
setManifestBasePath
Set the base path to look up relative file references in a given checksum manifest file.- Parameters:
path- A path.- Throws:
MalformedURLException
-
setSchemas
Set the schemas.- Parameters:
schemas- A list of schemas.- Throws:
MalformedURLException
-
setSchematrons
Set the schematrons.- Parameters:
schematrons- A list of schematrons.- Throws:
MalformedURLException
-
setCatalogs
Set the catalogs.- Parameters:
catalogs- A list of catalogs.
-
setReport
Sets the report file.- Parameters:
report- A report file.
-
getReport
Gets the object representation of the Validation Report.- Returns:
- The Report object.
-
setReportStyle
Set the output style for the report.- Parameters:
style- 'sum' for a summary report, 'min' for a minimal report, and 'full' for a full report- Throws:
ApplicationExceptionException
-
setTraverse
public void setTraverse(boolean value)Sets the flag to enable/disable directory recursion.- Parameters:
value- A boolean value.
-
setSeverity
public void setSeverity(int level)Sets the severity level for the report.- Parameters:
level- An interger value.
-
setRegExps
Sets the list of file patterns to look for if traversing a directory.- Parameters:
patterns- A list of file patterns.
-
setForce
public void setForce(boolean value) -
setValidationRule
Sets the validation rule name to use.- Parameters:
value- the validation rule name
-
setContentValidation
public void setContentValidation(boolean flag)Sets the flag that enables/disables data content validation.- Parameters:
flag- True or False.
-
setSkipProductValidation
public void setSkipProductValidation(boolean flag) -
setMaxErrors
public void setMaxErrors(long value) -
setSpotCheckData
public void setSpotCheckData(int value) -
setAllowUnlabeledFiles
public void setAllowUnlabeledFiles(boolean flag) -
setUpdateRegisteredProducts
public void setUpdateRegisteredProducts(boolean updateRegisteredProducts) -
setNonRegisteredProducts
public void setNonRegisteredProducts(boolean nonRegisteredProducts) -
setValidateContext
public void setValidateContext(boolean flag)Sets the flag that enables/disables context validation.- Parameters:
flag- True or False.
-
displayHelp
public void displayHelp()Displays tool usage. -
displayVersion
Displays the current version and disclaimer notice.- Throws:
IOException- If there was an error that occurred while getting the tool information.
-
setupReport
Setup the report.- Throws:
IOException- If an error occurred while setting up the report.
-
doValidation
Performs validation.- Parameters:
checksumManifest-- Returns:
- boolean true - success false - fail
- Throws:
Exception
-
processMain
Wrapper method for the main class that returns valid exitCode for execution.- Parameters:
args- list of command-line arguments.- Throws:
Exception
-
flushValidators
public void flushValidators()Flush ValidatorFactory cache (set to null). The ValidatorFactory will cache schemas and other validation data between runs, which can cause issues, specifically when using varying dictionaries and catalog files. -
main
Main class that launches the Validate Tool.- Parameters:
args- A list of command-line arguments.- Throws:
TransformerConfigurationException
-