You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by ra...@apache.org on 2016/03/25 23:34:18 UTC

olingo-odata4 git commit: OLINGO-911: small correction to show the count based requests with functions/actions

Repository: olingo-odata4
Updated Branches:
  refs/heads/master 0d37336eb -> 300316db8


OLINGO-911: small correction to show the count based requests with functions/actions


Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/300316db
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/300316db
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/300316db

Branch: refs/heads/master
Commit: 300316db8d436fb75c9ad282fc4b8fcbb9b9b7d3
Parents: 0d37336
Author: Ramesh Reddy <ra...@jboss.org>
Authored: Fri Mar 25 17:33:45 2016 -0500
Committer: Ramesh Reddy <ra...@jboss.org>
Committed: Fri Mar 25 17:33:45 2016 -0500

----------------------------------------------------------------------
 .../org/apache/olingo/server/core/ServiceDispatcher.java  | 10 ++++++++--
 .../olingo/server/core/requests/OperationRequest.java     | 10 ++++++++++
 2 files changed, 18 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/300316db/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/ServiceDispatcher.java
----------------------------------------------------------------------
diff --git a/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/ServiceDispatcher.java b/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/ServiceDispatcher.java
index 0500247..a6d39b6 100644
--- a/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/ServiceDispatcher.java
+++ b/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/ServiceDispatcher.java
@@ -57,6 +57,7 @@ import org.apache.olingo.server.core.requests.DataRequest;
 import org.apache.olingo.server.core.requests.FunctionRequest;
 import org.apache.olingo.server.core.requests.MediaRequest;
 import org.apache.olingo.server.core.requests.MetadataRequest;
+import org.apache.olingo.server.core.requests.OperationRequest;
 import org.apache.olingo.server.core.requests.ServiceDocumentRequest;
 import org.apache.olingo.server.core.uri.parser.Parser;
 import org.apache.olingo.server.core.uri.validator.UriValidator;
@@ -178,8 +179,13 @@ public class ServiceDispatcher extends RequestURLHierarchyVisitor {
 
   @Override
   public void visit(UriResourceCount option) {
-    DataRequest dataRequest = (DataRequest) this.request;
-    dataRequest.setCountRequest(option != null);
+    if (this.request instanceof DataRequest) {
+      DataRequest dataRequest = (DataRequest) this.request;
+      dataRequest.setCountRequest(option != null);
+    } else if (this.request instanceof OperationRequest) {
+      OperationRequest opRequest = (OperationRequest) this.request;
+      opRequest.setCountRequest(option != null);      
+    }
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/300316db/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/requests/OperationRequest.java
----------------------------------------------------------------------
diff --git a/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/requests/OperationRequest.java b/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/requests/OperationRequest.java
index 927dd13..9bc7971 100644
--- a/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/requests/OperationRequest.java
+++ b/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/requests/OperationRequest.java
@@ -33,6 +33,8 @@ import org.apache.olingo.server.core.ServiceRequest;
 
 public abstract class OperationRequest extends ServiceRequest {
 
+  private boolean countRequest;
+
   public OperationRequest(OData odata, ServiceMetadata serviceMetadata) {
     super(odata, serviceMetadata);
   }
@@ -114,4 +116,12 @@ public abstract class OperationRequest extends ServiceRequest {
   public boolean isReturnTypeComplex() {
     return getReturnType().getType().getKind() == EdmTypeKind.COMPLEX;
   }
+  
+  public boolean isCountRequest() {
+    return countRequest;
+  }
+
+  public void setCountRequest(boolean countRequest) {
+    this.countRequest = countRequest;
+  }  
 }
\ No newline at end of file