Repository: olingo-odata4
Updated Branches:
  refs/heads/master 256468aa2 -> 9658091ae


OLINGO-913: Correcting the SchemaBasedEdmProvider behavior


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

Branch: refs/heads/master
Commit: 9658091ae1fbe19411058605a72df7577aa7bddb
Parents: 256468a
Author: Ramesh Reddy <[email protected]>
Authored: Thu Mar 24 15:28:48 2016 -0500
Committer: Ramesh Reddy <[email protected]>
Committed: Thu Mar 24 15:28:48 2016 -0500

----------------------------------------------------------------------
 .../olingo/server/core/SchemaBasedEdmProvider.java      | 12 ++++++------
 .../apache/olingo/server/core/MetadataParserTest.java   |  9 +++++----
 2 files changed, 11 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/9658091a/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/SchemaBasedEdmProvider.java
----------------------------------------------------------------------
diff --git 
a/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/SchemaBasedEdmProvider.java
 
b/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/SchemaBasedEdmProvider.java
index 3017682..348602e 100644
--- 
a/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/SchemaBasedEdmProvider.java
+++ 
b/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/SchemaBasedEdmProvider.java
@@ -189,7 +189,7 @@ public class SchemaBasedEdmProvider implements 
CsdlEdmProvider {
 
   @Override
   public CsdlEntitySet getEntitySet(FullQualifiedName fqn, String 
entitySetName) throws ODataException {
-    CsdlSchema schema = getSchema(fqn.getFullQualifiedNameAsString());
+    CsdlSchema schema = getSchema(fqn.getNamespace());
     if (schema != null) {
       CsdlEntityContainer ec = schema.getEntityContainer();
       if (ec != null && ec.getEntitySets() != null) {
@@ -205,7 +205,7 @@ public class SchemaBasedEdmProvider implements 
CsdlEdmProvider {
 
   @Override
   public CsdlSingleton getSingleton(FullQualifiedName fqn, String 
singletonName) throws ODataException {
-    CsdlSchema schema = getSchema(fqn.getFullQualifiedNameAsString());
+    CsdlSchema schema = getSchema(fqn.getNamespace());
     if (schema != null) {
       CsdlEntityContainer ec = schema.getEntityContainer();
       if (ec != null && ec.getSingletons() != null) {
@@ -222,7 +222,7 @@ public class SchemaBasedEdmProvider implements 
CsdlEdmProvider {
   @Override
   public CsdlActionImport getActionImport(FullQualifiedName fqn, String 
actionImportName)
       throws ODataException {
-    CsdlSchema schema = getSchema(fqn.getFullQualifiedNameAsString());
+    CsdlSchema schema = getSchema(fqn.getNamespace());
     if (schema != null) {
       CsdlEntityContainer ec = schema.getEntityContainer();
       if (ec != null && ec.getActionImports() != null) {
@@ -239,7 +239,7 @@ public class SchemaBasedEdmProvider implements 
CsdlEdmProvider {
   @Override
   public CsdlFunctionImport getFunctionImport(FullQualifiedName fqn, String 
functionImportName)
       throws ODataException {
-    CsdlSchema schema = getSchema(fqn.getFullQualifiedNameAsString());
+    CsdlSchema schema = getSchema(fqn.getNamespace());
     if (schema != null) {
       CsdlEntityContainer ec = schema.getEntityContainer();
       if (ec != null && ec.getFunctionImports() != null) {
@@ -265,14 +265,14 @@ public class SchemaBasedEdmProvider implements 
CsdlEdmProvider {
         }
       }
     } else {
-      schema = getSchema(fqn.getFullQualifiedNameAsString());
+      schema = getSchema(fqn.getNamespace());
     }
 
     if (schema != null) {
       CsdlEntityContainer ec = schema.getEntityContainer();
       if (ec != null) {
         CsdlEntityContainerInfo info = new CsdlEntityContainerInfo();
-        info.setContainerName(new FullQualifiedName(schema.getNamespace()));
+        info.setContainerName(new FullQualifiedName(schema.getNamespace(), 
ec.getName()));
         if (schema.getEntityContainer().getExtendsContainer() != null) {
           info.setExtendsContainer(new 
FullQualifiedName(schema.getEntityContainer().getExtendsContainer()));
         }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/9658091a/lib/server-core-ext/src/test/java/org/apache/olingo/server/core/MetadataParserTest.java
----------------------------------------------------------------------
diff --git 
a/lib/server-core-ext/src/test/java/org/apache/olingo/server/core/MetadataParserTest.java
 
b/lib/server-core-ext/src/test/java/org/apache/olingo/server/core/MetadataParserTest.java
index 97ae420..5b6d490 100644
--- 
a/lib/server-core-ext/src/test/java/org/apache/olingo/server/core/MetadataParserTest.java
+++ 
b/lib/server-core-ext/src/test/java/org/apache/olingo/server/core/MetadataParserTest.java
@@ -48,6 +48,7 @@ import org.junit.Test;
 public class MetadataParserTest {
   final String NS = "Microsoft.OData.SampleService.Models.TripPin";
   final FullQualifiedName NSF = new FullQualifiedName(NS);
+  final FullQualifiedName EC = new FullQualifiedName(NS, "DefaultContainer");
 
   CsdlEdmProvider provider = null;
 
@@ -139,7 +140,7 @@ public class MetadataParserTest {
 
   @Test
   public void testEntitySet() throws Exception {
-    CsdlEntitySet es = provider.getEntitySet(NSF, "People");
+    CsdlEntitySet es = provider.getEntitySet(EC, "People");
     assertNotNull(es);
     
assertEquals("Microsoft.OData.SampleService.Models.TripPin.Person",es.getType());
 
@@ -153,7 +154,7 @@ public class MetadataParserTest {
 
   @Test
   public void testFunctionImport() throws Exception {
-    CsdlFunctionImport fi = provider.getFunctionImport(NSF, 
"GetNearestAirport");
+    CsdlFunctionImport fi = provider.getFunctionImport(EC, 
"GetNearestAirport");
     assertNotNull(fi);
     
assertEquals("Microsoft.OData.SampleService.Models.TripPin.GetNearestAirport", 
fi.getFunction());
     assertEquals("Airports", fi.getEntitySet());
@@ -162,7 +163,7 @@ public class MetadataParserTest {
 
   @Test
   public void testActionImport() throws Exception {
-    CsdlActionImport ai = provider.getActionImport(NSF, "ResetDataSource");
+    CsdlActionImport ai = provider.getActionImport(EC, "ResetDataSource");
     assertNotNull(ai);
     
assertEquals("Microsoft.OData.SampleService.Models.TripPin.ResetDataSource", 
ai.getAction());
     assertNull(ai.getEntitySet());
@@ -170,7 +171,7 @@ public class MetadataParserTest {
 
   @Test
   public void testSingleton() throws Exception {
-    CsdlSingleton single = this.provider.getSingleton(NSF, "Me");
+    CsdlSingleton single = this.provider.getSingleton(EC, "Me");
     assertNotNull(single);
 
     
assertEquals("Microsoft.OData.SampleService.Models.TripPin.Person",single.getType());

Reply via email to