Clover coverage report -
Coverage timestamp: Sat Jul 7 2007 16:41:13 CEST
file stats: LOC: 63   Methods: 1
NCLOC: 26   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
DefaultAssignmentPolicyFactory.java 75% 60% 100% 66.7%
coverage coverage
 1    /**
 2    * JTRunner is free software; you can redistribute it and/or modify it under the
 3    * terms of the GNU General Public License as published by the Free Software
 4    * Foundation; either version 2, or (at your option) any later version.
 5    */
 6   
 7    package jtr.assigner.impl;
 8   
 9    import jtr.assigner.IAssignmentPolicyFactory;
 10    import jtr.assigner.IAssignmentPolicy;
 11    import jtr.assigner.UnknownAssignmentPolicyException;
 12    import org.apache.log4j.Logger;
 13   
 14    /**
 15    * This is the default factory used for obtaining instances of
 16    * <code>IAssignmentPolicy</code>.<br>
 17    * Once an <code>IAssignmentPolicy</code> concrete instance has been obtained,
 18    * the actual <code>IParamsAssigner</code> can be instantiated.
 19    *
 20    * @author Francesco Russo (frusso@dev.java.net)
 21    * @version 4.0
 22    * @since 1.0
 23    */
 24    public class DefaultAssignmentPolicyFactory implements IAssignmentPolicyFactory {
 25    /**
 26    * Return a concrete instance of the <code>IAssignmentPolicy</code>
 27    * interface. The type of the assignment policy can be one of the default
 28    * ones (CYCLIC, INDEXED).
 29    *
 30    * @param type
 31    * String A legal type definition
 32    * @throws UnknownAssignmentPolicyException
 33    * @return IAssignmentPolicy
 34    */
 35  12 public IAssignmentPolicy getInstance(String type) throws UnknownAssignmentPolicyException {
 36  12 IAssignmentPolicy policy = null;
 37  12 if (type.equals(CYCLIC)) {
 38  4 policy = new CyclicAssignmentPolicy();
 39    } else {
 40  8 if (type.equals(INDEXED)) {
 41  8 policy = new IndexedAssignmentPolicy();
 42    } else {
 43  0 String msg = "Unknown IAssignmentPolicy implementation: " + type;
 44  0 UnknownAssignmentPolicyException e = new UnknownAssignmentPolicyException(msg);
 45  0 logger.fatal(msg, e);
 46  0 throw e;
 47    }
 48    }
 49  12 return policy;
 50    }
 51   
 52    /**
 53    * The type for obtaining a <code>CyclicAssignmentPolicy</code>. (<code>cyclic</code>)
 54    */
 55    public final static String CYCLIC = "cyclic";
 56   
 57    /**
 58    * The type for obtaining an <code>IndexedAssignmentPolicy</code>. (<code>indexed</code>)
 59    */
 60    public final static String INDEXED = "indexed";
 61   
 62    private static Logger logger = Logger.getLogger(DefaultAssignmentPolicyFactory.class);
 63    }