Search in sources :

Example 1 with TypeFactory

use of com.axway.ats.core.validation.types.TypeFactory in project ats-framework by Axway.

the class ActionMethod method createBaseTypes.

/** Creates as much validation types as needed to validate the input data */
private List<BaseType> createBaseTypes(ValidationType type, String paramName, Object values, Object[] args) {
    List<BaseType> typeValidators = new ArrayList<BaseType>();
    // of them separately to the list
    if ((values != null) && values.getClass().isArray()) {
        for (int i = 0; i < Array.getLength(values); i++) {
            Object value = Array.get(values, i);
            TypeFactory factory = TypeFactory.getInstance();
            BaseType baseType = factory.createValidationType(type, paramName, value, args);
            typeValidators.add(baseType);
        }
    // otherwise just add the single validation type
    } else {
        TypeFactory factory = TypeFactory.getInstance();
        BaseType baseType = factory.createValidationType(type, paramName, values, args);
        typeValidators.add(baseType);
    }
    return typeValidators;
}
Also used : BaseType(com.axway.ats.core.validation.types.BaseType) ArrayList(java.util.ArrayList) TypeFactory(com.axway.ats.core.validation.types.TypeFactory)

Example 2 with TypeFactory

use of com.axway.ats.core.validation.types.TypeFactory in project ats-framework by Axway.

the class Validator method validate.

/**
     * Validates the value of an object of a certain {@link ValidationType}
     * Returns true if the object is properly validated.<BR>
     * <BR>
     * This method allows the passing of additional arguments (for
     * validation types who need them).
     *
     * @param type the specific object's {@link ValidationType}
     * @param value the value of the object
     * @param args an {@link Object} array containing the arguments
     * @return true if the validation was properly validated
     * @see ValidationType
     */
public boolean validate(ValidationType type, Object value, Object[] args) {
    TypeFactory factory = TypeFactory.getInstance();
    BaseType baseType;
    if (value != null) {
        if (value.getClass().isArray()) {
            for (int i = 0; i < Array.getLength(value); i++) {
                baseType = factory.createValidationType(type, Array.get(value, i), args);
                if (!validate(baseType)) {
                    return false;
                }
            }
        } else {
            baseType = factory.createValidationType(type, value, args);
            if (!validate(baseType)) {
                return false;
            }
        }
        return true;
    }
    return false;
}
Also used : BaseType(com.axway.ats.core.validation.types.BaseType) TypeFactory(com.axway.ats.core.validation.types.TypeFactory)

Example 3 with TypeFactory

use of com.axway.ats.core.validation.types.TypeFactory in project ats-framework by Axway.

the class Validator method createBaseTypes.

/** Creates as much validation types as needed to validate the input data */
private void createBaseTypes(ValidationType type, String paramName, Object values, Object[] args) {
    // of them separatly to the list
    if ((values != null) && values.getClass().isArray()) {
        for (int i = 0; i < Array.getLength(values); i++) {
            Object value = Array.get(values, i);
            TypeFactory factory = TypeFactory.getInstance();
            BaseType baseType = factory.createValidationType(type, paramName, value, args);
            this.typeValidators.add(baseType);
        }
    // otherwise just add the single validation type
    } else {
        TypeFactory factory = TypeFactory.getInstance();
        String message = new StringBuilder().append("Validating if parameter with the name of [").append(paramName).append("] and value [").append(values).append("] is by the type of [").append(type).append("]").toString();
        log.debug(message);
        BaseType baseType = factory.createValidationType(type, paramName, values, args);
        this.typeValidators.add(baseType);
    }
}
Also used : BaseType(com.axway.ats.core.validation.types.BaseType) TypeFactory(com.axway.ats.core.validation.types.TypeFactory)

Aggregations

BaseType (com.axway.ats.core.validation.types.BaseType)3 TypeFactory (com.axway.ats.core.validation.types.TypeFactory)3 ArrayList (java.util.ArrayList)1