private void handleOtherQueryParameters() throws UriSyntaxException, EdmException {
final EdmFunctionImport functionImport = uriResult.getFunctionImport();
if (functionImport != null) {
for (final String parameterName : functionImport.getParameterNames()) {
final EdmParameter parameter = functionImport.getParameter(parameterName);
final String value = otherQueryParameters.remove(parameterName);
if (value == null) {
if (parameter.getFacets() == null || parameter.getFacets().isNullable()) {
continue;
} else {
throw new UriSyntaxException(UriSyntaxException.MISSINGPARAMETER);
}
}
EdmLiteral uriLiteral = parseLiteral(value, (EdmSimpleType) parameter.getType());
uriResult.addFunctionImportParameter(parameterName, uriLiteral);
}
}
uriResult.setCustomQueryOptions(otherQueryParameters);