View Javadoc
1 /*** 2 * Copyright (c) 2002, CodeStreet LLC. All rights reserved.<p> 3 * Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following 4 * conditions are met:<p> 5 * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 6 * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer 7 * in the documentation and/or other materials provided with the distribution. Neither the name of CodeStreet LLC. nor the 8 * names of its contributors may be used to endorse or promote products derived from this software without specific prior written 9 * permission.<p> 10 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT 11 * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL 12 * THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 13 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 14 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 15 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.<p> 16 */ 17 18 package com.codestreet.messageforge; 19 20 import java.util.Date; 21 22 /*** 23 * Class to represent an enumeration constraint on a date/time message field. 24 * @author Jawaid Hakim. 25 */ 26 public class RFldConstraintDatetimeEnum extends RFldConstraintDatetime 27 { 28 /*** 29 * Constructor. 30 * @param fldName Name of field to which this constraint is bound. 31 * @param enums Enumeration of allowed values. 32 */ 33 public RFldConstraintDatetimeEnum(String fldName, Date[] enums) throws FieldValidationException 34 { 35 if (enums == null) 36 throw new FieldValidationException("NULL enums: " + fldName); 37 38 enums_ = enums; 39 } 40 41 /*** 42 * Get error description. 43 * @param fldName Field name. 44 * @return Error description. 45 */ 46 public String errDesc(String fldName) 47 { 48 return "Field value not in enumeration: " + fldName; 49 } 50 51 /*** 52 * Check if a value satisfies the constraint. 53 * @param val Data to validate. 54 * @return <tt>true</tt> if the data satisfied the 55 * constraint. Otherwise, <tt>false</tt> is returned. 56 */ 57 public boolean isValid(Date val) 58 { 59 if (enums_ == null) 60 return true; 61 else if (val == null) 62 return false; 63 64 for (int i = enums_.length - 1; i >= 0 ; --i) 65 { 66 if (val.equals(enums_[i])) 67 return true; 68 } 69 return false; 70 } 71 72 /*** 73 * Enumeration of allowed values. 74 */ 75 protected Date[] enums_; 76 }

This page was automatically generated by Maven