You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by mi...@apache.org on 2016/02/13 07:34:05 UTC
[11/22] olingo-odata4 git commit: OLINGO-862: MediaEntity Type:
HasStream is not inherited
OLINGO-862: MediaEntity Type: HasStream is not inherited
Signed-off-by: Christian Amend <ch...@sap.com>
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/53065cdf
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/53065cdf
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/53065cdf
Branch: refs/heads/OLINGO-832_StreamSerializerPoC
Commit: 53065cdface25971ef50a7b97febf54c7e69c623
Parents: 5d7c128
Author: Frederik Zimmer <fr...@partake.de>
Authored: Tue Feb 2 12:29:49 2016 +0100
Committer: Christian Amend <ch...@sap.com>
Committed: Thu Feb 4 15:12:40 2016 +0100
----------------------------------------------------------------------
.../commons/core/edm/EdmEntityTypeImpl.java | 7 ++++++-
.../core/edm/provider/EdmEntityTypeImplTest.java | 19 +++++++++++++++++++
2 files changed, 25 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/53065cdf/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/EdmEntityTypeImpl.java
----------------------------------------------------------------------
diff --git a/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/EdmEntityTypeImpl.java b/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/EdmEntityTypeImpl.java
index 6d60afb..c532cb3 100644
--- a/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/EdmEntityTypeImpl.java
+++ b/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/EdmEntityTypeImpl.java
@@ -136,6 +136,11 @@ public class EdmEntityTypeImpl extends AbstractEdmStructuredType implements EdmE
@Override
public boolean hasStream() {
- return hasStream;
+ checkBaseType();
+
+ if (hasStream || entityBaseType != null && entityBaseType.hasStream()) {
+ return true;
+ }
+ return false;
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/53065cdf/lib/commons-core/src/test/java/org/apache/olingo/server/core/edm/provider/EdmEntityTypeImplTest.java
----------------------------------------------------------------------
diff --git a/lib/commons-core/src/test/java/org/apache/olingo/server/core/edm/provider/EdmEntityTypeImplTest.java b/lib/commons-core/src/test/java/org/apache/olingo/server/core/edm/provider/EdmEntityTypeImplTest.java
index 6cbabff..d0013a2 100644
--- a/lib/commons-core/src/test/java/org/apache/olingo/server/core/edm/provider/EdmEntityTypeImplTest.java
+++ b/lib/commons-core/src/test/java/org/apache/olingo/server/core/edm/provider/EdmEntityTypeImplTest.java
@@ -241,6 +241,25 @@ public class EdmEntityTypeImplTest {
}
@Test
+ public void hasStreamInherited() throws Exception {
+ CsdlEdmProvider provider = mock(CsdlEdmProvider.class);
+ EdmProviderImpl edm = new EdmProviderImpl(provider);
+
+ FullQualifiedName baseName = new FullQualifiedName("namespace", "BaseTypeName");
+ CsdlEntityType baseType = new CsdlEntityType();
+ baseType.setHasStream(true);
+ when(provider.getEntityType(baseName)).thenReturn(baseType);
+
+ FullQualifiedName typeName = new FullQualifiedName("namespace", "typeName");
+ CsdlEntityType type = new CsdlEntityType();
+ type.setBaseType(baseName);
+ EdmEntityType typeWithBaseTypeWithStream = new EdmEntityTypeImpl(edm, typeName, type);
+ when(provider.getEntityType(typeName)).thenReturn(type);
+
+ assertTrue(typeWithBaseTypeWithStream.hasStream());
+ }
+
+ @Test
public void complexKeyWithAlias() {
List<String> keyPredicateNames = typeWithComplexKey.getKeyPredicateNames();
assertEquals(2, keyPredicateNames.size());