Source for net.dpml.cli.validation.Validator

   1: /*
   2:  * Copyright 2003-2005 The Apache Software Foundation
   3:  * Copyright 2005 Stephen McConnell
   4:  *
   5:  * Licensed under the Apache License, Version 2.0 (the "License");
   6:  * you may not use this file except in compliance with the License.
   7:  * You may obtain a copy of the License at
   8:  *
   9:  *     http://www.apache.org/licenses/LICENSE-2.0
  10:  *
  11:  * Unless required by applicable law or agreed to in writing, software
  12:  * distributed under the License is distributed on an "AS IS" BASIS,
  13:  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14:  * See the License for the specific language governing permissions and
  15:  * limitations under the License.
  16:  */
  17: package net.dpml.cli.validation;
  18: 
  19: import java.util.List;
  20: 
  21: /**
  22:  * The validation interface for validating argument values(s).
  23:  *
  24:  * A validator can replace the argument string value with a
  25:  * specific class instance e.g. the {@link URLValidator} replaces
  26:  * the string value with a {@link java.net.URL} instance.
  27:  *
  28:  * @author <a href="@PUBLISHER-URL@">@PUBLISHER-NAME@</a>
  29:  * @version @PROJECT-VERSION@
  30:  */
  31: public interface Validator
  32: {
  33:     /**
  34:      * Validate the specified values (List of Strings).
  35:      * 
  36:      * @param values The values to validate.
  37:      * @throws InvalidArgumentException If any of the 
  38:      * specified values are not valid.
  39:      */
  40:     void validate( List values ) throws InvalidArgumentException;
  41: 
  42: }