Repository: olingo-odata2
Updated Branches:
  refs/heads/master 6ce2421a5 -> 751e316da


[OLINGO-996] Changed EntityContainer name generation for JPA


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

Branch: refs/heads/master
Commit: 751e316da5899700575d4126b00f45fce8850c50
Parents: 6ce2421
Author: mibo <[email protected]>
Authored: Sat Sep 30 13:26:53 2017 +0200
Committer: mibo <[email protected]>
Committed: Sat Sep 30 13:26:53 2017 +0200

----------------------------------------------------------------------
 .../core/access/model/JPAEdmNameBuilder.java    | 23 +++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/751e316d/odata2-jpa-processor/jpa-core/src/main/java/org/apache/olingo/odata2/jpa/processor/core/access/model/JPAEdmNameBuilder.java
----------------------------------------------------------------------
diff --git 
a/odata2-jpa-processor/jpa-core/src/main/java/org/apache/olingo/odata2/jpa/processor/core/access/model/JPAEdmNameBuilder.java
 
b/odata2-jpa-processor/jpa-core/src/main/java/org/apache/olingo/odata2/jpa/processor/core/access/model/JPAEdmNameBuilder.java
index c404249..675cfc0 100644
--- 
a/odata2-jpa-processor/jpa-core/src/main/java/org/apache/olingo/odata2/jpa/processor/core/access/model/JPAEdmNameBuilder.java
+++ 
b/odata2-jpa-processor/jpa-core/src/main/java/org/apache/olingo/odata2/jpa/processor/core/access/model/JPAEdmNameBuilder.java
@@ -213,7 +213,7 @@ public class JPAEdmNameBuilder {
    * ************************************************************************
    */
   public static void build(final JPAEdmEntityContainerView view) {
-    view.getEdmEntityContainer().setName(buildNamespace(view) + 
ENTITY_CONTAINER_SUFFIX);
+    view.getEdmEntityContainer().setName(buildEntityContainerName(view));
   }
 
   /*
@@ -559,4 +559,25 @@ public class JPAEdmNameBuilder {
     return namespace;
   }
 
+  private static String buildEntityContainerName(final JPAEdmBaseView view) {
+    JPAEdmMappingModelAccess mappingModelAccess = 
view.getJPAEdmMappingModelAccess();
+    String name = null;
+    if (mappingModelAccess != null && 
mappingModelAccess.isMappingModelExists()) {
+      name = mappingModelAccess.mapJPAPersistenceUnit(view.getpUnitName());
+    }
+    if (name == null) {
+      return normalizeName(view.getpUnitName()) + ENTITY_CONTAINER_SUFFIX;
+    }
+    return name;
+  }
+
+  /**
+   * Replace `.` with `_` as
+   * @param name
+   * @return
+   */
+  private static String normalizeName(String name) {
+    return name.replace('.', '_');
+  }
+
 }

Reply via email to