public Field()

in src/java/org/apache/fulcrum/intake/model/Field.java [181:242]


    public Field(XmlField field, Group group) throws IntakeException
    {
    	enableLogging(field.getLogger());
        this.group = group;
        key = field.getKey();
        name = field.getName();
        displayName = field.getDisplayName();
        displaySize = field.getDisplaySize();
        isMultiValued = field.isMultiValued();
        ruleMap = field.getRuleMap();

        try
        {
            setDefaultValue(field.getDefaultValue());
        }
        catch (RuntimeException e)
        {
            log.error("Could not set default value of " +
                    this.getDisplayName() + " to "
                    + field.getDefaultValue(), e);
        }

        try
        {
            setEmptyValue(field.getEmptyValue());
        }
        catch (RuntimeException e)
        {
            log.error("Could not set empty value of " +
                    this.getDisplayName() + " to "
                    + field.getEmptyValue(), e);
        }

        this.validatorClassName = field.getValidator();
        if (validatorClassName == null)
        {
            validatorClassName = getDefaultValidator();
        }
        else if (validatorClassName.indexOf('.') == -1)
        {
            validatorClassName = defaultValidatorPackage + validatorClassName;
        }

        // field may have been declared as always required in the xml spec
        Rule reqRule = field.getRuleMap().get(Validator.REQUIRED_RULE_NAME);
        if (reqRule != null)
        {
            alwaysRequired = Boolean.valueOf(reqRule.getValue()).booleanValue();
            ifRequiredMessage = reqRule.getMessage();
        }

        Rule maxLengthRule = field.getRuleMap().get(Validator.MAX_LENGTH_RULE_NAME);
        if (maxLengthRule != null)
        {
            maxSize = maxLengthRule.getValue();
        }

        // map the getter and setter methods
        mapToObject = field.getMapToObject();
        mapToProperty = field.getMapToProperty();
        valArray = new Object[1];
    }