//
//Author : t.wood
//Copyright : (c) Resilient Networks plc 2012 - All Rights Reserved
//
package com.lexicalscope.jewel.cli.validation;
import com.lexicalscope.fluent.map.PutVeto;
import com.lexicalscope.jewel.cli.ValidationErrorBuilder;
import com.lexicalscope.jewel.cli.specification.ParsedOptionSpecification;
import java.util.List;
public class ReportWrongFormatValues implements PutVeto<ParsedOptionSpecification, List<String>>
{
private final ValidationErrorBuilder validationErrorBuilder;
public ReportWrongFormatValues(final ValidationErrorBuilder validationErrorBuilder)
{
this.validationErrorBuilder = validationErrorBuilder;
}
@Override
public boolean allow(final ParsedOptionSpecification key, final List<String> values)
{
boolean result = true;
for (final String value : values)
{
if (!key.allowedValue(value))
{
validationErrorBuilder.patternMismatch(key, value);
result = false;
}
}
return result;
}
}