EdmPrimitiveTypeException, XMLStreamException { List<String> parameterNames = edmAction.getParameterNames(); if (edmAction.isBound()) {
EdmPrimitiveTypeException, XMLStreamException { List<String> parameterNames = edmAction.getParameterNames(); if (edmAction.isBound()) {
private Map<String, Parameter> consumeParameters(final EdmAction edmAction, final ObjectNode node) throws DeserializerException { List<String> parameterNames = edmAction.getParameterNames(); if (edmAction.isBound()) { // The binding parameter must not occur in the payload. parameterNames = parameterNames.subList(1, parameterNames.size()); } Map<String, Parameter> parameters = new LinkedHashMap<String, Parameter>(); for (final String paramName : parameterNames) { final EdmParameter edmParameter = edmAction.getParameter(paramName); switch (edmParameter.getType().getKind()) { case PRIMITIVE: case DEFINITION: case ENUM: case COMPLEX: case ENTITY: Parameter parameter = createParameter(node.get(paramName), paramName, edmParameter); parameters.put(paramName, parameter); node.remove(paramName); break; default: throw new DeserializerException( "Invalid type kind " + edmParameter.getType().getKind() + " for action parameter: " + paramName, DeserializerException.MessageKeys.INVALID_ACTION_PARAMETER_TYPE, paramName); } } return parameters; }
private Map<String, Parameter> consumeParameters(final EdmAction edmAction, final ObjectNode node) throws DeserializerException { List<String> parameterNames = edmAction.getParameterNames(); if (edmAction.isBound()) { // The binding parameter must not occur in the payload. parameterNames = parameterNames.subList(1, parameterNames.size()); } Map<String, Parameter> parameters = new LinkedHashMap<String, Parameter>(); for (final String paramName : parameterNames) { final EdmParameter edmParameter = edmAction.getParameter(paramName); switch (edmParameter.getType().getKind()) { case PRIMITIVE: case DEFINITION: case ENUM: case COMPLEX: case ENTITY: Parameter parameter = createParameter(node.get(paramName), paramName, edmParameter); parameters.put(paramName, parameter); node.remove(paramName); break; default: throw new DeserializerException( "Invalid type kind " + edmParameter.getType().getKind() + " for action parameter: " + paramName, DeserializerException.MessageKeys.INVALID_ACTION_PARAMETER_TYPE, paramName); } } return parameters; }
throws DeserializerException { Map<String, Parameter> parameters = new LinkedHashMap<String, Parameter>(); if (edmAction.getParameterNames() == null || edmAction.getParameterNames().isEmpty() || edmAction.isBound() && edmAction.getParameterNames().size() == 1) { return DeserializerResultImpl.with().actionParameters(parameters) .build(); for (final String param : edmAction.getParameterNames()) { Parameter parameter = parameters.get(param); if (parameter == null) {
throws DeserializerException { Map<String, Parameter> parameters = new LinkedHashMap<String, Parameter>(); if (edmAction.getParameterNames() == null || edmAction.getParameterNames().isEmpty() || edmAction.isBound() && edmAction.getParameterNames().size() == 1) { return DeserializerResultImpl.with().actionParameters(parameters) .build(); for (final String param : edmAction.getParameterNames()) { Parameter parameter = parameters.get(param); if (parameter == null) {
private Map<String, Parameter> consumeParameters(final EdmAction edmAction, final ObjectNode node) throws DeserializerException { List<String> parameterNames = edmAction.getParameterNames(); if (edmAction.isBound()) { // The binding parameter must not occur in the payload. parameterNames = parameterNames.subList(1, parameterNames.size()); } Map<String, Parameter> parameters = new LinkedHashMap<String, Parameter>(); for (final String paramName : parameterNames) { final EdmParameter edmParameter = edmAction.getParameter(paramName); switch (edmParameter.getType().getKind()) { case PRIMITIVE: case DEFINITION: case ENUM: case COMPLEX: case ENTITY: Parameter parameter = createParameter(node.get(paramName), paramName, edmParameter); parameters.put(paramName, parameter); node.remove(paramName); break; default: throw new DeserializerException( "Invalid type kind " + edmParameter.getType().getKind() + " for action parameter: " + paramName, DeserializerException.MessageKeys.INVALID_ACTION_PARAMETER_TYPE, paramName); } } return parameters; }
@Override public EdmAction getBoundActionWithBindingType(FullQualifiedName bindingParameterTypeName, Boolean isBindingParameterCollection) { for (EdmSchema schema:getSchemas()) { for (EdmAction action: schema.getActions()) { if (action.isBound()) { EdmParameter bindingParameter = action.getParameter(action.getParameterNames().get(0)); if (bindingParameter.getType().getFullQualifiedName().equals(bindingParameterTypeName) && bindingParameter.isCollection() == isBindingParameterCollection) { return action; } } } } return null; }
@Override public EdmAction getBoundActionWithBindingType(FullQualifiedName bindingParameterTypeName, Boolean isBindingParameterCollection) { for (EdmSchema schema:getSchemas()) { for (EdmAction action: schema.getActions()) { if (action.isBound()) { EdmParameter bindingParameter = action.getParameter(action.getParameterNames().get(0)); if (bindingParameter.getType().getFullQualifiedName().equals(bindingParameterTypeName) && bindingParameter.isCollection() == isBindingParameterCollection) { return action; } } } } return null; }