You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by il...@apache.org on 2014/03/07 10:09:09 UTC

[20/57] [abbrv] Removing unneeded type genericization after interface introduction

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/EntityTypeImpl.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/EntityTypeImpl.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/EntityTypeImpl.java
index 125f63d..1ec06b4 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/EntityTypeImpl.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/EntityTypeImpl.java
@@ -25,54 +25,54 @@ import org.apache.olingo.odata4.client.core.edm.AbstractEntityType;
 
 public class EntityTypeImpl extends AbstractEntityType implements AnnotatedEdmItem {
 
-    private static final long serialVersionUID = 8727765036150269547L;
+  private static final long serialVersionUID = 8727765036150269547L;
 
-    private final List<PropertyImpl> properties = new ArrayList<PropertyImpl>();
+  private final List<PropertyImpl> properties = new ArrayList<PropertyImpl>();
 
-    private final List<NavigationPropertyImpl> navigationProperties = new ArrayList<NavigationPropertyImpl>();
+  private final List<NavigationPropertyImpl> navigationProperties = new ArrayList<NavigationPropertyImpl>();
 
-    private Annotation annotation;
+  private AnnotationImpl annotation;
 
-    @Override
-    public List<PropertyImpl> getProperties() {
-        return properties;
-    }
+  @Override
+  public List<PropertyImpl> getProperties() {
+    return properties;
+  }
 
-    @Override
-    public PropertyImpl getProperty(final String name) {
-        PropertyImpl result = null;
-        for (PropertyImpl property : getProperties()) {
-            if (name.equals(property.getName())) {
-                result = property;
-            }
-        }
-        return result;
+  @Override
+  public PropertyImpl getProperty(final String name) {
+    PropertyImpl result = null;
+    for (PropertyImpl property : getProperties()) {
+      if (name.equals(property.getName())) {
+        result = property;
+      }
     }
+    return result;
+  }
 
-    @Override
-    public List<NavigationPropertyImpl> getNavigationProperties() {
-        return navigationProperties;
-    }
+  @Override
+  public List<NavigationPropertyImpl> getNavigationProperties() {
+    return navigationProperties;
+  }
 
-    @Override
-    public NavigationPropertyImpl getNavigationProperty(final String name) {
-        NavigationPropertyImpl result = null;
-        for (NavigationPropertyImpl property : getNavigationProperties()) {
-            if (name.equals(property.getName())) {
-                result = property;
-            }
-        }
-        return result;
+  @Override
+  public NavigationPropertyImpl getNavigationProperty(final String name) {
+    NavigationPropertyImpl result = null;
+    for (NavigationPropertyImpl property : getNavigationProperties()) {
+      if (name.equals(property.getName())) {
+        result = property;
+      }
     }
+    return result;
+  }
 
-    @Override
-    public Annotation getAnnotation() {
-        return annotation;
-    }
+  @Override
+  public AnnotationImpl getAnnotation() {
+    return annotation;
+  }
 
-    @Override
-    public void setAnnotation(final Annotation annotation) {
-        this.annotation = annotation;
-    }
+  @Override
+  public void setAnnotation(final Annotation annotation) {
+    this.annotation = (AnnotationImpl) annotation;
+  }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/EnumTypeImpl.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/EnumTypeImpl.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/EnumTypeImpl.java
index 8df0239..5d9fb6e 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/EnumTypeImpl.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/EnumTypeImpl.java
@@ -27,7 +27,7 @@ public class EnumTypeImpl extends AbstractEnumType implements AnnotatedEdmItem {
 
   private static final long serialVersionUID = -3329664331877556957L;
 
-  private Annotation annotation;
+  private AnnotationImpl annotation;
 
   private final List<MemberImpl> members = new ArrayList<MemberImpl>();
 
@@ -38,34 +38,22 @@ public class EnumTypeImpl extends AbstractEnumType implements AnnotatedEdmItem {
 
   @Override
   public MemberImpl getMember(final String name) {
-    MemberImpl result = null;
-    for (MemberImpl member : getMembers()) {
-      if (name.equals(member.getName())) {
-        result = member;
-      }
-    }
-    return result;
+    return (MemberImpl) super.getMember(name);
   }
 
   @Override
   public MemberImpl getMember(final Integer value) {
-    MemberImpl result = null;
-    for (MemberImpl member : getMembers()) {
-      if (value.equals(member.getValue())) {
-        result = member;
-      }
-    }
-    return result;
+    return (MemberImpl) super.getMember(value);
   }
 
   @Override
-  public Annotation getAnnotation() {
+  public AnnotationImpl getAnnotation() {
     return annotation;
   }
 
   @Override
   public void setAnnotation(final Annotation annotation) {
-    this.annotation = annotation;
+    this.annotation = (AnnotationImpl) annotation;
   }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/FunctionDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/FunctionDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/FunctionDeserializer.java
index 7dfe50b..0c4f8b9 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/FunctionDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/FunctionDeserializer.java
@@ -47,12 +47,12 @@ public class FunctionDeserializer extends AbstractEdmDeserializer<FunctionImpl>
           function.setEntitySetPath(jp.nextTextValue());
         } else if ("Parameter".equals(jp.getCurrentName())) {
           jp.nextToken();
-          function.getParameters().add(jp.readValueAs( ParameterImpl.class));
+          function.getParameters().add(jp.readValueAs(ParameterImpl.class));
         } else if ("ReturnType".equals(jp.getCurrentName())) {
           function.setReturnType(parseReturnType(jp, "Function"));
         } else if ("Annotation".equals(jp.getCurrentName())) {
           jp.nextToken();
-          function.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          function.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/FunctionImportImpl.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/FunctionImportImpl.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/FunctionImportImpl.java
index bf9ad53..5a40bca 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/FunctionImportImpl.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/FunctionImportImpl.java
@@ -18,6 +18,7 @@
  */
 package org.apache.olingo.odata4.client.core.edm.v4;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import org.apache.olingo.odata4.client.api.edm.v4.Annotation;
 import org.apache.olingo.odata4.client.core.edm.AbstractFunctionImport;
@@ -39,7 +40,7 @@ public class FunctionImportImpl extends AbstractFunctionImport implements Annota
   private boolean includeInServiceDocument = false;
 
   @JsonProperty(value = "Annotation")
-  private Annotation annotation;
+  private AnnotationImpl annotation;
 
   @Override
   public String getName() {
@@ -76,13 +77,14 @@ public class FunctionImportImpl extends AbstractFunctionImport implements Annota
   }
 
   @Override
-  public Annotation getAnnotation() {
+  public AnnotationImpl getAnnotation() {
     return annotation;
   }
 
+  @JsonIgnore
   @Override
   public void setAnnotation(final Annotation annotation) {
-    this.annotation = annotation;
+    this.annotation = (AnnotationImpl) annotation;
   }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/MemberImpl.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/MemberImpl.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/MemberImpl.java
index 15e8533..39383fa 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/MemberImpl.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/MemberImpl.java
@@ -18,6 +18,7 @@
  */
 package org.apache.olingo.odata4.client.core.edm.v4;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import org.apache.olingo.odata4.client.api.edm.Member;
 import org.apache.olingo.odata4.client.api.edm.v4.Annotation;
@@ -28,16 +29,17 @@ public class MemberImpl extends AbstractMember implements Member, AnnotatedEdmIt
   private static final long serialVersionUID = -344920557183058824L;
 
   @JsonProperty("Annotation")
-  private Annotation annotation;
+  private AnnotationImpl annotation;
 
   @Override
-  public Annotation getAnnotation() {
+  public AnnotationImpl getAnnotation() {
     return annotation;
   }
 
+  @JsonIgnore
   @Override
   public void setAnnotation(final Annotation annotation) {
-    this.annotation = annotation;
+    this.annotation = (AnnotationImpl) annotation;
   }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/NavigationPropertyDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/NavigationPropertyDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/NavigationPropertyDeserializer.java
index 1a195ea..1c19b21 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/NavigationPropertyDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/NavigationPropertyDeserializer.java
@@ -50,13 +50,13 @@ public class NavigationPropertyDeserializer extends AbstractEdmDeserializer<Navi
           property.setContainsTarget(BooleanUtils.toBoolean(jp.nextTextValue()));
         } else if ("ReferentialConstraint".equals(jp.getCurrentName())) {
           jp.nextToken();
-          property.getReferentialConstraints().add(jp.readValueAs( ReferentialConstraintImpl.class));
+          property.getReferentialConstraints().add(jp.readValueAs(ReferentialConstraintImpl.class));
         } else if ("OnDelete".equals(jp.getCurrentName())) {
           jp.nextToken();
-          property.setOnDelete(jp.readValueAs( OnDeleteImpl.class));
+          property.setOnDelete(jp.readValueAs(OnDeleteImpl.class));
         } else if ("Annotation".equals(jp.getCurrentName())) {
           jp.nextToken();
-          property.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          property.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/NavigationPropertyImpl.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/NavigationPropertyImpl.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/NavigationPropertyImpl.java
index d48052e..5042680 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/NavigationPropertyImpl.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/NavigationPropertyImpl.java
@@ -42,7 +42,7 @@ public class NavigationPropertyImpl extends AbstractNavigationProperty implement
 
   private OnDeleteImpl onDelete;
 
-  private Annotation annotation;
+  private AnnotationImpl annotation;
 
   public String getType() {
     return type;
@@ -89,13 +89,13 @@ public class NavigationPropertyImpl extends AbstractNavigationProperty implement
   }
 
   @Override
-  public Annotation getAnnotation() {
+  public AnnotationImpl getAnnotation() {
     return annotation;
   }
 
   @Override
   public void setAnnotation(final Annotation annotation) {
-    this.annotation = annotation;
+    this.annotation = (AnnotationImpl) annotation;
   }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/SchemaImpl.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/SchemaImpl.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/SchemaImpl.java
index 16b9c63..d85d30f 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/SchemaImpl.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/SchemaImpl.java
@@ -25,8 +25,7 @@ import org.apache.olingo.odata4.client.api.edm.Schema;
 import org.apache.olingo.odata4.client.api.edm.v4.Annotation;
 import org.apache.olingo.odata4.client.core.edm.AbstractSchema;
 
-public class SchemaImpl extends AbstractSchema<EntityContainerImpl, EntityTypeImpl, ComplexTypeImpl, FunctionImportImpl>
-        implements Schema, AnnotatedEdmItem {
+public class SchemaImpl extends AbstractSchema implements Schema, AnnotatedEdmItem {
 
   private static final long serialVersionUID = 4453992249818796144L;
 
@@ -50,7 +49,7 @@ public class SchemaImpl extends AbstractSchema<EntityContainerImpl, EntityTypeIm
 
   private final List<TypeDefinitionImpl> typeDefinitions = new ArrayList<TypeDefinitionImpl>();
 
-  private Annotation annotation;
+  private AnnotationImpl annotation;
 
   public List<ActionImpl> getActions() {
     return actions;
@@ -86,22 +85,6 @@ public class SchemaImpl extends AbstractSchema<EntityContainerImpl, EntityTypeIm
     return annotations;
   }
 
-  @Override
-  public List<EnumTypeImpl> getEnumTypes() {
-    return enumTypes;
-  }
-
-  @Override
-  public EnumTypeImpl getEnumType(final String name) {
-    EnumTypeImpl result = null;
-    for (EnumTypeImpl type : getEnumTypes()) {
-      if (name.equals(type.getName())) {
-        result = type;
-      }
-    }
-    return result;
-  }
-
   public List<FunctionImpl> getFunctions() {
     return functions;
   }
@@ -152,8 +135,28 @@ public class SchemaImpl extends AbstractSchema<EntityContainerImpl, EntityTypeIm
   }
 
   @Override
-  public List<EntityTypeImpl> getEntityTypes() {
-    return entityTypes;
+  public AnnotationImpl getAnnotation() {
+    return annotation;
+  }
+
+  @Override
+  public void setAnnotation(final Annotation annotation) {
+    this.annotation = (AnnotationImpl) annotation;
+  }
+
+  @Override
+  public EnumTypeImpl getEnumType(final String name) {
+    return (EnumTypeImpl) super.getEnumType(name);
+  }
+
+  @Override
+  public List<EnumTypeImpl> getEnumTypes() {
+    return enumTypes;
+  }
+
+  @Override
+  public ComplexTypeImpl getComplexType(final String name) {
+    return (ComplexTypeImpl) super.getComplexType(name);
   }
 
   @Override
@@ -162,12 +165,12 @@ public class SchemaImpl extends AbstractSchema<EntityContainerImpl, EntityTypeIm
   }
 
   @Override
-  public Annotation getAnnotation() {
-    return annotation;
+  public EntityTypeImpl getEntityType(final String name) {
+    return (EntityTypeImpl) super.getEntityType(name);
   }
 
   @Override
-  public void setAnnotation(final Annotation annotation) {
-    this.annotation = annotation;
+  public List<EntityTypeImpl> getEntityTypes() {
+    return entityTypes;
   }
 }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/SingletonDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/SingletonDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/SingletonDeserializer.java
index e5520ca..89fe59e 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/SingletonDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/SingletonDeserializer.java
@@ -43,10 +43,10 @@ public class SingletonDeserializer extends AbstractEdmDeserializer<SingletonImpl
         } else if ("NavigationPropertyBinding".equals(jp.getCurrentName())) {
           jp.nextToken();
           singleton.getNavigationPropertyBindings().add(
-                  jp.readValueAs( NavigationPropertyBindingImpl.class));
+                  jp.readValueAs(NavigationPropertyBindingImpl.class));
         } else if ("Annotation".equals(jp.getCurrentName())) {
           jp.nextToken();
-          singleton.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          singleton.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/TermDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/TermDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/TermDeserializer.java
index 38a267e..c72c726 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/TermDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/TermDeserializer.java
@@ -64,7 +64,7 @@ public class TermDeserializer extends AbstractEdmDeserializer<TermImpl> {
           }
         } else if ("Annotation".equals(jp.getCurrentName())) {
           jp.nextToken();
-          term.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          term.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/AbstractElOrAttrConstruct.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/AbstractElOrAttrConstruct.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/AbstractElOrAttrConstruct.java
index f8e7725..8f3365f 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/AbstractElOrAttrConstruct.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/AbstractElOrAttrConstruct.java
@@ -21,7 +21,7 @@ package org.apache.olingo.odata4.client.core.edm.v4.annotation;
 /**
  * Groups dynamic expressions that may be provided using element notation or attribute notation.
  */
-abstract class AbstractElOrAttrConstruct extends DynExprConstruct {
+abstract class AbstractElOrAttrConstruct extends DynExprConstructImpl {
 
   private static final long serialVersionUID = 5503275111425750339L;
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/AnnotatedDynExprConstruct.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/AnnotatedDynExprConstruct.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/AnnotatedDynExprConstruct.java
index 1f9adfb..1fa7f84 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/AnnotatedDynExprConstruct.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/AnnotatedDynExprConstruct.java
@@ -20,20 +20,21 @@ package org.apache.olingo.odata4.client.core.edm.v4.annotation;
 
 import org.apache.olingo.odata4.client.api.edm.v4.Annotation;
 import org.apache.olingo.odata4.client.core.edm.v4.AnnotatedEdmItem;
+import org.apache.olingo.odata4.client.core.edm.v4.AnnotationImpl;
 
-public abstract class AnnotatedDynExprConstruct extends DynExprConstruct implements AnnotatedEdmItem {
+abstract class AnnotatedDynExprConstruct extends DynExprConstructImpl implements AnnotatedEdmItem {
 
   private static final long serialVersionUID = -8117155475397749038L;
 
-  private Annotation annotation;
+  private AnnotationImpl annotation;
 
   @Override
-  public Annotation getAnnotation() {
+  public AnnotationImpl getAnnotation() {
     return annotation;
   }
 
   @Override
   public void setAnnotation(final Annotation annotation) {
-    this.annotation = annotation;
+    this.annotation = (AnnotationImpl) annotation;
   }
 }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Apply.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Apply.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Apply.java
index 3f05ec1..9c5b9c7 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Apply.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Apply.java
@@ -35,7 +35,7 @@ public class Apply extends AnnotatedDynExprConstruct {
 
   private String function;
 
-  private final List<ExprConstruct> parameters = new ArrayList<ExprConstruct>();
+  private final List<ExprConstructImpl> parameters = new ArrayList<ExprConstructImpl>();
 
   public String getFunction() {
     return function;
@@ -45,7 +45,7 @@ public class Apply extends AnnotatedDynExprConstruct {
     this.function = function;
   }
 
-  public List<ExprConstruct> getParameters() {
+  public List<ExprConstructImpl> getParameters() {
     return parameters;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ApplyDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ApplyDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ApplyDeserializer.java
index 9d03068..f65b7fa 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ApplyDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ApplyDeserializer.java
@@ -40,11 +40,11 @@ public class ApplyDeserializer extends AbstractEdmDeserializer<Apply> {
         if ("Function".equals(jp.getCurrentName())) {
           apply.setFunction(jp.nextTextValue());
         } else if ("Annotation".equals(jp.getCurrentName())) {
-          apply.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          apply.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         } else if (isAnnotationConstExprConstruct(jp)) {
           apply.getParameters().add(parseAnnotationConstExprConstruct(jp));
         } else {
-          apply.getParameters().add(jp.readValueAs( DynExprConstruct.class));
+          apply.getParameters().add(jp.readValueAs(DynExprConstructImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Cast.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Cast.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Cast.java
index efb00d4..6085ba0 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Cast.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Cast.java
@@ -36,7 +36,7 @@ public class Cast extends AnnotatedDynExprConstruct {
 
   private String srid;
 
-  private DynExprConstruct value;
+  private DynExprConstructImpl value;
 
   public String getType() {
     return type;
@@ -78,11 +78,11 @@ public class Cast extends AnnotatedDynExprConstruct {
     this.srid = srid;
   }
 
-  public DynExprConstruct getValue() {
+  public DynExprConstructImpl getValue() {
     return value;
   }
 
-  public void setValue(final DynExprConstruct value) {
+  public void setValue(final DynExprConstructImpl value) {
     this.value = value;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/CastDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/CastDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/CastDeserializer.java
index 3219776..b97c5e5 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/CastDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/CastDeserializer.java
@@ -41,7 +41,7 @@ public class CastDeserializer extends AbstractEdmDeserializer<Cast> {
         if ("Type".equals(jp.getCurrentName())) {
           cast.setType(jp.nextTextValue());
         } else if ("Annotation".equals(jp.getCurrentName())) {
-          cast.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          cast.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         } else if ("MaxLength".equals(jp.getCurrentName())) {
           cast.setMaxLength(jp.nextTextValue());
         } else if ("Precision".equals(jp.getCurrentName())) {
@@ -51,7 +51,7 @@ public class CastDeserializer extends AbstractEdmDeserializer<Cast> {
         } else if ("SRID".equals(jp.getCurrentName())) {
           cast.setSrid(jp.nextTextValue());
         } else {
-          cast.setValue(jp.readValueAs( DynExprConstruct.class));
+          cast.setValue(jp.readValueAs(DynExprConstructImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Collection.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Collection.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Collection.java
index dd2efb7..a23604c 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Collection.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/Collection.java
@@ -23,13 +23,13 @@ import java.util.ArrayList;
 import java.util.List;
 
 @JsonDeserialize(using = CollectionDeserializer.class)
-public class Collection extends DynExprConstruct {
+public class Collection extends DynExprConstructImpl {
 
   private static final long serialVersionUID = -4975881520695477686L;
 
-  private final List<ExprConstruct> items = new ArrayList<ExprConstruct>();
+  private final List<ExprConstructImpl> items = new ArrayList<ExprConstructImpl>();
 
-  public List<ExprConstruct> getItems() {
+  public List<ExprConstructImpl> getItems() {
     return items;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/CollectionDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/CollectionDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/CollectionDeserializer.java
index 986a22a..a16748f 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/CollectionDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/CollectionDeserializer.java
@@ -39,7 +39,7 @@ public class CollectionDeserializer extends AbstractEdmDeserializer<Collection>
         if (isAnnotationConstExprConstruct(jp)) {
           collection.getItems().add(parseAnnotationConstExprConstruct(jp));
         } else {
-          collection.getItems().add(jp.readValueAs( DynExprConstruct.class));
+          collection.getItems().add(jp.readValueAs( DynExprConstructImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ConstExprConstruct.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ConstExprConstruct.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ConstExprConstruct.java
deleted file mode 100644
index d7ff53b..0000000
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ConstExprConstruct.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * 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
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.odata4.client.core.edm.v4.annotation;
-
-public class ConstExprConstruct extends ExprConstruct {
-
-  private static final long serialVersionUID = 2250072064504668969L;
-
-  public enum Type {
-
-    Binary,
-    Bool,
-    Date,
-    DateTimeOffset,
-    Decimal,
-    Duration,
-    EnumMember,
-    Float,
-    Guid,
-    Int,
-    String,
-    TimeOfDay;
-
-    public static Type fromString(final String value) {
-      Type result = null;
-      try {
-        result = valueOf(value);
-      } catch (IllegalArgumentException e) {
-        // ignore
-      }
-      return result;
-    }
-  }
-
-  private Type type;
-
-  private String value;
-
-  public Type getType() {
-    return type;
-  }
-
-  public void setType(final Type type) {
-    this.type = type;
-  }
-
-  public String getValue() {
-    return value;
-  }
-
-  public void setValue(final String value) {
-    this.value = value;
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ConstExprConstructImpl.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ConstExprConstructImpl.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ConstExprConstructImpl.java
new file mode 100644
index 0000000..51b6244
--- /dev/null
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ConstExprConstructImpl.java
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * 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
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.odata4.client.core.edm.v4.annotation;
+
+import org.apache.olingo.odata4.client.api.edm.v4.annotation.ConstExprConstruct;
+
+public class ConstExprConstructImpl extends ExprConstructImpl implements ConstExprConstruct {
+
+  private static final long serialVersionUID = 2250072064504668969L;
+
+  private Type type;
+
+  private String value;
+
+  @Override
+  public Type getType() {
+    return type;
+  }
+
+  @Override
+  public void setType(final Type type) {
+    this.type = type;
+  }
+
+  @Override
+  public String getValue() {
+    return value;
+  }
+
+  @Override
+  public void setValue(final String value) {
+    this.value = value;
+  }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstruct.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstruct.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstruct.java
deleted file mode 100644
index 0316674..0000000
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstruct.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * 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
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.odata4.client.core.edm.v4.annotation;
-
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-
-@JsonDeserialize(using = DynExprConstructDeserializer.class)
-public abstract class DynExprConstruct extends ExprConstruct {
-
-  private static final long serialVersionUID = -642012862023177349L;
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstructDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstructDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstructDeserializer.java
index 3f80881..d3d4fd4 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstructDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstructDeserializer.java
@@ -28,7 +28,7 @@ import org.apache.commons.lang3.ArrayUtils;
 import org.apache.commons.lang3.ClassUtils;
 import org.apache.olingo.odata4.client.core.op.impl.AbstractEdmDeserializer;
 
-public class DynExprConstructDeserializer extends AbstractEdmDeserializer<DynExprConstruct> {
+public class DynExprConstructDeserializer extends AbstractEdmDeserializer<DynExprConstructImpl> {
 
     private static final String[] EL_OR_ATTR = { AnnotationPath.class.getSimpleName(), Path.class.getSimpleName() };
 
@@ -62,12 +62,12 @@ public class DynExprConstructDeserializer extends AbstractEdmDeserializer<DynExp
         }
     }
 
-    private ExprConstruct parseConstOrEnumExprConstruct(final JsonParser jp) throws IOException {
-        ExprConstruct result;
+    private ExprConstructImpl parseConstOrEnumExprConstruct(final JsonParser jp) throws IOException {
+        ExprConstructImpl result;
         if (isAnnotationConstExprConstruct(jp)) {
             result = parseAnnotationConstExprConstruct(jp);
         } else {
-            result = jp.readValueAs( DynExprConstruct.class);
+            result = jp.readValueAs( DynExprConstructImpl.class);
         }
         jp.nextToken();
 
@@ -75,10 +75,10 @@ public class DynExprConstructDeserializer extends AbstractEdmDeserializer<DynExp
     }
 
     @Override
-    protected DynExprConstruct doDeserialize(final JsonParser jp, final DeserializationContext ctxt)
+    protected DynExprConstructImpl doDeserialize(final JsonParser jp, final DeserializationContext ctxt)
             throws IOException, JsonProcessingException {
 
-        DynExprConstruct construct = null;
+        DynExprConstructImpl construct = null;
 
         if (DynExprSingleParamOp.Type.fromString(jp.getCurrentName()) != null) {
             final DynExprSingleParamOp dynExprSingleParamOp = new DynExprSingleParamOp();
@@ -86,7 +86,7 @@ public class DynExprConstructDeserializer extends AbstractEdmDeserializer<DynExp
 
             jp.nextToken();
             jp.nextToken();
-            dynExprSingleParamOp.setExpression(jp.readValueAs( DynExprConstruct.class));
+            dynExprSingleParamOp.setExpression(jp.readValueAs( DynExprConstructImpl.class));
 
             construct = dynExprSingleParamOp;
         } else if (DynExprDoubleParamOp.Type.fromString(jp.getCurrentName()) != null) {
@@ -95,8 +95,8 @@ public class DynExprConstructDeserializer extends AbstractEdmDeserializer<DynExp
 
             jp.nextToken();
             jp.nextToken();
-            dynExprDoubleParamOp.setLeft(jp.readValueAs( DynExprConstruct.class));
-            dynExprDoubleParamOp.setRight(jp.readValueAs( DynExprConstruct.class));
+            dynExprDoubleParamOp.setLeft(jp.readValueAs( DynExprConstructImpl.class));
+            dynExprDoubleParamOp.setRight(jp.readValueAs( DynExprConstructImpl.class));
 
             construct = dynExprDoubleParamOp;
         } else if (ArrayUtils.contains(EL_OR_ATTR, jp.getCurrentName())) {

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstructImpl.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstructImpl.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstructImpl.java
new file mode 100644
index 0000000..9442977
--- /dev/null
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprConstructImpl.java
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * 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
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.odata4.client.core.edm.v4.annotation;
+
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import org.apache.olingo.odata4.client.api.edm.v4.annotation.DynExprConstruct;
+
+@JsonDeserialize(using = DynExprConstructDeserializer.class)
+public abstract class DynExprConstructImpl extends ExprConstructImpl implements DynExprConstruct {
+
+  private static final long serialVersionUID = -642012862023177349L;
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprDoubleParamOp.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprDoubleParamOp.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprDoubleParamOp.java
index a2dbc0a..ca39a42 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprDoubleParamOp.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprDoubleParamOp.java
@@ -18,7 +18,7 @@
  */
 package org.apache.olingo.odata4.client.core.edm.v4.annotation;
 
-public class DynExprDoubleParamOp extends DynExprConstruct {
+public class DynExprDoubleParamOp extends DynExprConstructImpl {
 
   private static final long serialVersionUID = -7974475975925167731L;
 
@@ -40,9 +40,9 @@ public class DynExprDoubleParamOp extends DynExprConstruct {
 
   private Type type;
 
-  private DynExprConstruct left;
+  private DynExprConstructImpl left;
 
-  private DynExprConstruct right;
+  private DynExprConstructImpl right;
 
   public Type getType() {
     return type;
@@ -52,19 +52,19 @@ public class DynExprDoubleParamOp extends DynExprConstruct {
     this.type = type;
   }
 
-  public DynExprConstruct getLeft() {
+  public DynExprConstructImpl getLeft() {
     return left;
   }
 
-  public void setLeft(final DynExprConstruct left) {
+  public void setLeft(final DynExprConstructImpl left) {
     this.left = left;
   }
 
-  public DynExprConstruct getRight() {
+  public DynExprConstructImpl getRight() {
     return right;
   }
 
-  public void setRight(final DynExprConstruct right) {
+  public void setRight(final DynExprConstructImpl right) {
     this.right = right;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprSingleParamOp.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprSingleParamOp.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprSingleParamOp.java
index 06fc03a..0d57101 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprSingleParamOp.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/DynExprSingleParamOp.java
@@ -18,7 +18,7 @@
  */
 package org.apache.olingo.odata4.client.core.edm.v4.annotation;
 
-public class DynExprSingleParamOp extends DynExprConstruct {
+public class DynExprSingleParamOp extends DynExprConstructImpl {
 
   private static final long serialVersionUID = -7974475975925167731L;
 
@@ -46,7 +46,7 @@ public class DynExprSingleParamOp extends DynExprConstruct {
 
   private Type type;
 
-  private DynExprConstruct expression;
+  private DynExprConstructImpl expression;
 
   public Type getType() {
     return type;
@@ -56,11 +56,11 @@ public class DynExprSingleParamOp extends DynExprConstruct {
     this.type = type;
   }
 
-  public DynExprConstruct getExpression() {
+  public DynExprConstructImpl getExpression() {
     return expression;
   }
 
-  public void setExpression(final DynExprConstruct expression) {
+  public void setExpression(final DynExprConstructImpl expression) {
     this.expression = expression;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ExprConstruct.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ExprConstruct.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ExprConstruct.java
deleted file mode 100644
index 597edf2..0000000
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ExprConstruct.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * 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
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.odata4.client.core.edm.v4.annotation;
-
-import org.apache.olingo.odata4.client.core.edm.AbstractEdmItem;
-
-public abstract class ExprConstruct extends AbstractEdmItem {
-
-  private static final long serialVersionUID = 7108626008005050492L;
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ExprConstructImpl.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ExprConstructImpl.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ExprConstructImpl.java
new file mode 100644
index 0000000..4a5185d
--- /dev/null
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/ExprConstructImpl.java
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * 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
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.odata4.client.core.edm.v4.annotation;
+
+import org.apache.olingo.odata4.client.core.edm.AbstractEdmItem;
+
+public abstract class ExprConstructImpl extends AbstractEdmItem {
+
+  private static final long serialVersionUID = 7108626008005050492L;
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/If.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/If.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/If.java
index e08a5a4..b562376 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/If.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/If.java
@@ -22,33 +22,33 @@ public class If extends AnnotatedDynExprConstruct {
 
   private static final long serialVersionUID = 6752952406406218936L;
 
-  private ExprConstruct guard;
+  private ExprConstructImpl guard;
 
-  private ExprConstruct _then;
+  private ExprConstructImpl _then;
 
-  private ExprConstruct _else;
+  private ExprConstructImpl _else;
 
-  public ExprConstruct getGuard() {
+  public ExprConstructImpl getGuard() {
     return guard;
   }
 
-  public void setGuard(final ExprConstruct guard) {
+  public void setGuard(final ExprConstructImpl guard) {
     this.guard = guard;
   }
 
-  public ExprConstruct getThen() {
+  public ExprConstructImpl getThen() {
     return _then;
   }
 
-  public void setThen(final ExprConstruct _then) {
+  public void setThen(final ExprConstructImpl _then) {
     this._then = _then;
   }
 
-  public ExprConstruct getElse() {
+  public ExprConstructImpl getElse() {
     return _else;
   }
 
-  public void setElse(final ExprConstruct _else) {
+  public void setElse(final ExprConstructImpl _else) {
     this._else = _else;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/IsOf.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/IsOf.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/IsOf.java
index 6258ea9..73912bd 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/IsOf.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/IsOf.java
@@ -36,7 +36,7 @@ public class IsOf extends AnnotatedDynExprConstruct {
 
   private String srid;
 
-  private DynExprConstruct value;
+  private DynExprConstructImpl value;
 
   public String getType() {
     return type;
@@ -78,11 +78,11 @@ public class IsOf extends AnnotatedDynExprConstruct {
     this.srid = srid;
   }
 
-  public DynExprConstruct getValue() {
+  public DynExprConstructImpl getValue() {
     return value;
   }
 
-  public void setValue(final DynExprConstruct value) {
+  public void setValue(final DynExprConstructImpl value) {
     this.value = value;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/IsOfDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/IsOfDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/IsOfDeserializer.java
index 071a1c6..d8602c9 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/IsOfDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/IsOfDeserializer.java
@@ -41,7 +41,7 @@ public class IsOfDeserializer extends AbstractEdmDeserializer<IsOf> {
         if ("Type".equals(jp.getCurrentName())) {
           isof.setType(jp.nextTextValue());
         } else if ("Annotation".equals(jp.getCurrentName())) {
-          isof.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          isof.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         } else if ("MaxLength".equals(jp.getCurrentName())) {
           isof.setMaxLength(jp.nextTextValue());
         } else if ("Precision".equals(jp.getCurrentName())) {
@@ -51,7 +51,7 @@ public class IsOfDeserializer extends AbstractEdmDeserializer<IsOf> {
         } else if ("SRID".equals(jp.getCurrentName())) {
           isof.setSrid(jp.nextTextValue());
         } else {
-          isof.setValue(jp.readValueAs( DynExprConstruct.class));
+          isof.setValue(jp.readValueAs(DynExprConstructImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/LabeledElement.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/LabeledElement.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/LabeledElement.java
index cfd4929..318347f 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/LabeledElement.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/LabeledElement.java
@@ -27,7 +27,7 @@ public class LabeledElement extends AnnotatedDynExprConstruct {
 
   private String name;
 
-  private DynExprConstruct value;
+  private DynExprConstructImpl value;
 
   public String getName() {
     return name;
@@ -37,11 +37,11 @@ public class LabeledElement extends AnnotatedDynExprConstruct {
     this.name = name;
   }
 
-  public DynExprConstruct getValue() {
+  public DynExprConstructImpl getValue() {
     return value;
   }
 
-  public void setValue(final DynExprConstruct value) {
+  public void setValue(final DynExprConstructImpl value) {
     this.value = value;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/LabeledElementDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/LabeledElementDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/LabeledElementDeserializer.java
index 1f238b7..4ae9f64 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/LabeledElementDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/LabeledElementDeserializer.java
@@ -40,9 +40,9 @@ public class LabeledElementDeserializer extends AbstractEdmDeserializer<LabeledE
         if ("Name".equals(jp.getCurrentName())) {
           element.setName(jp.nextTextValue());
         } else if ("Annotation".equals(jp.getCurrentName())) {
-          element.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          element.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         } else {
-          element.setValue(jp.readValueAs( DynExprConstruct.class));
+          element.setValue(jp.readValueAs(DynExprConstructImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/NullDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/NullDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/NullDeserializer.java
index 3aa7db7..98896d7 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/NullDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/NullDeserializer.java
@@ -38,7 +38,7 @@ public class NullDeserializer extends AbstractEdmDeserializer<Null> {
       final JsonToken token = jp.getCurrentToken();
       if (token == JsonToken.FIELD_NAME) {
         if ("Annotation".equals(jp.getCurrentName())) {
-          _null.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          _null.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/PropertyValue.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/PropertyValue.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/PropertyValue.java
index 5bbdc06..fab3829 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/PropertyValue.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/PropertyValue.java
@@ -27,7 +27,7 @@ public class PropertyValue extends AnnotatedDynExprConstruct {
 
   private String property;
 
-  private ExprConstruct value;
+  private ExprConstructImpl value;
 
   public String getProperty() {
     return property;
@@ -37,11 +37,11 @@ public class PropertyValue extends AnnotatedDynExprConstruct {
     this.property = property;
   }
 
-  public ExprConstruct getValue() {
+  public ExprConstructImpl getValue() {
     return value;
   }
 
-  public void setValue(final ExprConstruct value) {
+  public void setValue(final ExprConstructImpl value) {
     this.value = value;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/PropertyValueDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/PropertyValueDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/PropertyValueDeserializer.java
index 0e48dfc..af2ffb5 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/PropertyValueDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/PropertyValueDeserializer.java
@@ -40,11 +40,11 @@ public class PropertyValueDeserializer extends AbstractEdmDeserializer<PropertyV
         if ("Property".equals(jp.getCurrentName())) {
           propValue.setProperty(jp.nextTextValue());
         } else if ("Annotation".equals(jp.getCurrentName())) {
-          propValue.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          propValue.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         } else if (isAnnotationConstExprConstruct(jp)) {
           propValue.setValue(parseAnnotationConstExprConstruct(jp));
         } else {
-          propValue.setValue(jp.readValueAs( DynExprConstruct.class));
+          propValue.setValue(jp.readValueAs(DynExprConstructImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/RecordDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/RecordDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/RecordDeserializer.java
index d14f007..6c97568 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/RecordDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/RecordDeserializer.java
@@ -40,9 +40,9 @@ public class RecordDeserializer extends AbstractEdmDeserializer<Record> {
         if ("Tyoe".equals(jp.getCurrentName())) {
           record.setType(jp.nextTextValue());
         } else if ("Annotation".equals(jp.getCurrentName())) {
-          record.setAnnotation(jp.readValueAs( AnnotationImpl.class));
+          record.setAnnotation(jp.readValueAs(AnnotationImpl.class));
         } else {
-          record.getPropertyValues().add(jp.readValueAs( PropertyValue.class));
+          record.getPropertyValues().add(jp.readValueAs(PropertyValue.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/UrlRef.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/UrlRef.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/UrlRef.java
index 164ddfe..5cc0f9b 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/UrlRef.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/UrlRef.java
@@ -21,17 +21,17 @@ package org.apache.olingo.odata4.client.core.edm.v4.annotation;
 import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
 
 @JsonDeserialize(using = UrlRefDeserializer.class)
-public class UrlRef extends DynExprConstruct {
+public class UrlRef extends DynExprConstructImpl {
 
   private static final long serialVersionUID = 3755101394647430897L;
 
-  private ExprConstruct value;
+  private ExprConstructImpl value;
 
-  public ExprConstruct getValue() {
+  public ExprConstructImpl getValue() {
     return value;
   }
 
-  public void setValue(final ExprConstruct value) {
+  public void setValue(final ExprConstructImpl value) {
     this.value = value;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/UrlRefDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/UrlRefDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/UrlRefDeserializer.java
index b37c3e8..de91b7c 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/UrlRefDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/edm/v4/annotation/UrlRefDeserializer.java
@@ -39,7 +39,7 @@ public class UrlRefDeserializer extends AbstractEdmDeserializer<UrlRef> {
         if (isAnnotationConstExprConstruct(jp)) {
           urlref.setValue(parseAnnotationConstExprConstruct(jp));
         } else {
-          urlref.setValue(jp.readValueAs( DynExprConstruct.class));
+          urlref.setValue(jp.readValueAs( DynExprConstructImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/AbstractEdmDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/AbstractEdmDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/AbstractEdmDeserializer.java
index 6e6e103..c6b5bba 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/AbstractEdmDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/AbstractEdmDeserializer.java
@@ -26,19 +26,19 @@ import com.fasterxml.jackson.dataformat.xml.deser.FromXmlParser;
 import java.io.IOException;
 import org.apache.olingo.odata4.client.api.ODataClient;
 import org.apache.olingo.odata4.client.core.edm.v4.ReturnTypeImpl;
-import org.apache.olingo.odata4.client.core.edm.v4.annotation.ConstExprConstruct;
+import org.apache.olingo.odata4.client.core.edm.v4.annotation.ConstExprConstructImpl;
 
 public abstract class AbstractEdmDeserializer<T> extends JsonDeserializer<T> {
 
   protected ODataClient client;
 
   protected boolean isAnnotationConstExprConstruct(final JsonParser jp) throws IOException {
-    return ConstExprConstruct.Type.fromString(jp.getCurrentName()) != null;
+    return ConstExprConstructImpl.Type.fromString(jp.getCurrentName()) != null;
   }
 
-  protected ConstExprConstruct parseAnnotationConstExprConstruct(final JsonParser jp) throws IOException {
-    final ConstExprConstruct constExpr = new ConstExprConstruct();
-    constExpr.setType(ConstExprConstruct.Type.fromString(jp.getCurrentName()));
+  protected ConstExprConstructImpl parseAnnotationConstExprConstruct(final JsonParser jp) throws IOException {
+    final ConstExprConstructImpl constExpr = new ConstExprConstructImpl();
+    constExpr.setType(ConstExprConstructImpl.Type.fromString(jp.getCurrentName()));
     constExpr.setValue(jp.nextTextValue());
     return constExpr;
   }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/ComplexTypeDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/ComplexTypeDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/ComplexTypeDeserializer.java
index 511bdb1..81bbd48 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/ComplexTypeDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/ComplexTypeDeserializer.java
@@ -71,7 +71,7 @@ public class ComplexTypeDeserializer extends AbstractEdmDeserializer<AbstractCom
         } else if ("Annotation".equals(jp.getCurrentName())) {
           jp.nextToken();
           ((org.apache.olingo.odata4.client.core.edm.v4.ComplexTypeImpl) complexType).
-                  setAnnotation(jp.readValueAs( AnnotationImpl.class));
+                  setAnnotation(jp.readValueAs(AnnotationImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EntityContainerDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EntityContainerDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EntityContainerDeserializer.java
index 2f11064..babfaa8 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EntityContainerDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EntityContainerDeserializer.java
@@ -67,15 +67,15 @@ public class EntityContainerDeserializer extends AbstractEdmDeserializer<Abstrac
         } else if ("AssociationSet".equals(jp.getCurrentName())) {
           jp.nextToken();
           ((org.apache.olingo.odata4.client.core.edm.v3.EntityContainerImpl) entityContainer).
-                  getAssociationSets().add(jp.readValueAs( AssociationSetImpl.class));
+                  getAssociationSets().add(jp.readValueAs(AssociationSetImpl.class));
         } else if ("Singleton".equals(jp.getCurrentName())) {
           jp.nextToken();
           ((org.apache.olingo.odata4.client.core.edm.v4.EntityContainerImpl) entityContainer).
-                  getSingletons().add(jp.readValueAs( SingletonImpl.class));
+                  getSingletons().add(jp.readValueAs(SingletonImpl.class));
         } else if ("ActionImport".equals(jp.getCurrentName())) {
           jp.nextToken();
           ((org.apache.olingo.odata4.client.core.edm.v4.EntityContainerImpl) entityContainer).
-                  getActionImports().add(jp.readValueAs( ActionImportImpl.class));
+                  getActionImports().add(jp.readValueAs(ActionImportImpl.class));
         } else if ("FunctionImport".equals(jp.getCurrentName())) {
           jp.nextToken();
           if (entityContainer instanceof org.apache.olingo.odata4.client.core.edm.v3.EntityContainerImpl) {
@@ -90,7 +90,7 @@ public class EntityContainerDeserializer extends AbstractEdmDeserializer<Abstrac
         } else if ("Annotation".equals(jp.getCurrentName())) {
           jp.nextToken();
           ((org.apache.olingo.odata4.client.core.edm.v4.EntityContainerImpl) entityContainer).
-                  setAnnotation(jp.readValueAs( AnnotationImpl.class));
+                  setAnnotation(jp.readValueAs(AnnotationImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EntitySetDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EntitySetDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EntitySetDeserializer.java
index 8240645..078fc65 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EntitySetDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EntitySetDeserializer.java
@@ -53,11 +53,11 @@ public class EntitySetDeserializer extends AbstractEdmDeserializer<AbstractEntit
           jp.nextToken();
           ((org.apache.olingo.odata4.client.core.edm.v4.EntitySetImpl) entitySet).
                   getNavigationPropertyBindings().add(
-                          jp.readValueAs( NavigationPropertyBindingImpl.class));
+                          jp.readValueAs(NavigationPropertyBindingImpl.class));
         } else if ("Annotation".equals(jp.getCurrentName())) {
           jp.nextToken();
           ((org.apache.olingo.odata4.client.core.edm.v4.EntitySetImpl) entitySet).
-                  setAnnotation(jp.readValueAs( AnnotationImpl.class));
+                  setAnnotation(jp.readValueAs(AnnotationImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EnumTypeDeserializer.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EnumTypeDeserializer.java b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EnumTypeDeserializer.java
index 8e09eac..867fac4 100644
--- a/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EnumTypeDeserializer.java
+++ b/odata4-lib/odata4-client-core/src/main/java/org/apache/olingo/odata4/client/core/op/impl/EnumTypeDeserializer.java
@@ -61,7 +61,7 @@ public class EnumTypeDeserializer extends AbstractEdmDeserializer<AbstractEnumTy
         } else if ("Annotation".equals(jp.getCurrentName())) {
           jp.nextToken();
           ((org.apache.olingo.odata4.client.core.edm.v4.EnumTypeImpl) enumType).
-                  setAnnotation(jp.readValueAs( AnnotationImpl.class));
+                  setAnnotation(jp.readValueAs(AnnotationImpl.class));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/test/java/org/apache/olingo/odata4/client/core/v3/MetadataTest.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/test/java/org/apache/olingo/odata4/client/core/v3/MetadataTest.java b/odata4-lib/odata4-client-core/src/test/java/org/apache/olingo/odata4/client/core/v3/MetadataTest.java
index 02cecd9..f887096 100644
--- a/odata4-lib/odata4-client-core/src/test/java/org/apache/olingo/odata4/client/core/v3/MetadataTest.java
+++ b/odata4-lib/odata4-client-core/src/test/java/org/apache/olingo/odata4/client/core/v3/MetadataTest.java
@@ -50,8 +50,8 @@ public class MetadataTest extends AbstractTest {
             readMetadata(getClass().getResourceAsStream("metadata.xml"));
     assertNotNull(metadata);
 
-    final EdmTypeImpl orderCollection
-            = new EdmTypeImpl(metadata, "Collection(Microsoft.Test.OData.Services.AstoriaDefaultService.Order)");
+    final EdmTypeImpl orderCollection = new EdmTypeImpl(metadata,
+            "Collection(Microsoft.Test.OData.Services.AstoriaDefaultService.Order)");
     assertNotNull(orderCollection);
     assertTrue(orderCollection.isCollection());
     assertFalse(orderCollection.isSimpleType());
@@ -71,8 +71,8 @@ public class MetadataTest extends AbstractTest {
     assertFalse(stream.isComplexType());
     assertFalse(stream.isEntityType());
 
-    final List<FunctionImportImpl> functionImports
-            = metadata.getSchemas().get(0).getDefaultEntityContainer().getFunctionImports();
+    final List<FunctionImportImpl> functionImports = metadata.getSchemas().get(0).
+            getDefaultEntityContainer().getFunctionImports();
     int legacyGetters = 0;
     int legacyPosters = 0;
     int actions = 0;

http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/07400abc/odata4-lib/odata4-client-core/src/test/java/org/apache/olingo/odata4/client/core/v4/MetadataTest.java
----------------------------------------------------------------------
diff --git a/odata4-lib/odata4-client-core/src/test/java/org/apache/olingo/odata4/client/core/v4/MetadataTest.java b/odata4-lib/odata4-client-core/src/test/java/org/apache/olingo/odata4/client/core/v4/MetadataTest.java
index e119861..b3c2092 100644
--- a/odata4-lib/odata4-client-core/src/test/java/org/apache/olingo/odata4/client/core/v4/MetadataTest.java
+++ b/odata4-lib/odata4-client-core/src/test/java/org/apache/olingo/odata4/client/core/v4/MetadataTest.java
@@ -44,7 +44,7 @@ import org.apache.olingo.odata4.client.core.edm.v4.SchemaImpl;
 import org.apache.olingo.odata4.client.core.edm.v4.SingletonImpl;
 import org.apache.olingo.odata4.client.core.edm.v4.annotation.Apply;
 import org.apache.olingo.odata4.client.core.edm.v4.annotation.Collection;
-import org.apache.olingo.odata4.client.core.edm.v4.annotation.ConstExprConstruct;
+import org.apache.olingo.odata4.client.core.edm.v4.annotation.ConstExprConstructImpl;
 import org.apache.olingo.odata4.client.core.edm.v4.annotation.Path;
 import org.apache.olingo.odata4.commons.api.edm.constants.StoreGeneratedPattern;
 import org.junit.Test;
@@ -127,7 +127,7 @@ public class MetadataTest extends AbstractTest {
     AnnotationsImpl annots = metadata.getSchema(0).getAnnotationsList("ODataDemo.DemoService/Suppliers");
     assertNotNull(annots);
     assertFalse(annots.getAnnotations().isEmpty());
-    assertEquals(ConstExprConstruct.Type.String,
+    assertEquals(ConstExprConstructImpl.Type.String,
             annots.getAnnotation("Org.OData.Publication.V1.PrivacyPolicyUrl").getConstExpr().getType());
     assertEquals("http://www.odata.org/",
             annots.getAnnotation("Org.OData.Publication.V1.PrivacyPolicyUrl").getConstExpr().getValue());
@@ -225,8 +225,8 @@ public class MetadataTest extends AbstractTest {
     firstArg.setValue("Name");
     assertEquals(firstArg, apply.getParameters().get(0));
 
-    final ConstExprConstruct secondArg = new ConstExprConstruct();
-    secondArg.setType(ConstExprConstruct.Type.String);
+    final ConstExprConstructImpl secondArg = new ConstExprConstructImpl();
+    secondArg.setType(ConstExprConstructImpl.Type.String);
     secondArg.setValue(" in ");
     assertEquals(secondArg, apply.getParameters().get(1));
 
@@ -244,8 +244,8 @@ public class MetadataTest extends AbstractTest {
     assertTrue(tags.getDynExpr() instanceof Collection);
     final Collection collection = (Collection) tags.getDynExpr();
     assertEquals(1, collection.getItems().size());
-    assertEquals(ConstExprConstruct.Type.String, ((ConstExprConstruct) collection.getItems().get(0)).getType());
-    assertEquals("MasterData", ((ConstExprConstruct) collection.getItems().get(0)).getValue());
+    assertEquals(ConstExprConstructImpl.Type.String, ((ConstExprConstructImpl) collection.getItems().get(0)).getType());
+    assertEquals("MasterData", ((ConstExprConstructImpl) collection.getItems().get(0)).getValue());
   }
 
   /**