package org.freeplane.core.resources.components;
import java.util.ArrayList;
import java.util.Properties;
public interface IValidator {
public static final class ValidationResult {
private ArrayList<String> warnings = new ArrayList<String>(0);
private ArrayList<String> errors = new ArrayList<String>(0);
public boolean isValid() {
return errors.isEmpty();
}
public boolean hasWarnings() {
return !warnings.isEmpty();
}
public void addError(String error) {
errors.add(error);
}
public void addWarning(String warning) {
warnings.add(warning);
}
public ArrayList<String> getWarnings() {
return warnings;
}
public ArrayList<String> getErrors() {
return errors;
}
@Override
public String toString() {
return "Validation errors: " + errors + ", warnings: " + warnings;
}
public void add(ValidationResult result) {
warnings.addAll(result.warnings);
errors.addAll(result.errors);
}
}
/** validates properties. Note that these may differ from the state that the ResourceController has. */
ValidationResult validate(Properties properties);
}