Repository: olingo-odata4
Updated Branches:
  refs/heads/master 34ea4d01e -> 85bebce00
  refs/heads/olingo786 a57b7d054 -> 9c53108ee


[OLINGO-786] Enhance TecSvc Edm with description annotations


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

Branch: refs/heads/olingo786
Commit: 9c53108ee5e9fe214376fac5a3ef597b0e5aadb4
Parents: a57b7d0
Author: Christian Amend <[email protected]>
Authored: Wed Oct 21 11:12:47 2015 +0200
Committer: Christian Amend <[email protected]>
Committed: Wed Oct 21 11:12:47 2015 +0200

----------------------------------------------------------------------
 .../tecsvc/provider/ContainerProvider.java      | 149 +++++++++++++++++--
 .../server/tecsvc/provider/TermProvider.java    |  16 +-
 2 files changed, 146 insertions(+), 19 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/9c53108e/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/provider/ContainerProvider.java
----------------------------------------------------------------------
diff --git 
a/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/provider/ContainerProvider.java
 
b/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/provider/ContainerProvider.java
index d6f371d..f267657 100644
--- 
a/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/provider/ContainerProvider.java
+++ 
b/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/provider/ContainerProvider.java
@@ -168,8 +168,8 @@ public class ContainerProvider {
                 .asList(new 
CsdlNavigationPropertyBinding().setPath("NavPropertyETTwoPrimOne").setTarget("ESTwoPrim"),
                     new 
CsdlNavigationPropertyBinding().setPath("NavPropertyETTwoPrimMany").setTarget("ESTwoPrim")))
             .setAnnotations(Arrays.asList(new 
CsdlAnnotation().setTerm("Core.Description").setExpression(
-                    new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String,
-                        "Contains entities with all primitive types")),
+                new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String,
+                    "Contains entities with all primitive types")),
                 new 
CsdlAnnotation().setTerm("Core.LongDescription").setQualifier("EnabledForEntitySet").setExpression(
                     new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String,
                         "System Query Options: $filter, $count, $orderby, 
$skip, $top, $expand, $select, $format; "
@@ -185,8 +185,29 @@ public class ContainerProvider {
       } else if (name.equals("ESCollAllPrim")) {
         return new CsdlEntitySet()
             .setName("ESCollAllPrim")
-            .setType(EntityTypeProvider.nameETCollAllPrim);
-
+            .setType(EntityTypeProvider.nameETCollAllPrim)
+            .setAnnotations(
+                Arrays
+                    .asList(
+                        new CsdlAnnotation()
+                            .setTerm("Core.Description")
+                            .setExpression(
+                                new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                                    .setValue("Contains entities with 
collection of each primitive type")),
+                        new CsdlAnnotation()
+                            .setTerm("Core.LongDescription")
+                            .setQualifier("EnabledForEntitySet")
+                            .setExpression(
+                                new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                                    .setValue("System Query Options: $filter, 
$count, $orderby, "
+                                        + "$skip, $top, $expand, $select, 
$format; Operations: Create, Read")),
+                        new CsdlAnnotation()
+                            .setTerm("Core.LongDescription")
+                            .setQualifier("EnabledForEntity")
+                            .setExpression(
+                                new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                                    .setValue("System Query Options: $expand, 
$select, "
+                                        + "$format; Operations: Read, Update, 
Delete"))));
       } else if (name.equals("ESTwoPrim")) {
         return new CsdlEntitySet()
             .setName("ESTwoPrim")
@@ -197,28 +218,134 @@ public class ContainerProvider {
                     .setTarget("ESAllPrim"),
                 new CsdlNavigationPropertyBinding()
                     .setPath("NavPropertyETAllPrimMany")
-                    .setTarget("ESAllPrim")
-                ));
-
+                    .setTarget("ESAllPrim")))
+            .setAnnotations(Arrays.asList(
+                new CsdlAnnotation()
+                    .setTerm("Core.Description")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("Contains entities with two primitve 
types")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledForEntitySet")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("System Query Options: $filter, $count, 
$orderby, $skip, $top, $expand, "
+                                + "$select, $format; Operations: Create, 
Create with Deep Insert, "
+                                + "Create with Bind Operation, Read")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledForEntity")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("System Query Options: $expand, $select, 
$format; Operations: Read, Update, "
+                                + "Update with Bind Operation, Delete")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledNavigationProperties")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("NavPropertyETAllPrimOne, 
NavPropertyETAllPrimMany"))));
       } else if (name.equals("ESMixPrimCollComp")) {
         return new CsdlEntitySet()
             .setName("ESMixPrimCollComp")
-            .setType(EntityTypeProvider.nameETMixPrimCollComp);
+            .setType(EntityTypeProvider.nameETMixPrimCollComp)
+            .setAnnotations(Arrays.asList(
+                new CsdlAnnotation()
+                    .setTerm("Core.Description")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("Contains entities with various 
properties of type primitive, collection "
+                                + "of primitve, complex and collection of 
complex")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledForEntitySet")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("System Query Options: $filter, $count, 
$orderby, $skip, $top, $expand, "
+                                + "$select, $format; Operations: Create, 
Read")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledForEntity")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("System Query Options: $expand, $select, 
$format; Operations: Read, "
+                                + "Update, Delete"))));
 
       } else if (name.equals("ESBase")) {
         return new CsdlEntitySet()
             .setName("ESBase")
-            .setType(EntityTypeProvider.nameETBase);
+            .setType(EntityTypeProvider.nameETBase)
+            .setAnnotations(Arrays.asList(
+                new CsdlAnnotation()
+                    .setTerm("Core.Description")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("Contains entities with single 
inheritance")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledForEntitySet")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("System Query Options: $filter, $count, 
$orderby, $skip, $top, $expand, "
+                                + "$select, $format; Operations: Create, 
Read")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledForEntity")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("System Query Options: $expand, $select, 
$format; Operations: Read, "
+                                + "Update, Delete"))));
 
       } else if (name.equals("ESTwoBase")) {
         return new CsdlEntitySet()
             .setName("ESTwoBase")
-            .setType(EntityTypeProvider.nameETTwoBase);
+            .setType(EntityTypeProvider.nameETTwoBase)
+            .setAnnotations(Arrays.asList(
+                new CsdlAnnotation()
+                    .setTerm("Core.Description")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("Contains entities with double 
inheritance")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledForEntitySet")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("System Query Options: $filter, $count, 
$orderby, $skip, $top, $expand, "
+                                + "$select, $format; Operations: Create, 
Read")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledForEntity")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("System Query Options: $expand, $select, 
$format; Operations: Read, "
+                                + "Update, Delete"))));
 
       } else if (name.equals("ESTwoKeyTwoPrim")) {
         return new CsdlEntitySet()
             .setName("ESTwoKeyTwoPrim")
-            .setType(EntityTypeProvider.nameETTwoKeyTwoPrim);
+            .setType(EntityTypeProvider.nameETTwoKeyTwoPrim)
+            .setAnnotations(Arrays.asList(
+                new CsdlAnnotation()
+                    .setTerm("Core.Description")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("Contains entities with two primitive 
types with two keys")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledForEntitySet")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("System Query Options: $filter, $count, 
$orderby, $skip, $top, $expand, $select,"
+                                + " $format; Operations: Create, Read")),
+                new CsdlAnnotation()
+                    .setTerm("Core.LongDescription")
+                    .setQualifier("EnabledForEntity")
+                    .setExpression(
+                        new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String)
+                            .setValue("System Query Options: $expand, $select, 
$format; Operations: Read, Update, "
+                                + "Delete"))));
 
       } else if (name.equals("ESBaseTwoKeyTwoPrim")) {
         return new CsdlEntitySet()

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/9c53108e/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/provider/TermProvider.java
----------------------------------------------------------------------
diff --git 
a/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/provider/TermProvider.java
 
b/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/provider/TermProvider.java
index 74fcd13..288577a 100644
--- 
a/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/provider/TermProvider.java
+++ 
b/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/provider/TermProvider.java
@@ -6,9 +6,9 @@
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License. You may obtain a copy of the License at
- *
+ * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -44,17 +44,17 @@ public class TermProvider {
       new FullQualifiedName("Org.OData.Core.V1", "LongDescription");
 
   public CsdlTerm getTerm(FullQualifiedName termName) {
-    if(TERM_DESCRIPTION.equals(termName)) {
+    if (TERM_DESCRIPTION.equals(termName)) {
       return new CsdlTerm().setName("Description").setType("Edm.String")
           .setAnnotations(Arrays.asList(new 
CsdlAnnotation().setTerm("Core.Description").setExpression(
-                  new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String,
-                      "A brief description of a model element")),
+              new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String,
+                  "A brief description of a model element")),
               new CsdlAnnotation().setTerm("Core.IsLanguageDependent")));
-    } else if(TERM_LONG_DESCRIPTION.equals(termName)) {
+    } else if (TERM_LONG_DESCRIPTION.equals(termName)) {
       return new CsdlTerm().setName("LongDescription").setType("Edm.String")
           .setAnnotations(Arrays.asList(new 
CsdlAnnotation().setTerm("Core.Description").setExpression(
-                  new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String,
-                      "A lengthy description of a model element")),
+              new 
CsdlConstantExpression(CsdlConstantExpression.ConstantExpressionType.String,
+                  "A lengthy description of a model element")),
               new CsdlAnnotation().setTerm("Core.IsLanguageDependent")));
     }
 

Reply via email to