if((getPrecision() < getType().getMinPrecision()) || (getPrecision() > getType().getMaxPrecision())) {
if(!getType().isValidPrecision(getPrecision())) {
  public void validate() {    if(getType() == null) {      throw new IllegalArgumentException("must have type");    }    if((getName() == null) || (getName().trim().length() == 0)) {      throw new IllegalArgumentException("must have valid name");    }    if(isVariableLength() != getType().isVariableLength()) {      throw new IllegalArgumentException("invalid variable length setting");    }    if(!isVariableLength()) {      if(getLength() != getType().getFixedSize()) {        throw new IllegalArgumentException("invalid fixed length size");      }    } else if(!getType().isLongValue()) {      if((getLength() < getType().getMinSize()) ||         (getLength() > getType().getMaxSize())) {        throw new IllegalArgumentException("var length out of range");      }    }    if(getType().getHasScalePrecision()) {      if((getScale() < getType().getMinScale()) ||         (getScale() > getType().getMaxScale())) {        throw new IllegalArgumentException(            "Scale must be from " + getType().getMinScale() + " to " +            getType().getMaxScale() + " inclusive");      }      if((getPrecision() < getType().getMinPrecision()) ||         (getPrecision() > getType().getMaxPrecision())) {        throw new IllegalArgumentException(            "Precision must be from " + getType().getMinPrecision() + " to " +            getType().getMaxPrecision() + " inclusive");      }    }  }