You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by il...@apache.org on 2014/04/01 16:19:03 UTC

[36/51] [abbrv] git commit: [OLINGO-200] V3/V4 specialization for ODataEntitySetIterator

[OLINGO-200] V3/V4 specialization for ODataEntitySetIterator


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

Branch: refs/heads/master
Commit: cd7ede00e279252d5d85990b1e29ff90c8df6b1f
Parents: a884ad1
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Sat Mar 29 20:17:26 2014 +0100
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Sat Mar 29 20:17:26 2014 +0100

----------------------------------------------------------------------
 .../retrieve/CommonRetrieveRequestFactory.java      |  5 ++++-
 .../retrieve/ODataEntitySetIteratorRequest.java     |  5 ++++-
 .../request/retrieve/v3/RetrieveRequestFactory.java |  5 +++++
 .../request/retrieve/v4/RetrieveRequestFactory.java |  5 +++++
 .../client/api/domain/ODataEntitySetIterator.java   | 13 ++++++++-----
 .../retrieve/AbstractRetrieveRequestFactory.java    |  6 ------
 .../retrieve/ODataEntitySetIteratorRequestImpl.java | 16 +++++++++-------
 .../retrieve/v3/RetrieveRequestFactoryImpl.java     |  8 ++++++++
 .../retrieve/v4/RetrieveRequestFactoryImpl.java     |  8 ++++++++
 .../client/core/it/v3/EntitySetTestITCase.java      | 14 ++++++++------
 .../client/core/it/v4/EntitySetTestITCase.java      | 13 +++++++------
 11 files changed, 66 insertions(+), 32 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/CommonRetrieveRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/CommonRetrieveRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/CommonRetrieveRequestFactory.java
index 02ca4ee..f8d48b3 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/CommonRetrieveRequestFactory.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/CommonRetrieveRequestFactory.java
@@ -74,10 +74,13 @@ public interface CommonRetrieveRequestFactory extends Serializable {
    * Returned request gives the possibility to consume entities iterating on them without parsing and loading in memory
    * the entire entity set.
    *
+   * @param <ES> concreate ODataEntitySet implementation.
+   * @param <E> concrete ODataEntity implementation.
    * @param uri request URI.
    * @return new {@link ODataEntitySetIteratorRequest} instance.
    */
-  ODataEntitySetIteratorRequest getEntitySetIteratorRequest(URI uri);
+  <ES extends CommonODataEntitySet, E extends CommonODataEntity>
+          ODataEntitySetIteratorRequest<ES, E> getEntitySetIteratorRequest(URI uri);
 
   /**
    * Gets a query request returning a single OData entity.

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/ODataEntitySetIteratorRequest.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/ODataEntitySetIteratorRequest.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/ODataEntitySetIteratorRequest.java
index dd2cf46..724b644 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/ODataEntitySetIteratorRequest.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/ODataEntitySetIteratorRequest.java
@@ -19,10 +19,13 @@
 package org.apache.olingo.client.api.communication.request.retrieve;
 
 import org.apache.olingo.client.api.domain.ODataEntitySetIterator;
+import org.apache.olingo.commons.api.domain.CommonODataEntity;
+import org.apache.olingo.commons.api.domain.CommonODataEntitySet;
 import org.apache.olingo.commons.api.format.ODataPubFormat;
 
 /**
  * This class implements an OData EntitySet query request.
  */
-public interface ODataEntitySetIteratorRequest extends ODataRetrieveRequest<ODataEntitySetIterator, ODataPubFormat> {
+public interface ODataEntitySetIteratorRequest<ES extends CommonODataEntitySet, E extends CommonODataEntity>
+        extends ODataRetrieveRequest<ODataEntitySetIterator<ES, E>, ODataPubFormat> {
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/v3/RetrieveRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/v3/RetrieveRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/v3/RetrieveRequestFactory.java
index 25276fe..00568bd 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/v3/RetrieveRequestFactory.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/v3/RetrieveRequestFactory.java
@@ -21,6 +21,7 @@ package org.apache.olingo.client.api.communication.request.retrieve.v3;
 import java.net.URI;
 import org.apache.olingo.client.api.communication.request.retrieve.CommonRetrieveRequestFactory;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntityRequest;
+import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetIteratorRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataPropertyRequest;
 import org.apache.olingo.commons.api.domain.v3.ODataEntity;
@@ -35,6 +36,10 @@ public interface RetrieveRequestFactory extends CommonRetrieveRequestFactory {
 
   @SuppressWarnings("unchecked")
   @Override
+  ODataEntitySetIteratorRequest<ODataEntitySet, ODataEntity> getEntitySetIteratorRequest(URI uri);
+
+  @SuppressWarnings("unchecked")
+  @Override
   ODataEntityRequest<ODataEntity> getEntityRequest(URI uri);
 
   @SuppressWarnings("unchecked")

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/v4/RetrieveRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/v4/RetrieveRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/v4/RetrieveRequestFactory.java
index 8d8184b..63f3515 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/v4/RetrieveRequestFactory.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/retrieve/v4/RetrieveRequestFactory.java
@@ -21,6 +21,7 @@ package org.apache.olingo.client.api.communication.request.retrieve.v4;
 import java.net.URI;
 import org.apache.olingo.client.api.communication.request.retrieve.CommonRetrieveRequestFactory;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntityRequest;
+import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetIteratorRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataPropertyRequest;
 import org.apache.olingo.commons.api.domain.v4.ODataEntity;
@@ -33,6 +34,10 @@ public interface RetrieveRequestFactory extends CommonRetrieveRequestFactory {
   @Override
   ODataEntitySetRequest<ODataEntitySet> getEntitySetRequest(URI uri);
 
+  @SuppressWarnings("unchecked")
+  @Override
+  ODataEntitySetIteratorRequest<ODataEntitySet, ODataEntity> getEntitySetIteratorRequest(URI uri);
+
   @Override
   ODataEntityRequest<ODataEntity> getEntityRequest(URI uri);
 

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ODataEntitySetIterator.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ODataEntitySetIterator.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ODataEntitySetIterator.java
index 66e3476..dd77a44 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ODataEntitySetIterator.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/domain/ODataEntitySetIterator.java
@@ -42,7 +42,8 @@ import org.slf4j.LoggerFactory;
  * <br/>
  * <b>Please don't forget to call the <tt>close()>/<tt> method when not needed any more.</b>
  */
-public class ODataEntitySetIterator implements Iterator<CommonODataEntity> {
+public class ODataEntitySetIterator<ES extends CommonODataEntitySet, E extends CommonODataEntity>
+        implements Iterator<E> {
 
   /**
    * Logger.
@@ -59,7 +60,7 @@ public class ODataEntitySetIterator implements Iterator<CommonODataEntity> {
 
   private Entry cached;
 
-  private CommonODataEntitySet entitySet;
+  private ES entitySet;
 
   private final ByteArrayOutputStream osFeed;
 
@@ -104,6 +105,7 @@ public class ODataEntitySetIterator implements Iterator<CommonODataEntity> {
    * {@inheritDoc }
    */
   @Override
+  @SuppressWarnings("unchecked")
   public boolean hasNext() {
     if (available && cached == null) {
       if (format == ODataPubFormat.ATOM) {
@@ -114,7 +116,7 @@ public class ODataEntitySetIterator implements Iterator<CommonODataEntity> {
 
       if (cached == null) {
         available = false;
-        entitySet = odataClient.getReader().
+        entitySet = (ES) odataClient.getReader().
                 readEntitySet(new ByteArrayInputStream(osFeed.toByteArray()), format);
         close();
       }
@@ -127,9 +129,10 @@ public class ODataEntitySetIterator implements Iterator<CommonODataEntity> {
    * {@inheritDoc }
    */
   @Override
-  public CommonODataEntity next() {
+  public E next() {
     if (hasNext()) {
-      final CommonODataEntity res = odataClient.getBinder().getODataEntity(cached);
+      @SuppressWarnings("unchecked")
+      final E res = (E) odataClient.getBinder().getODataEntity(cached);
       cached = null;
       return res;
     }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractRetrieveRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractRetrieveRequestFactory.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractRetrieveRequestFactory.java
index d8ec0f2..a801953 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractRetrieveRequestFactory.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractRetrieveRequestFactory.java
@@ -21,7 +21,6 @@ package org.apache.olingo.client.core.communication.request.retrieve;
 import java.net.URI;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.olingo.client.api.CommonODataClient;
-import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetIteratorRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataMediaRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.EdmMetadataRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataRawRequest;
@@ -40,11 +39,6 @@ public abstract class AbstractRetrieveRequestFactory implements CommonRetrieveRe
   }
 
   @Override
-  public ODataEntitySetIteratorRequest getEntitySetIteratorRequest(final URI query) {
-    return new ODataEntitySetIteratorRequestImpl(client, query);
-  }
-
-  @Override
   public ODataValueRequest getValueRequest(final URI query) {
     return new ODataValueRequestImpl(client, query);
   }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetIteratorRequestImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetIteratorRequestImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetIteratorRequestImpl.java
index bfdddef..a1e9a8b 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetIteratorRequestImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/ODataEntitySetIteratorRequestImpl.java
@@ -25,14 +25,16 @@ import org.apache.olingo.client.api.CommonODataClient;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetIteratorRequest;
 import org.apache.olingo.client.api.communication.response.ODataRetrieveResponse;
 import org.apache.olingo.client.api.domain.ODataEntitySetIterator;
+import org.apache.olingo.commons.api.domain.CommonODataEntity;
+import org.apache.olingo.commons.api.domain.CommonODataEntitySet;
 import org.apache.olingo.commons.api.format.ODataPubFormat;
 
 /**
  * This class implements an OData EntitySet query request.
  */
-public class ODataEntitySetIteratorRequestImpl
-        extends AbstractODataRetrieveRequest<ODataEntitySetIterator, ODataPubFormat>
-        implements ODataEntitySetIteratorRequest {
+public class ODataEntitySetIteratorRequestImpl<ES extends CommonODataEntitySet, E extends CommonODataEntity>
+        extends AbstractODataRetrieveRequest<ODataEntitySetIterator<ES, E>, ODataPubFormat>
+        implements ODataEntitySetIteratorRequest<ES, E> {
 
   private ODataEntitySetIterator feedIterator = null;
 
@@ -42,7 +44,7 @@ public class ODataEntitySetIteratorRequestImpl
    * @param odataClient client instance getting this request
    * @param query query to be executed.
    */
-  ODataEntitySetIteratorRequestImpl(final CommonODataClient odataClient, final URI query) {
+  public ODataEntitySetIteratorRequestImpl(final CommonODataClient odataClient, final URI query) {
     super(odataClient, ODataPubFormat.class, query);
   }
 
@@ -50,7 +52,7 @@ public class ODataEntitySetIteratorRequestImpl
    * {@inheritDoc }
    */
   @Override
-  public ODataRetrieveResponse<ODataEntitySetIterator> execute() {
+  public ODataRetrieveResponse<ODataEntitySetIterator<ES, E>> execute() {
     final HttpResponse res = doExecute();
     return new ODataEntitySetIteratorResponseImpl(httpClient, res);
   }
@@ -75,9 +77,9 @@ public class ODataEntitySetIteratorRequestImpl
      */
     @Override
     @SuppressWarnings("unchecked")
-    public ODataEntitySetIterator getBody() {
+    public ODataEntitySetIterator<ES, E> getBody() {
       if (feedIterator == null) {
-        feedIterator = new ODataEntitySetIterator(
+        feedIterator = new ODataEntitySetIterator<ES, E>(
                 odataClient, getRawResponse(), ODataPubFormat.fromString(getContentType()));
       }
       return feedIterator;

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/RetrieveRequestFactoryImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/RetrieveRequestFactoryImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/RetrieveRequestFactoryImpl.java
index b32dd30..3943747 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/RetrieveRequestFactoryImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/RetrieveRequestFactoryImpl.java
@@ -20,6 +20,7 @@ package org.apache.olingo.client.core.communication.request.retrieve.v3;
 
 import java.net.URI;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntityRequest;
+import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetIteratorRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataPropertyRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.XMLMetadataRequest;
@@ -28,6 +29,7 @@ import org.apache.olingo.client.api.communication.request.retrieve.v3.ODataLinkC
 import org.apache.olingo.client.api.communication.request.retrieve.v3.RetrieveRequestFactory;
 import org.apache.olingo.client.core.communication.request.retrieve.AbstractRetrieveRequestFactory;
 import org.apache.olingo.client.core.communication.request.retrieve.ODataEntityRequestImpl;
+import org.apache.olingo.client.core.communication.request.retrieve.ODataEntitySetIteratorRequestImpl;
 import org.apache.olingo.client.core.communication.request.retrieve.ODataEntitySetRequestImpl;
 import org.apache.olingo.client.core.communication.request.retrieve.ODataPropertyRequestImpl;
 import org.apache.olingo.commons.api.domain.v3.ODataEntity;
@@ -62,6 +64,12 @@ public class RetrieveRequestFactoryImpl extends AbstractRetrieveRequestFactory
 
   @SuppressWarnings("unchecked")
   @Override
+  public ODataEntitySetIteratorRequest<ODataEntitySet, ODataEntity> getEntitySetIteratorRequest(URI uri) {
+    return new ODataEntitySetIteratorRequestImpl<ODataEntitySet, ODataEntity>(client, uri);
+  }
+
+  @SuppressWarnings("unchecked")
+  @Override
   public ODataEntityRequest<ODataEntity> getEntityRequest(final URI query) {
     return new ODataEntityRequestImpl<ODataEntity>(client, query);
   }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/RetrieveRequestFactoryImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/RetrieveRequestFactoryImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/RetrieveRequestFactoryImpl.java
index a32a153..96419c2 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/RetrieveRequestFactoryImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/RetrieveRequestFactoryImpl.java
@@ -20,6 +20,7 @@ package org.apache.olingo.client.core.communication.request.retrieve.v4;
 
 import java.net.URI;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntityRequest;
+import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetIteratorRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataPropertyRequest;
 import org.apache.olingo.client.api.communication.request.retrieve.XMLMetadataRequest;
@@ -27,6 +28,7 @@ import org.apache.olingo.client.api.communication.request.retrieve.v4.RetrieveRe
 import org.apache.olingo.client.api.v4.ODataClient;
 import org.apache.olingo.client.core.communication.request.retrieve.AbstractRetrieveRequestFactory;
 import org.apache.olingo.client.core.communication.request.retrieve.ODataEntityRequestImpl;
+import org.apache.olingo.client.core.communication.request.retrieve.ODataEntitySetIteratorRequestImpl;
 import org.apache.olingo.client.core.communication.request.retrieve.ODataEntitySetRequestImpl;
 import org.apache.olingo.client.core.communication.request.retrieve.ODataPropertyRequestImpl;
 import org.apache.olingo.commons.api.domain.v4.ODataEntity;
@@ -56,6 +58,12 @@ public class RetrieveRequestFactoryImpl extends AbstractRetrieveRequestFactory
 
   @SuppressWarnings("unchecked")
   @Override
+  public ODataEntitySetIteratorRequest<ODataEntitySet, ODataEntity> getEntitySetIteratorRequest(URI uri) {
+    return new ODataEntitySetIteratorRequestImpl<ODataEntitySet, ODataEntity>(client, uri);
+  }
+
+  @SuppressWarnings("unchecked")
+  @Override
   public ODataEntityRequest<ODataEntity> getEntityRequest(final URI query) {
     return new ODataEntityRequestImpl<ODataEntity>(client, query);
   }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v3/EntitySetTestITCase.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v3/EntitySetTestITCase.java b/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v3/EntitySetTestITCase.java
index 446b41d..0aaed01 100644
--- a/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v3/EntitySetTestITCase.java
+++ b/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v3/EntitySetTestITCase.java
@@ -18,6 +18,10 @@
  */
 package org.apache.olingo.client.core.it.v3;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
 import java.io.IOException;
 import java.net.URI;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetIteratorRequest;
@@ -29,12 +33,10 @@ import org.apache.olingo.client.api.domain.ODataEntitySetIterator;
 import org.apache.olingo.client.api.uri.CommonURIBuilder;
 import org.apache.olingo.client.core.uri.URIUtils;
 import org.apache.olingo.commons.api.domain.CommonODataEntitySet;
+import org.apache.olingo.commons.api.domain.v3.ODataEntity;
 import org.apache.olingo.commons.api.domain.v3.ODataEntitySet;
 import org.apache.olingo.commons.api.format.ODataPubFormat;
 import org.apache.olingo.commons.core.op.ResourceFactory;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
 import org.junit.Test;
 
 /**
@@ -115,12 +117,12 @@ public class EntitySetTestITCase extends AbstractTestITCase {
     final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(getServiceRoot());
     uriBuilder.appendEntitySetSegment("Customer");
 
-    final ODataEntitySetIteratorRequest req =
+    final ODataEntitySetIteratorRequest<ODataEntitySet, ODataEntity> req =
             client.getRetrieveRequestFactory().getEntitySetIteratorRequest(uriBuilder.build());
     req.setFormat(format);
 
-    final ODataRetrieveResponse<ODataEntitySetIterator> res = req.execute();
-    final ODataEntitySetIterator feedIterator = res.getBody();
+    final ODataRetrieveResponse<ODataEntitySetIterator<ODataEntitySet, ODataEntity>> res = req.execute();
+    final ODataEntitySetIterator<ODataEntitySet, ODataEntity> feedIterator = res.getBody();
 
     assertNotNull(feedIterator);
 

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/cd7ede00/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v4/EntitySetTestITCase.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v4/EntitySetTestITCase.java b/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v4/EntitySetTestITCase.java
index a73ce7a..c354a1d 100644
--- a/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v4/EntitySetTestITCase.java
+++ b/lib/client-core/src/test/java/org/apache/olingo/client/core/it/v4/EntitySetTestITCase.java
@@ -18,6 +18,10 @@
  */
 package org.apache.olingo.client.core.it.v4;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
 import java.io.IOException;
 import java.net.URI;
 import org.apache.olingo.client.api.communication.request.retrieve.ODataEntitySetIteratorRequest;
@@ -29,13 +33,10 @@ import org.apache.olingo.client.api.domain.ODataEntitySetIterator;
 import org.apache.olingo.client.api.uri.CommonURIBuilder;
 import org.apache.olingo.client.core.uri.URIUtils;
 import org.apache.olingo.commons.api.domain.CommonODataEntitySet;
+import org.apache.olingo.commons.api.domain.v4.ODataEntity;
 import org.apache.olingo.commons.api.domain.v4.ODataEntitySet;
 import org.apache.olingo.commons.api.format.ODataPubFormat;
 import org.apache.olingo.commons.core.op.ResourceFactory;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
 import org.junit.Ignore;
 import org.junit.Test;
 
@@ -124,11 +125,11 @@ public class EntitySetTestITCase extends AbstractTestITCase {
     final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(getServiceRoot());
     uriBuilder.appendEntitySetSegment("People");
 
-    final ODataEntitySetIteratorRequest req =
+    final ODataEntitySetIteratorRequest<ODataEntitySet, ODataEntity> req =
             client.getRetrieveRequestFactory().getEntitySetIteratorRequest(uriBuilder.build());
     req.setFormat(format);
 
-    final ODataRetrieveResponse<ODataEntitySetIterator> res = req.execute();
+    final ODataRetrieveResponse<ODataEntitySetIterator<ODataEntitySet, ODataEntity>> res = req.execute();
     final ODataEntitySetIterator feedIterator = res.getBody();
 
     assertNotNull(feedIterator);