simpleType derived from Number1 with constraints

Schema

    <simpleType name="Number2">
        <restriction base="tns:Number1">
            <totalDigits value="5"/>
            <fractionDigits value="3"/>
        </restriction>
    </simpleType>

Number2 Bean

// Generated from examples.xsd
// On Wed Jun 09 11:15:17 EDT 2004
                                                                           
package examples_olddb;
                                                                           
public class Number2
    extends examples_olddb.Number1
 implements java.io.Serializable
{
    public Number2(java.lang.String value) {
    |   super(value);
    |   if (value == null) throw new IllegalArgumentException("can not instantiate simple type with null value");
    |   setValue(getValue());
    }
                                                                           
    public Number2(java.math.BigDecimal value) {
    |   super(value);
    |   if (value == null) throw new IllegalArgumentException("can not instantiate simple type with null value");
    |   setValue(value);
    }
                                                                           
    public void setValue(java.math.BigDecimal val) {
    |   if (val == null) throw new IllegalArgumentException("can not set null value for simple content");
    |   validate(java.lang.String.valueOf(val));
    |   super.setValue(val);
    }
                                                                           
    private void validate(java.lang.String val) {
    |   //totalDigits constraint check
    |   int tdLen = 5;
    |   int tdInd = val.indexOf(".");
    |   if (tdInd != -1) tdLen++;
    |   if (val.charAt(0) == '-') tdLen++;
    |   if (val.length() > tdLen) throw new IllegalArgumentException("Invalid content as per totalDigits constraint:"+val);
    |                                                                      
    |   //fractionDigits constraint check
    |   int fractionStart = val.indexOf(".");
    |   if (fractionStart != -1)
    |       if ((val.length() - fractionStart -1) > 3)
    |           throw new IllegalArgumentException(
    |               "Invalid content as per fractionDigits constraint!");
    |                                                                      
    }
                                                                           
                                                                           
    private void validate(java.math.BigDecimal val) {
    }
                                                                           
}


Copyright © 2003, 2004 Novell, Inc. All rights reserved. Copyright © 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.