package CrowdBenchmark.validators;
import org.eclipse.core.databinding.validation.IValidator;
import org.eclipse.core.databinding.validation.ValidationStatus;
import org.eclipse.core.runtime.IStatus;
public class NumericValidator implements IValidator {
@Override
public IStatus validate(Object value) {
if (value == null) {
return ValidationStatus.ok();
}
if (value instanceof String) {
String text = (String) value;
if (text.trim().isEmpty() || text.matches("\\d*")) {
return ValidationStatus.ok();
}
}
if (value instanceof Integer) {
String s = String.valueOf(value);
if (s.matches("\\d*")) {
return ValidationStatus.ok();
}
}
return ValidationStatus.error("Not a number");
}
}