diff options
-rw-r--r-- | src/main/java/org/onap/crud/service/CrudRestService.java | 3 | ||||
-rw-r--r-- | src/main/java/org/onap/schema/OxmModelValidator.java | 10 |
2 files changed, 8 insertions, 5 deletions
diff --git a/src/main/java/org/onap/crud/service/CrudRestService.java b/src/main/java/org/onap/crud/service/CrudRestService.java index 2068709..895b459 100644 --- a/src/main/java/org/onap/crud/service/CrudRestService.java +++ b/src/main/java/org/onap/crud/service/CrudRestService.java @@ -133,9 +133,6 @@ public class CrudRestService { String propertiesKey = CrudProperties.get(CrudServiceConstants.CRD_COLLECTION_PROPERTIES_KEY); Map<String, String> filter = new HashMap<String, String>(); - for (Map.Entry<String, List<String>> e : uriInfo.getQueryParameters().entrySet()) { - filter.put(e.getKey(), e.getValue().get(0)); - } for (Map.Entry<String, List<String>> e : uriInfo.getQueryParameters().entrySet()) { if (!e.getKey().equals(propertiesKey)) { diff --git a/src/main/java/org/onap/schema/OxmModelValidator.java b/src/main/java/org/onap/schema/OxmModelValidator.java index 6260f83..ae3e18b 100644 --- a/src/main/java/org/onap/schema/OxmModelValidator.java +++ b/src/main/java/org/onap/schema/OxmModelValidator.java @@ -87,12 +87,18 @@ public class OxmModelValidator { } final DynamicType modelObjectType = jaxbContext.getDynamicType( CaseFormat.LOWER_CAMEL.to(CaseFormat.UPPER_CAMEL, CaseFormat.LOWER_HYPHEN.to(CaseFormat.UPPER_CAMEL, type))); + final DynamicType reservedObjectType = jaxbContext.getDynamicType("ReservedPropNames"); for (String key : filter.keySet()) { String keyJavaName = CaseFormat.LOWER_HYPHEN.to(CaseFormat.LOWER_CAMEL, key); - if (modelObjectType.getDescriptor().getMappingForAttributeName(keyJavaName) != null) { + DatabaseMapping mapping = modelObjectType.getDescriptor().getMappingForAttributeName(keyJavaName); + + // Try both the model for the specified type and the reserved properties for our key + if (mapping == null) { + mapping = reservedObjectType.getDescriptor().getMappingForAttributeName(keyJavaName); + } + if (mapping != null) { try { - DatabaseMapping mapping = modelObjectType.getDescriptor().getMappingForAttributeName(keyJavaName); Object value = CrudServiceUtil.validateFieldType(filter.get(key), mapping.getField().getType()); result.put(key, value); } catch (Exception ex) { |