This is an automated email from the ASF dual-hosted git repository.

ramyav pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/olingo-odata2.git


The following commit(s) were added to refs/heads/master by this push:
     new b81c987  [OLINGO-1497]System Query options no longer working for 
Function Imports
b81c987 is described below

commit b81c987faab99704e49ced83d74d7a69daee2fb4
Author: ramya vasanth <[email protected]>
AuthorDate: Wed Dec 9 10:50:03 2020 +0530

    [OLINGO-1497]System Query options no longer working for Function Imports
---
 .../org/apache/olingo/odata2/client/core/uri/UriParserTest.java   | 8 ++++++++
 .../src/main/java/org/apache/olingo/odata2/core/uri/UriType.java  | 4 +++-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git 
a/odata2-lib/odata-client-core/src/test/java/org/apache/olingo/odata2/client/core/uri/UriParserTest.java
 
b/odata2-lib/odata-client-core/src/test/java/org/apache/olingo/odata2/client/core/uri/UriParserTest.java
index 21394c1..c654e62 100644
--- 
a/odata2-lib/odata-client-core/src/test/java/org/apache/olingo/odata2/client/core/uri/UriParserTest.java
+++ 
b/odata2-lib/odata-client-core/src/test/java/org/apache/olingo/odata2/client/core/uri/UriParserTest.java
@@ -40,6 +40,7 @@ import org.apache.olingo.odata2.api.commons.InlineCount;
 import org.apache.olingo.odata2.api.edm.Edm;
 import org.apache.olingo.odata2.api.edm.EdmEntitySet;
 import org.apache.olingo.odata2.api.edm.EdmException;
+import org.apache.olingo.odata2.api.edm.EdmMultiplicity;
 import org.apache.olingo.odata2.api.edm.EdmSimpleTypeKind;
 import org.apache.olingo.odata2.api.edm.EdmTypeKind;
 import org.apache.olingo.odata2.api.exception.MessageReference;
@@ -688,6 +689,7 @@ public class UriParserTest {
     parseWrongUri("MaximalAge/somethingwrong", 
UriSyntaxException.INVALIDSEGMENT);
     parseWrongUri("ManagerPhoto", UriSyntaxException.MISSINGPARAMETER);
     parseWrongUri("ManagerPhoto?Id='", UriSyntaxException.UNKNOWNLITERAL);
+    parseWrongUri("OldestEmployee?$filter=EmployeeId%20eq%20%271%27", 
UriSyntaxException.INCOMPATIBLESYSTEMQUERYOPTION);
   }
 
   @Test
@@ -768,6 +770,12 @@ public class UriParserTest {
     assertNotNull(result.getFilter());
     assertNotNull(result.getOrderBy());
     assertEquals("EmployeeName desc", result.getOrderBy().getUriLiteral());
+    
+    result = parse("EmployeeSearch?$filter=EmployeeId%20eq%20%271%27");
+    assertEquals("Employee", 
result.getFunctionImport().getReturnType().getType().getName());
+    assertEquals(EdmMultiplicity.MANY, 
result.getFunctionImport().getReturnType().getMultiplicity());
+    assertEquals(UriType.URI10a, result.getUriType());
+    assertNotNull(result.getFilter());
   }
   
   @Test(expected=UriSyntaxException.class)
diff --git 
a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/UriType.java
 
b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/UriType.java
index 3a0772f..9827c11 100644
--- 
a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/UriType.java
+++ 
b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/UriType.java
@@ -84,7 +84,9 @@ public enum UriType {
   /**
    * Function import returning an entity set
    */
-  URI10a(SystemQueryOption.$format),
+  URI10a(SystemQueryOption.$format, SystemQueryOption.$filter, 
SystemQueryOption.$inlinecount,
+             SystemQueryOption.$orderby, SystemQueryOption.$skiptoken, 
SystemQueryOption.$skip, SystemQueryOption.$top,
+             SystemQueryOption.$expand, SystemQueryOption.$select),
   /**
    * Function import returning a collection of complex-type instances
    */

Reply via email to