Coverage report

  %line %branch
ca.spaz.cron.config.AbstractRegexKeyValidator
0% 
0% 

 1  
 /*
 2  
  *******************************************************************************
 3  
  * Copyright (c) 2005 Chris Rose and AIMedia
 4  
  * All rights reserved. AbstractRegexKeyValidator and the accompanying materials
 5  
  * are made available under the terms of the Common Public License v1.0
 6  
  * which accompanies this distribution, and is available at
 7  
  * http://www.eclipse.org/legal/cpl-v10.html
 8  
  * 
 9  
  * Contributors:
 10  
  *     Chris Rose
 11  
  *******************************************************************************/
 12  
 package ca.spaz.cron.config;
 13  
 
 14  
 import java.util.regex.*;
 15  
 
 16  0
 public abstract class AbstractRegexKeyValidator implements PropertyValidator {
 17  
 
 18  
    protected Matcher getMatcher(String string) {
 19  0
       if (null == string) {
 20  0
          throw new IllegalArgumentException("Null strings are not allowed");
 21  
       }
 22  0
       return Pattern.compile(getExpression()).matcher(string);
 23  
    }
 24  
    
 25  
    /* (non-Javadoc)
 26  
     * @see ca.spaz.cron.config.PropertyValidator#isValid(java.lang.String, java.lang.String)
 27  
     */
 28  
    public boolean isValid(String key, String value) {
 29  0
       boolean valid = false;
 30  0
       if (getMatcher(key).find()) {
 31  0
          valid = doIsValid(key, value);
 32  
       }
 33  0
       return valid;
 34  
    }
 35  
    
 36  
    /**
 37  
     * This method will be called only in the case where the pattern matches.  This
 38  
     * can be assumed to be a precondition of the method call.
 39  
     * 
 40  
     * @param key The matching key.
 41  
     * @param value The value being checked.
 42  
     * @return <code>true</code> if <code>value</code> is a valid value for
 43  
     * <code>key</code>, <code>false</code> otherwise.
 44  
     */
 45  
    protected abstract boolean doIsValid(String key, String value);
 46  
    
 47  
    /**
 48  
     * Get the regular expression to match the key on.
 49  
     * @return a string representation of a regular expression.
 50  
     */
 51  
    protected abstract String getExpression();
 52  
    
 53  
 }

This report is generated by jcoverage, Maven and Maven JCoverage Plugin.