public final class TLcdValidationResult extends Object
A TLcdValidationResult
is used to contain the result of a validation operation.
It contain the severity of the validation result (see TLcdValidationResult.Severity
) and the corresponding warning and error messages.
The benefit of using this class is that is collects all warnings and errors, instead of relying on a single message as a result.
Usage:
public TLcdValidationResult validateModelMetaDataForWcsService(TLcdModelMetadata aModelMetadata) {
TLcdValidationResult validationResult = TLcdValidationResult.ok();
if (!aModelMetadata.getDataSource().isPresent()) {
validationResult.addError("The model metadata is empty");
}
if (!aModelMetadata.getDataCategories().contains(TLcdModelMetadata.DataCategory.RASTER)) {
validationResult.addError("The model metadata does not contain raster data.");
}
if (aModelMetadata.getDataCategories().size() > 1) {
validationResult.addError("The model metadata contains mixed data. Only metadata containing nothing but raster data is supported.");
}
List<? extends ILcdDimension<?>> dimensions = aModelMetadata.getDimensions();
if (dimensions.size() > 1
|| (dimensions.size() == 1 && dimensions.get(0).getValues().size() > 1)) {
validationResult.addWarning("The model metadata contains data with multiple dimensions and values. "
+ "This is not supported and only the first dimension value will be used.");
}
return validationResult;
}
Modifier and Type | Class and Description |
---|---|
static class |
TLcdValidationResult.Severity
Describes the different severity levels of a validation result.
|
Modifier and Type | Method and Description |
---|---|
void |
addAll(TLcdValidationResult aValidationResult)
Adds all warnings and errors from
aValidationResult to this validation result. |
void |
addError(String aMessage)
Adds an error message to this validation result.
|
void |
addWarning(String aMessage)
Adds a warning message to this validation result.
|
static TLcdValidationResult |
error(String aErrorMessage)
Creates a new validation result object with an error associated to it.
|
List<String> |
getErrorMessages()
Returns the list of error messages associated with this validation result.
|
TLcdValidationResult.Severity |
getSeverity()
Returns the severity of this validation result.
|
List<String> |
getWarningMessages()
Returns the list of warning messages associated with this validation result.
|
TLcdValidationResult |
merge(TLcdValidationResult aValidationResult)
Merges this validation result with another validation result.
|
static TLcdValidationResult |
ok()
Creates a new validation result object without any warnings or errors associated to it.
|
String |
toString() |
static TLcdValidationResult |
warning(String aWarningMessage)
Creates a new validation result object with a warning associated to it.
|
public static TLcdValidationResult ok()
TLcdValidationResult.Severity.OK
.public static TLcdValidationResult warning(String aWarningMessage)
TLcdValidationResult.Severity.WARNING
.aWarningMessage
- the warning message to associate with the new validation resultpublic static TLcdValidationResult error(String aErrorMessage)
TLcdValidationResult.Severity.ERROR
.aErrorMessage
- the error message to associate with the new validation resultpublic TLcdValidationResult.Severity getSeverity()
TLcdValidationResult.Severity
public void addWarning(String aMessage)
TLcdValidationResult.Severity.OK
, it will be updated to TLcdValidationResult.Severity.WARNING
.aMessage
- the warning message to addpublic List<String> getWarningMessages()
addWarning(String)
instead.
If the current severity is TLcdValidationResult.Severity.OK
, the list will be empty.public void addError(String aMessage)
TLcdValidationResult.Severity.OK
or TLcdValidationResult.Severity.WARNING
, it will be updated to TLcdValidationResult.Severity.ERROR
.aMessage
- the error message to addpublic List<String> getErrorMessages()
addError(String)
instead.
If the current severity is TLcdValidationResult.Severity.OK
or TLcdValidationResult.Severity.WARNING
, the list will be empty.public void addAll(TLcdValidationResult aValidationResult)
Adds all warnings and errors from aValidationResult
to this validation result.
The severity of this validation result is updated if the severity of aValidationResult
is more severe than this validation result.
For example, adding all messages from a validation result with severity TLcdValidationResult.Severity.ERROR
to a validation result with severity TLcdValidationResult.Severity.WARNING
will result in the severity of the validation result being updated from TLcdValidationResult.Severity.WARNING
to TLcdValidationResult.Severity.ERROR
.
aValidationResult
- the validation result to add warnings and errors frompublic TLcdValidationResult merge(TLcdValidationResult aValidationResult)
Merges this validation result with another validation result.
A new validation result is returned that contains the warnings and errors from both this validation result and aValidationResult
.
The severity of the resulting merged validation result will be the most severe value of both validation results.
For example, merging a validation result with severity TLcdValidationResult.Severity.WARNING
with a validation result with severity TLcdValidationResult.Severity.ERROR
will result in a validation result with severity TLcdValidationResult.Severity.ERROR
.
aValidationResult
- the validation result to merge with