net.dpml.cli.validation

Class URIValidator

Implemented Interfaces:
Validator

public class URIValidator
extends java.lang.Object
implements Validator

The URIValidator validates the string argument values are valid URIs. If the value is a URI, the string value in the java.util.List of values is replaced with the java.net.URI instance. The following example shows how to limit the valid values for the site argument to 'artifact' URIs.
 ...
 ArgumentBuilder builder = new ArgumentBuilder();
 Argument plugin =
   builder
     .withName("plugin");
     .withValidator( new URIValidator( "artifact", "link" ) );
 
Version:
@PROJECT-VERSION@
Author:
@PUBLISHER-NAME@

Constructor Summary

URIValidator()
Creates a UriValidator.
URIValidator(String scheme)
Creates a UriValidator for the specified scheme.
URIValidator(String[] schemes)
Creates a UriValidator for the specified schemes.

Method Summary

void
validate(List values)
Validate the list of values against the list of permitted values.

Constructor Details

URIValidator

public URIValidator()
Creates a UriValidator.

URIValidator

public URIValidator(String scheme)
Creates a UriValidator for the specified scheme.
Parameters:
scheme - the uri scheme

URIValidator

public URIValidator(String[] schemes)
Creates a UriValidator for the specified schemes.
Parameters:
schemes - an array of schemes

Method Details

validate

public void validate(List values)
            throws InvalidArgumentException
Validate the list of values against the list of permitted values. If a value is valid, replace the string in the values java.util.List with the java.net.URI instance.
Specified by:
validate in interface Validator
Parameters:
values - the list of values to validate
Throws:
InvalidArgumentException - if a value is invalid
See Also:
net.dpml.cli.validation.Validator.validate(java.util.List)