Coverage Report - pt.digitalis.dif.dem.objects.parameters.rules.IParameterRule
 
Classes in this File Line Coverage Branch Coverage Complexity
IParameterRule
N/A
N/A
1
 
 1  
 /**
 2  
  * 2008, Digitalis Informatica. All rights reserved. Distribuicao e Gestao de Informatica, Lda. Estrada de Paco de Arcos
 3  
  * num.9 - Piso -1 2780-666 Paco de Arcos Telefone: (351) 21 4408990 Fax: (351) 21 4408999 http://www.digitalis.pt
 4  
  */
 5  
 
 6  
 package pt.digitalis.dif.dem.objects.parameters.rules;
 7  
 
 8  
 import java.util.List;
 9  
 
 10  
 import pt.digitalis.dif.dem.interfaces.IStageInstance;
 11  
 import pt.digitalis.dif.dem.objects.parameters.types.AbstractParameter;
 12  
 import pt.digitalis.dif.exception.objects.ParameterException;
 13  
 
 14  
 /**
 15  
  * A parameter rule object
 16  
  * 
 17  
  * @author Pedro Viegas <a href="mailto:pviegas@digitalis.pt">pviegas@digitalis.pt</a><br/>
 18  
  * @param <T>
 19  
  *            generic type of the parameter
 20  
  * @created Mar 31, 2009
 21  
  */
 22  
 public interface IParameterRule<T> {
 23  
 
 24  
     /**
 25  
      * Inspector for the 'action' attribute.
 26  
      * 
 27  
      * @return the action value
 28  
      */
 29  
     public ParameterRuleAction getAction();
 30  
 
 31  
     /**
 32  
      * Inspector for the 'descriptionEndValue' attribute.
 33  
      * 
 34  
      * @return the descriptionEndValue value
 35  
      */
 36  
     public String getDescriptionEndValue();
 37  
 
 38  
     /**
 39  
      * Inspector for the 'descriptionStartValue' attribute.
 40  
      * 
 41  
      * @return the descriptionStartValue value
 42  
      */
 43  
     public String getDescriptionStartValue();
 44  
 
 45  
     /**
 46  
      * Inspector for the 'descriptionValue' attribute.
 47  
      * 
 48  
      * @return the descriptionValue value
 49  
      */
 50  
     public String getDescriptionValue();
 51  
 
 52  
     /**
 53  
      * Inspector for the 'endValue' attribute.
 54  
      * 
 55  
      * @return the endValue value
 56  
      */
 57  
     public String getEndValue();
 58  
 
 59  
     /**
 60  
      * Inspector for the 'parameters' attribute.
 61  
      * 
 62  
      * @return the parameters value
 63  
      */
 64  
     public List<String> getParameters();
 65  
 
 66  
     /**
 67  
      * Inspector for the 'startValue' attribute.
 68  
      * 
 69  
      * @return the startValue value
 70  
      */
 71  
     public String getStartValue();
 72  
 
 73  
     /**
 74  
      * Gets the validation result for the present parameter
 75  
      * 
 76  
      * @param stage
 77  
      *            the current stage
 78  
      * @param value
 79  
      *            the value to validate
 80  
      * @param initializationInProgress
 81  
      *            T if called within the dif parameter initialization
 82  
      * @param parameter
 83  
      *            the parameter for validation
 84  
      * @return the validation rule validation result
 85  
      * @throws ParameterException
 86  
      *             if the parameter does not exist
 87  
      */
 88  
     public ParameterRuleResult getValidationResult(IStageInstance stage, T value, boolean initializationInProgress,
 89  
             AbstractParameter<T> parameter) throws ParameterException;
 90  
 
 91  
     /**
 92  
      * Inspector for the 'value' attribute.
 93  
      * 
 94  
      * @return the value value
 95  
      */
 96  
     public String getValue();
 97  
 
 98  
     /**
 99  
      * Initializer
 100  
      * 
 101  
      * @param parameterID
 102  
      *            the rule parameter ID
 103  
      * @param parameters
 104  
      *            the list of parameters relevant for the given rule (besides the current parameter)
 105  
      * @param action
 106  
      *            the action to perform according to the rule activation (valid or invalid)
 107  
      * @param value
 108  
      *            the value for comparison
 109  
      * @param first
 110  
      *            the first value for interval comparison
 111  
      * @param last
 112  
      *            the last value for interval comparison
 113  
      * @return the initialized object
 114  
      */
 115  
     public AbstractParameterRule<T> init(String parameterID, String parameters, ParameterRuleAction action,
 116  
             String value, String first, String last);
 117  
 
 118  
     /**
 119  
      * Modifier for the 'descriptionEndValue' attribute.
 120  
      * 
 121  
      * @param descriptionEndValue
 122  
      *            the new descriptionEndValue value to set
 123  
      */
 124  
     public void setDescriptionEndValue(String descriptionEndValue);
 125  
 
 126  
     /**
 127  
      * Modifier for the 'descriptionStartValue' attribute.
 128  
      * 
 129  
      * @param descriptionStartValue
 130  
      *            the new descriptionStartValue value to set
 131  
      */
 132  
     public void setDescriptionStartValue(String descriptionStartValue);
 133  
 
 134  
     /**
 135  
      * Modifier for the 'descriptionValue' attribute.
 136  
      * 
 137  
      * @param descriptionValue
 138  
      *            the new descriptionValue value to set
 139  
      */
 140  
     public void setDescriptionValue(String descriptionValue);
 141  
 
 142  
     /**
 143  
      * Modifier for the 'endValue' attribute.
 144  
      * 
 145  
      * @param endValue
 146  
      *            the new endValue value to set
 147  
      * @return the updated parameter rule instance
 148  
      */
 149  
     public AbstractParameterRule<T> setEndValue(String endValue);
 150  
 
 151  
     /**
 152  
      * Modifier for the 'startValue' attribute.
 153  
      * 
 154  
      * @param startValue
 155  
      *            the new startValue value to set
 156  
      * @return the updated parameter rule instance
 157  
      */
 158  
     public AbstractParameterRule<T> setStartValue(String startValue);
 159  
 
 160  
     /**
 161  
      * Modifier for the 'value' attribute.
 162  
      * 
 163  
      * @param value
 164  
      *            the new value value to set
 165  
      * @return the updated parameter rule instance
 166  
      */
 167  
     public AbstractParameterRule<T> setValue(String value);
 168  
 }