⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 paramchecker.java

📁 cwbbs 云网论坛源码
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
                long a = ((Long) leftField.value).longValue();                long b = ((Long) rightField.value).longValue();                if (a < b)                    ;                else {                    isValid = false;                    addMsg("err_need_less", new String[] {leftFieldDesc, "" +rightFieldDesc});                }            } else if (leftField.type.equals(this.TYPE_DOUBLE)) {                double a = ((Double) leftField.value).doubleValue();                double b = ((Double) rightField.value).doubleValue();                if (a < b)                    ;                else {                    isValid = false;                    addMsg("err_need_less", new String[] {leftFieldDesc, "" +rightFieldDesc});                }            } else if (leftField.type.equals(this.TYPE_FLOAT)) {                float a = ((Float) leftField.value).floatValue();                float b = ((Float) rightField.value).floatValue();                if (a < b)                    ;                else {                    isValid = false;                    addMsg("err_need_less", new String[] {leftFieldDesc, "" +rightFieldDesc});                }            }        } else if (token.equals("=")) {            if (leftField.type.equals(this.TYPE_INT)) {                int a = ((Integer) leftField.value).intValue();                int b = ((Integer) rightField.value).intValue();                if (a == b)                    ;                else {                    isValid = false;                    addMsg("err_need_equal", new String[] {leftFieldDesc, "" +rightFieldDesc});                }            } else if (leftField.type.equals(this.TYPE_DATE)) {                Date a = (Date) leftField.value;                Date b = (Date) rightField.value;                if (DateUtil.compare(a, b) == 0)                    ;                else {                    isValid = false;                    addMsg("err_need_equal", new String[] {leftFieldDesc, "" +rightFieldDesc});                }            } else if (leftField.type.equals(this.TYPE_LONG)) {                long a = ((Long) leftField.value).longValue();                long b = ((Long) rightField.value).longValue();                if (a == b)                    ;                else {                    isValid = false;                    addMsg("err_need_equal", new String[] {leftFieldDesc, "" +rightFieldDesc});                }            } else if (leftField.type.equals(this.TYPE_BOOLEAN)) {                boolean a = ((Boolean) leftField.value).booleanValue();                boolean b = ((Boolean) rightField.value).booleanValue();                if (a == b)                    ;                else {                    isValid = false;                    addMsg("err_need_equal", new String[] {leftFieldDesc, "" +rightFieldDesc});                }            } else if (leftField.type.equals(this.TYPE_STRING)) {                String a = (String) leftField.value;                String b = (String) rightField.value;                if (a.equals(b))                    ;                else {                    isValid = false;                    addMsg("err_need_equal", new String[] {leftFieldDesc, "" +rightFieldDesc});                }            } else if (leftField.type.equals(this.TYPE_DOUBLE)) {                double a = ((Double) leftField.value).doubleValue();                double b = ((Double) rightField.value).doubleValue();                if (a == b)                    ;                else {                    isValid = false;                    addMsg("err_need_equal", new String[] {leftFieldDesc, "" +rightFieldDesc});                }            } else if (leftField.type.equals(this.TYPE_FLOAT)) {                float a = ((Float) leftField.value).floatValue();                float b = ((Float) rightField.value).floatValue();                if (a == b)                    ;                else {                    isValid = false;                    addMsg("err_need_equal", new String[] {leftFieldDesc, "" +rightFieldDesc});                }            }        } else {            isValid = false;            addMsg("err_format", new String[] {rulePairStr});        }        return isValid;    }        public void checkUnionCond(Vector rules) throws CheckErrException {        int len = rules.size();                boolean isValid = true;        for (int i = 0; i < len; i++) {            isValid = true;            String rule = (String) rules.get(i);            rule = rule.trim();            if (rule.indexOf(">=")!=-1) {                isValid = this.checkUnionCond(rule, ">=");            } else if (rule.indexOf("<=")!=-1) {                isValid = this.checkUnionCond(rule, "<=");            } else if (rule.indexOf(">")!=-1) {                isValid = this.checkUnionCond(rule, ">");            } else if (rule.indexOf("<")!=-1) {                isValid = this.checkUnionCond(rule, "<");            } else if (rule.indexOf("=")!=-1) {                isValid = this.checkUnionCond(rule, "=");            } else {                addMsg("err_format", new String[] {rule});                if (onErrorExit)                    break;            }            if (!isValid) {                if (onErrorExit)                    break;            }        }    }    public void doCheck(FormRule fr) throws CheckErrException, ErrMsgException {        if (fr==null)            throw new ErrMsgException(LoadString("err_formrule_none", new String[] {}));        onErrorExit = fr.isOnErrorExit();        formResource = fr.getRes();        check(fr.getRules());        checkUnionCond(fr.getUnionRules());        if (msgs.size()!=0)            throw new ErrMsgException(getMessage(false));    }    public void check(Vector rules) throws CheckErrException, ErrMsgException {        Iterator ir = rules.iterator();        while (ir.hasNext()) {            String rule = (String) ir.next();            checkField(rule);        }    }    public void checkField(String rule) throws CheckErrException, ErrMsgException {        rule = rule.trim();        if (rule.startsWith(this.TYPE_STRING)) {            checkFieldString(rule);        } else if (rule.startsWith(this.TYPE_INT)) {            checkFieldInt(rule);        } else if (rule.startsWith(this.TYPE_DATE)) {            checkFieldDate(rule);        } else if (rule.startsWith(this.TYPE_STRING_ARRAY)) {            checkFieldStringArray(rule);        } else if (rule.startsWith(this.TYPE_INT_ARRAY)) {            checkFieldIntArray(rule);        } else if (rule.startsWith(this.TYPE_LONG)) {            checkFieldLong(rule);        } else if (rule.startsWith(this.TYPE_BOOLEAN)) {            checkFieldBoolean(rule);        }        else if (rule.startsWith(this.TYPE_DOUBLE)) {            checkFieldDouble(rule);        }        else if (rule.startsWith(this.TYPE_FLOAT)) {            checkFieldFloat(rule);        }        else            throw new ErrMsgException(LoadString("err_type", new String[] {rule}));    }    public String parseFieldDesc(String desc) {                if (formResource==null || formResource.equals(""))            return desc;        if (!desc.startsWith("#"))            return desc;        else {            String key = desc.substring(1, desc.length()).trim();            return SkinUtil.LoadString(request, formResource, key);        }    }    public void checkFieldIntArray(String ruleStr) throws CheckErrException  {        String fieldName = "";        String[] rule = split(ruleStr);        if (rule == null) {            addMsg("err_format", new String[] {ruleStr});            return;        }        int len = rule.length;        if (len < 4) {            addMsg("err_format", new String[] {ruleStr});            return;        }        fieldName = rule[1];        String fieldDesc = parseFieldDesc(rule[2]);        String[] values = getFieldValues(fieldName);        int[] intValues = null;        len = 0;        if (values!=null) {            len = values.length;            intValues = new int[len];        }        for (int i=0; i<len; i++) {            try {                intValues[i] = Integer.parseInt(values[i]);            }            catch (Exception e) {                addMsg("err_not_num", new String[] {fieldDesc});                break;            }        }        Field f = new Field(fieldName, fieldDesc, intValues, this.TYPE_INT_ARRAY);        fields.put(fieldName, f);        String NULL = rule[3];        if (values == null) {            if (NULL.equalsIgnoreCase("not")) {                addMsg("err_want", new String[] {fieldDesc});                return;            }        }    }    public void checkFieldStringArray(String ruleStr) throws CheckErrException  {        String fieldName = "";        String[] rule = split(ruleStr);        if (rule == null) {            addMsg("err_format", new String[] {ruleStr});            return;        }        int len = rule.length;        if (len < 4) {            addMsg("err_format", new String[] {ruleStr});            return;        }        fieldName = rule[1];        String fieldDesc = parseFieldDesc(rule[2]);        String[] values = getFieldValues(fieldName);        Field f = new Field(fieldName, fieldDesc, values, this.TYPE_STRING_ARRAY);        fields.put(fieldName, f);        String NULL = rule[3];        if (values == null) {            if (NULL.equalsIgnoreCase("not")) {                addMsg("err_want", new String[] {fieldDesc});            }            else if (NULL.equals("allow"))                ;            else {                addMsg("err_format", new String[] {NULL});            }        }    }    public void checkFieldBoolean(String ruleStr) throws CheckErrException  {        String fieldName = "";        String[] rule = split(ruleStr);        if (rule == null) {            addMsg("err_format", new String[] {ruleStr});            return;        }        int len = rule.length;        if (len < 4) {            addMsg("err_format", new String[] {ruleStr});            return;        }        fieldName = rule[1];        String value = getFieldValue(fieldName);        checkFieldBoolean(ruleStr, value);    }    public void checkFieldBoolean(String ruleStr, String value) throws CheckErrException {        String fieldName = "";        String type = "";        String fieldDesc = "";        String[] rule = split(ruleStr);        if (rule == null) {            addMsg("err_format", new String[] {ruleStr});            return;        }        int len = rule.length;        if (len < 4) {            addMsg("err_format", new String[] {ruleStr});            return;        }        type = rule[0];        fieldName = rule[1];        fieldDesc = parseFieldDesc(rule[2]);        String NULL = rule[3];        if (value == null) {            if (NULL.equalsIgnoreCase("not")) {                addMsg("err_want", new String[] {fieldDesc});                return;            }            else if (NULL.equals("allow"))                ;            else {                value = NULL;            }        }        Boolean bu;        if (value!=null && value.equals("true") || value.equals("1"))            bu = new Boolean(true);        else            bu = new Boolean(false);        boolean isValid = true;                Field f = new Field(fieldName, fieldDesc, bu, type);        fields.put(fieldName, f);                        if (!isValid) {            if (onErrorExit) {                throw new CheckErrException(msgs);            }        }    }    public void checkFieldDate(String ruleStr) throws CheckErrException  {        String fieldName = "";        String[] rule = split(ruleStr);        if (rule == null) {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -