Repository: olingo-odata4
Updated Branches:
  refs/heads/master b1640c596 -> fd481c11d


OLINGO-1318: adding a way to load more vocabularies into single edm provider


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

Branch: refs/heads/master
Commit: fd481c11d89dc3b13d2582ad7da78a8e24c80ab5
Parents: b1640c5
Author: Ramesh Reddy <[email protected]>
Authored: Tue Nov 20 11:48:15 2018 -0600
Committer: Ramesh Reddy <[email protected]>
Committed: Tue Nov 20 11:48:15 2018 -0600

----------------------------------------------------------------------
 .../apache/olingo/server/core/MetadataParser.java  | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/fd481c11/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/MetadataParser.java
----------------------------------------------------------------------
diff --git 
a/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/MetadataParser.java
 
b/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/MetadataParser.java
index 825ec13..e29ff7b 100644
--- 
a/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/MetadataParser.java
+++ 
b/lib/server-core-ext/src/main/java/org/apache/olingo/server/core/MetadataParser.java
@@ -168,6 +168,14 @@ public class MetadataParser {
             this.useLocalCoreVocabularies, true, null);
   }
   
+  public SchemaBasedEdmProvider addToEdmProvider(SchemaBasedEdmProvider 
existing, Reader csdl)
+      throws XMLStreamException {
+    XMLInputFactory xmlInputFactory = XMLInputFactory.newInstance();
+    XMLEventReader reader = xmlInputFactory.createXMLEventReader(csdl);
+    return addToEdmProvider(existing, reader, this.referenceResolver, 
this.implicitlyLoadCoreVocabularies,
+        this.useLocalCoreVocabularies, true, null);
+  }
+  
   protected SchemaBasedEdmProvider buildEdmProvider(Reader csdl, 
ReferenceResolver resolver,
                                                     boolean loadCore, boolean 
useLocal,
                                                     boolean 
loadReferenceSchemas, String namespace)
@@ -185,11 +193,16 @@ public class MetadataParser {
     XMLEventReader reader = xmlInputFactory.createXMLEventReader(csdl);
     return buildEdmProvider(reader, resolver, loadCore, useLocal, 
loadReferenceSchemas, namespace);
   } 
+
+  protected SchemaBasedEdmProvider buildEdmProvider(XMLEventReader reader, 
ReferenceResolver resolver, boolean loadCore,
+      boolean useLocal, boolean loadReferenceSchemas, String namespace) throws 
XMLStreamException {
+    SchemaBasedEdmProvider provider = new SchemaBasedEdmProvider();
+    return addToEdmProvider(provider, reader, resolver, loadCore, useLocal, 
loadReferenceSchemas, namespace);
+  }
   
-  protected SchemaBasedEdmProvider buildEdmProvider(XMLEventReader reader,
+  protected SchemaBasedEdmProvider addToEdmProvider(SchemaBasedEdmProvider 
provider, XMLEventReader reader,
       ReferenceResolver resolver, boolean loadCore, boolean useLocal, boolean 
loadReferenceSchemas, String namespace)
       throws XMLStreamException {
-    SchemaBasedEdmProvider provider = new SchemaBasedEdmProvider();
     
     final StringBuilder xmlBase = new StringBuilder();
     

Reply via email to