package io.monokkel.core;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Maps;
import io.monokkel.core.utils.MapTransformation;
import io.monokkel.core.utils.ValidatorFunction;
import io.monokkel.domain.PageData;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.Map;
import static io.monokkel.core.utils.MapTransformation.transformAgainstMap;
/**
* Created by tarjei on 19/09/14.
*/
public class DataValidator {
public static Logger log = LoggerFactory.getLogger(DataValidator.class);
private Map<String, Object> validatorExpressions;
public DataValidator(Map<String, Object> validatorExpressions) {
this.validatorExpressions = validatorExpressions;
}
@SuppressWarnings("unchecked")
public Map<String, Object> validate(final PageData pageData){
final Map transformed = pageData.getTransformed();
return transformAgainstMap(transformed, validatorExpressions, new ValidatorFunction());
}
}