use of org.openforis.idm.model.TaxonAttribute in project collect by openforis.
the class SpeciesService method findByVernacularName.
@Secured("ROLE_ENTRY")
public List<TaxonOccurrenceProxy> findByVernacularName(String taxonomyName, int nodeId, String searchString, int maxResults, TaxonSearchParameters parameters) {
CollectTaxonomy taxonomy = loadTaxonomyByActiveSurvey(taxonomyName);
CollectRecord activeRecord = sessionManager.getActiveRecord();
Node<? extends NodeDefinition> attr = activeRecord.getNodeByInternalId(nodeId);
if (attr instanceof TaxonAttribute) {
List<TaxonOccurrence> list = speciesManager.findByVernacularName(taxonomy, (TaxonAttribute) attr, searchString, maxResults, parameters);
return Proxies.fromList(list, TaxonOccurrenceProxy.class);
} else {
throw new IllegalArgumentException("TaxonAttribute expected, found: " + attr.getClass().getName());
}
}
use of org.openforis.idm.model.TaxonAttribute in project collect by openforis.
the class ValidationMessageBuilder method getMessageKey.
protected String getMessageKey(Attribute<?, ?> attribute, ValidationResult validationResult) {
String key = null;
ValidationRule<?> validator = validationResult.getValidator();
if (validator instanceof CodeValidator) {
key = "validation.codeError";
} else if (validator instanceof CodeParentValidator) {
key = "validation.codeParentError";
} else if (validator instanceof ComparisonCheck) {
key = "validation.comparisonError";
} else if (validator instanceof CoordinateValidator) {
if (attribute.isFilled()) {
key = "validation.coordinateError";
} else {
key = "validation.incompleteCoordinateError";
}
} else if (validator instanceof DateValidator) {
if (attribute.isFilled()) {
key = "validation.dateError";
} else {
key = "validation.incompleteDateError";
}
} else if (validator instanceof DistanceCheck) {
key = "validation.distanceError";
} else if (validator instanceof EntityKeyValidator) {
key = "validation.entityKeyUniquenessError";
} else if (validator instanceof ExternalCodeValidator) {
key = "validation.externalCodeError";
} else if (validator instanceof IntegerRangeValidator) {
key = "validation.integerRangeError";
} else if (validator instanceof PatternCheck) {
key = "validation.patternError";
} else if (validator instanceof RealRangeValidator) {
key = "validation.realRangeError";
} else if (validator instanceof RecordKeyUniquenessValidator) {
key = "validation.recordKeyUniquenessError";
} else if (validator instanceof SpecifiedValidator) {
if (validationResult.getFlag() == ValidationResultFlag.ERROR) {
key = "validation.specifiedError";
} else {
key = "validation.requiredField";
}
} else if (validator instanceof TimeValidator) {
if (attribute.isFilled()) {
key = "validation.timeError";
} else {
key = "validation.incompleteTimeError";
}
} else if (validator instanceof TaxonVernacularLanguageValidator) {
TaxonAttribute taxonAttr = (TaxonAttribute) attribute;
if (StringUtils.isNotBlank(taxonAttr.getVernacularName()) && StringUtils.isBlank(taxonAttr.getLanguageCode())) {
key = "validator.taxon.missingVernacularLanguage";
} else {
key = "validator.taxon.vernacularLanguageNotRequired";
}
} else if (validator instanceof UniquenessCheck) {
key = "validation.uniquenessError";
} else if (validator instanceof NumberValueUnitValidator || validator instanceof NumericRangeUnitValidator) {
key = "validation.unitNotSpecifiedError";
}
return key;
}
Aggregations