You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by mi...@apache.org on 2015/09/01 14:45:23 UTC

[21/31] olingo-odata4 git commit: [OLINGO-659] Removed v4 from package and class names

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetails.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetails.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetails.java
new file mode 100644
index 0000000..3772b0f
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetails.java
@@ -0,0 +1,273 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.Annotatable;
+
+// CHECKSTYLE:ON (Maven checkstyle)
+
+@org.apache.olingo.ext.proxy.api.annotations.Namespace("Microsoft.Test.OData.Services.OpenTypesServiceV4")
+@org.apache.olingo.ext.proxy.api.annotations.ComplexType(name = "ContactDetails",
+    isOpenType = false,
+    isAbstract = false)
+public interface ContactDetails
+    extends org.apache.olingo.ext.proxy.api.ComplexType<ContactDetails>,
+    org.apache.olingo.ext.proxy.api.StructuredQuery<ContactDetails> {
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "FirstContacted",
+      type = "Edm.Binary",
+      nullable = true,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  byte[] getFirstContacted();
+
+  void setFirstContacted(byte[] _firstContacted);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "LastContacted",
+      type = "Edm.DateTimeOffset",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.sql.Timestamp getLastContacted();
+
+  void setLastContacted(java.sql.Timestamp _lastContacted);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Contacted",
+      type = "Edm.Date",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.util.Calendar getContacted();
+
+  void setContacted(java.util.Calendar _contacted);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "GUID",
+      type = "Edm.Guid",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.util.UUID getGUID();
+
+  void setGUID(java.util.UUID _gUID);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "PreferedContactTime",
+      type = "Edm.TimeOfDay",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.util.Calendar getPreferedContactTime();
+
+  void setPreferedContactTime(java.util.Calendar _preferedContactTime);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Byte",
+      type = "Edm.Byte",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Short getByte();
+
+  void setByte(java.lang.Short _byte);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "SignedByte",
+      type = "Edm.SByte",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Byte getSignedByte();
+
+  void setSignedByte(java.lang.Byte _signedByte);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Double",
+      type = "Edm.Double",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Double getDouble();
+
+  void setDouble(java.lang.Double _double);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Single",
+      type = "Edm.Single",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Float getSingle();
+
+  void setSingle(java.lang.Float _single);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Short",
+      type = "Edm.Int16",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Short getShort();
+
+  void setShort(java.lang.Short _short);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Int",
+      type = "Edm.Int32",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Integer getInt();
+
+  void setInt(java.lang.Integer _int);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Long",
+      type = "Edm.Int64",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Long getLong();
+
+  void setLong(java.lang.Long _long);
+
+  Annotations annotations();
+
+  interface Annotations {
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "FirstContacted",
+        type = "Edm.Binary")
+    Annotatable getFirstContactedAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "LastContacted",
+        type = "Edm.DateTimeOffset")
+    Annotatable getLastContactedAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "Contacted",
+        type = "Edm.Date")
+    Annotatable getContactedAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "GUID",
+        type = "Edm.Guid")
+    Annotatable getGUIDAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "PreferedContactTime",
+        type = "Edm.TimeOfDay")
+    Annotatable getPreferedContactTimeAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "Byte",
+        type = "Edm.Byte")
+    Annotatable getByteAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "SignedByte",
+        type = "Edm.SByte")
+    Annotatable getSignedByteAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "Double",
+        type = "Edm.Double")
+    Annotatable getDoubleAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "Single",
+        type = "Edm.Single")
+    Annotatable getSingleAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "Short",
+        type = "Edm.Int16")
+    Annotatable getShortAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "Int",
+        type = "Edm.Int32")
+    Annotatable getIntAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "Long",
+        type = "Edm.Int64")
+    Annotatable getLongAnnotations();
+
+  }
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsCollection.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsCollection.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsCollection.java
new file mode 100644
index 0000000..035c118
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsCollection.java
@@ -0,0 +1,41 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import java.util.Collection;
+// CHECKSTYLE:ON (Maven checkstyle)
+
+import org.apache.olingo.ext.proxy.api.AbstractTerm;
+
+public interface ContactDetailsCollection
+    extends
+    org.apache.olingo.ext.proxy.api.StructuredCollectionQuery<ContactDetailsCollection>,
+org.apache.olingo.ext.proxy.api.ComplexCollection<ContactDetails, ContactDetailsCollection, ContactDetailsCollection> {
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+
+  Object getAnnotation(Class<? extends AbstractTerm> term);
+
+  Collection<Class<? extends AbstractTerm>> getAnnotationTerms();
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsCollectionComposableInvoker.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsCollectionComposableInvoker.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsCollectionComposableInvoker.java
new file mode 100644
index 0000000..d77451a
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsCollectionComposableInvoker.java
@@ -0,0 +1,32 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+
+public interface ContactDetailsCollectionComposableInvoker
+    extends
+    org.apache.olingo.ext.proxy.api.StructuredCollectionComposableInvoker<ContactDetailsCollection, ContactDetailsCollection.Operations> {
+
+  @Override
+  ContactDetailsCollectionComposableInvoker select(String... select);
+
+  @Override
+  ContactDetailsCollectionComposableInvoker expand(String... expand);
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsComposableInvoker.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsComposableInvoker.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsComposableInvoker.java
new file mode 100644
index 0000000..c55eec1
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/ContactDetailsComposableInvoker.java
@@ -0,0 +1,213 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+
+public interface ContactDetailsComposableInvoker
+    extends org.apache.olingo.ext.proxy.api.StructuredComposableInvoker<ContactDetails, ContactDetails.Operations>
+{
+
+  @Override
+  ContactDetailsComposableInvoker select(String... select);
+
+  @Override
+  ContactDetailsComposableInvoker expand(String... expand);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "FirstContacted",
+      type = "Edm.Binary",
+      nullable = true,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  byte[] getFirstContacted();
+
+  void setFirstContacted(byte[] _firstContacted);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "LastContacted",
+      type = "Edm.DateTimeOffset",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.sql.Timestamp getLastContacted();
+
+  void setLastContacted(java.sql.Timestamp _lastContacted);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Contacted",
+      type = "Edm.Date",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.util.Calendar getContacted();
+
+  void setContacted(java.util.Calendar _contacted);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "GUID",
+      type = "Edm.Guid",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.util.UUID getGUID();
+
+  void setGUID(java.util.UUID _gUID);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "PreferedContactTime",
+      type = "Edm.TimeOfDay",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.util.Calendar getPreferedContactTime();
+
+  void setPreferedContactTime(java.util.Calendar _preferedContactTime);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Byte",
+      type = "Edm.Byte",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Short getByte();
+
+  void setByte(java.lang.Short _byte);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "SignedByte",
+      type = "Edm.SByte",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Byte getSignedByte();
+
+  void setSignedByte(java.lang.Byte _signedByte);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Double",
+      type = "Edm.Double",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Double getDouble();
+
+  void setDouble(java.lang.Double _double);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Single",
+      type = "Edm.Single",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Float getSingle();
+
+  void setSingle(java.lang.Float _single);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Short",
+      type = "Edm.Int16",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Short getShort();
+
+  void setShort(java.lang.Short _short);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Int",
+      type = "Edm.Int32",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Integer getInt();
+
+  void setInt(java.lang.Integer _int);
+
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Long",
+      type = "Edm.Int64",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Long getLong();
+
+  void setLong(java.lang.Long _long);
+
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRow.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRow.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRow.java
new file mode 100644
index 0000000..2de8869
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRow.java
@@ -0,0 +1,93 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import java.util.concurrent.Future;
+// CHECKSTYLE:ON (Maven checkstyle)
+
+import org.apache.olingo.ext.proxy.api.AbstractOpenType;
+import org.apache.olingo.ext.proxy.api.annotations.Key;
+
+@org.apache.olingo.ext.proxy.api.annotations.Namespace("Microsoft.Test.OData.Services.OpenTypesServiceV4")
+@org.apache.olingo.ext.proxy.api.annotations.EntityType(name = "IndexedRow",
+    openType = true,
+    hasStream = false,
+    isAbstract = false,
+    baseType = "Microsoft.Test.OData.Services.OpenTypesServiceV4.Row")
+public interface IndexedRow
+    extends org.apache.olingo.ext.proxy.api.Annotatable,
+        Row,
+    AbstractOpenType {
+
+  @Override
+  IndexedRow load();
+
+  @Override
+  Future<? extends IndexedRow> loadAsync();
+
+  @Override
+  IndexedRow refs();
+
+  @Override
+  IndexedRow expand(String... expand);
+
+  @Override
+  IndexedRow select(String... select);
+
+  @Override
+  @Key
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Id",
+      type = "Edm.Guid",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.util.UUID getId();
+
+  @Override
+  void setId(java.util.UUID _id);
+
+  @Override
+  Operations operations();
+
+  interface Operations extends
+          Row.Operations {
+    // No additional methods needed for now.
+  }
+
+  @Override
+  Annotations annotations();
+
+  interface Annotations extends
+          Row.Annotations {
+
+    @Override
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "Id",
+        type = "Edm.Guid")
+    org.apache.olingo.ext.proxy.api.Annotatable getIdAnnotations();
+
+  }
+
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowCollection.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowCollection.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowCollection.java
new file mode 100644
index 0000000..51ea58b
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowCollection.java
@@ -0,0 +1,41 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import java.util.Collection;
+// CHECKSTYLE:ON (Maven checkstyle)
+
+import org.apache.olingo.ext.proxy.api.AbstractTerm;
+
+public interface IndexedRowCollection
+    extends
+    org.apache.olingo.ext.proxy.api.StructuredCollectionQuery<IndexedRowCollection>,
+org.apache.olingo.ext.proxy.api.EntityCollection<IndexedRow, IndexedRowCollection, IndexedRowCollection> {
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+
+  Object getAnnotation(Class<? extends AbstractTerm> term);
+
+  Collection<Class<? extends AbstractTerm>> getAnnotationTerms();
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowCollectionComposableInvoker.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowCollectionComposableInvoker.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowCollectionComposableInvoker.java
new file mode 100644
index 0000000..ee64c02
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowCollectionComposableInvoker.java
@@ -0,0 +1,32 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+
+public interface IndexedRowCollectionComposableInvoker
+    extends
+    org.apache.olingo.ext.proxy.api.StructuredCollectionComposableInvoker<IndexedRowCollection, IndexedRowCollection.Operations> {
+
+  @Override
+  IndexedRowCollectionComposableInvoker select(String... select);
+
+  @Override
+  IndexedRowCollectionComposableInvoker expand(String... expand);
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowComposableInvoker.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowComposableInvoker.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowComposableInvoker.java
new file mode 100644
index 0000000..56d9712
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/IndexedRowComposableInvoker.java
@@ -0,0 +1,53 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.AbstractOpenType;
+
+// CHECKSTYLE:ON (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.annotations.Key;
+
+public interface IndexedRowComposableInvoker
+    extends org.apache.olingo.ext.proxy.api.StructuredComposableInvoker<IndexedRow, IndexedRow.Operations>
+    , AbstractOpenType {
+
+  @Override
+  IndexedRowComposableInvoker select(String... select);
+
+  @Override
+  IndexedRowComposableInvoker expand(String... expand);
+
+  @Key
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Id",
+      type = "Edm.Guid",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.util.UUID getId();
+
+  void setId(java.util.UUID _id);
+
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/Row.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/Row.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/Row.java
new file mode 100644
index 0000000..eb5a3cc
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/Row.java
@@ -0,0 +1,68 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.AbstractOpenType;
+// CHECKSTYLE:ON (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.annotations.Key;
+
+@org.apache.olingo.ext.proxy.api.annotations.Namespace("Microsoft.Test.OData.Services.OpenTypesServiceV4")
+@org.apache.olingo.ext.proxy.api.annotations.EntityType(name = "Row",
+    openType = true,
+    hasStream = false,
+    isAbstract = false)
+public interface Row
+    extends org.apache.olingo.ext.proxy.api.Annotatable,
+    org.apache.olingo.ext.proxy.api.EntityType<Row>, org.apache.olingo.ext.proxy.api.StructuredQuery<Row>,
+    AbstractOpenType {
+
+  @Key
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Id",
+      type = "Edm.Guid",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.util.UUID getId();
+
+  void setId(java.util.UUID _id);
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+
+  Annotations annotations();
+
+  interface Annotations {
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "Id",
+        type = "Edm.Guid")
+    org.apache.olingo.ext.proxy.api.Annotatable getIdAnnotations();
+
+  }
+
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowCollection.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowCollection.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowCollection.java
new file mode 100644
index 0000000..c754aed
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowCollection.java
@@ -0,0 +1,41 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import java.util.Collection;
+// CHECKSTYLE:ON (Maven checkstyle)
+
+import org.apache.olingo.ext.proxy.api.AbstractTerm;
+
+public interface RowCollection
+    extends
+    org.apache.olingo.ext.proxy.api.StructuredCollectionQuery<RowCollection>,
+org.apache.olingo.ext.proxy.api.EntityCollection<Row, RowCollection, RowCollection> {
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+
+  Object getAnnotation(Class<? extends AbstractTerm> term);
+
+  Collection<Class<? extends AbstractTerm>> getAnnotationTerms();
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowCollectionComposableInvoker.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowCollectionComposableInvoker.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowCollectionComposableInvoker.java
new file mode 100644
index 0000000..c3713a7
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowCollectionComposableInvoker.java
@@ -0,0 +1,32 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+
+public interface RowCollectionComposableInvoker
+    extends
+    org.apache.olingo.ext.proxy.api.StructuredCollectionComposableInvoker<RowCollection, RowCollection.Operations> {
+
+  @Override
+  RowCollectionComposableInvoker select(String... select);
+
+  @Override
+  RowCollectionComposableInvoker expand(String... expand);
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowComposableInvoker.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowComposableInvoker.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowComposableInvoker.java
new file mode 100644
index 0000000..f77f079
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowComposableInvoker.java
@@ -0,0 +1,53 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.AbstractOpenType;
+
+// CHECKSTYLE:ON (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.annotations.Key;
+
+public interface RowComposableInvoker
+    extends org.apache.olingo.ext.proxy.api.StructuredComposableInvoker<Row, Row.Operations>
+    , AbstractOpenType {
+
+  @Override
+  RowComposableInvoker select(String... select);
+
+  @Override
+  RowComposableInvoker expand(String... expand);
+
+  @Key
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Id",
+      type = "Edm.Guid",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.util.UUID getId();
+
+  void setId(java.util.UUID _id);
+
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndex.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndex.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndex.java
new file mode 100644
index 0000000..eee12de
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndex.java
@@ -0,0 +1,82 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.AbstractOpenType;
+// CHECKSTYLE:ON (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.annotations.Key;
+
+@org.apache.olingo.ext.proxy.api.annotations.Namespace("Microsoft.Test.OData.Services.OpenTypesServiceV4")
+@org.apache.olingo.ext.proxy.api.annotations.EntityType(name = "RowIndex",
+    openType = true,
+    hasStream = false,
+    isAbstract = false)
+public interface RowIndex
+    extends org.apache.olingo.ext.proxy.api.Annotatable,
+    org.apache.olingo.ext.proxy.api.EntityType<RowIndex>, org.apache.olingo.ext.proxy.api.StructuredQuery<RowIndex>,
+    AbstractOpenType {
+
+  @Key
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Id",
+      type = "Edm.Int32",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Integer getId();
+
+  void setId(java.lang.Integer _id);
+
+  @org.apache.olingo.ext.proxy.api.annotations.NavigationProperty(name = "Rows",
+      type = "Microsoft.Test.OData.Services.OpenTypesServiceV4.Row",
+      targetSchema = "Microsoft.Test.OData.Services.OpenTypesServiceV4",
+      targetContainer = "DefaultContainer",
+      targetEntitySet = "Row",
+      containsTarget = false)
+  Row getRows();
+
+  void
+      setRows(Row _rows);
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+
+  Annotations annotations();
+
+  interface Annotations {
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForProperty(name = "Id",
+        type = "Edm.Int32")
+    org.apache.olingo.ext.proxy.api.Annotatable getIdAnnotations();
+
+    @org.apache.olingo.ext.proxy.api.annotations.AnnotationsForNavigationProperty(name = "Rows",
+        type = "Microsoft.Test.OData.Services.OpenTypesServiceV4.Row")
+    org.apache.olingo.ext.proxy.api.Annotatable getRowsAnnotations();
+  }
+
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexCollection.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexCollection.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexCollection.java
new file mode 100644
index 0000000..c0dae50
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexCollection.java
@@ -0,0 +1,41 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import java.util.Collection;
+// CHECKSTYLE:ON (Maven checkstyle)
+
+import org.apache.olingo.ext.proxy.api.AbstractTerm;
+
+public interface RowIndexCollection
+    extends
+    org.apache.olingo.ext.proxy.api.StructuredCollectionQuery<RowIndexCollection>,
+org.apache.olingo.ext.proxy.api.EntityCollection<RowIndex, RowIndexCollection, RowIndexCollection> {
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+
+  Object getAnnotation(Class<? extends AbstractTerm> term);
+
+  Collection<Class<? extends AbstractTerm>> getAnnotationTerms();
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexCollectionComposableInvoker.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexCollectionComposableInvoker.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexCollectionComposableInvoker.java
new file mode 100644
index 0000000..cb4f23f
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexCollectionComposableInvoker.java
@@ -0,0 +1,32 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+
+public interface RowIndexCollectionComposableInvoker
+    extends
+    org.apache.olingo.ext.proxy.api.StructuredCollectionComposableInvoker<RowIndexCollection, RowIndexCollection.Operations> {
+
+  @Override
+  RowIndexCollectionComposableInvoker select(String... select);
+
+  @Override
+  RowIndexCollectionComposableInvoker expand(String... expand);
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexComposableInvoker.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexComposableInvoker.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexComposableInvoker.java
new file mode 100644
index 0000000..52e3306
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/RowIndexComposableInvoker.java
@@ -0,0 +1,64 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.AbstractOpenType;
+
+// CHECKSTYLE:ON (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.annotations.Key;
+
+public interface RowIndexComposableInvoker
+    extends org.apache.olingo.ext.proxy.api.StructuredComposableInvoker<RowIndex, RowIndex.Operations>
+    , AbstractOpenType {
+
+  @Override
+  RowIndexComposableInvoker select(String... select);
+
+  @Override
+  RowIndexComposableInvoker expand(String... expand);
+
+  @Key
+  @org.apache.olingo.ext.proxy.api.annotations.Property(name = "Id",
+      type = "Edm.Int32",
+      nullable = false,
+      defaultValue = "",
+      maxLenght = Integer.MAX_VALUE,
+      fixedLenght = false,
+      precision = 0,
+      scale = 0,
+      unicode = true,
+      collation = "",
+      srid = "")
+  java.lang.Integer getId();
+
+  void setId(java.lang.Integer _id);
+
+  @org.apache.olingo.ext.proxy.api.annotations.NavigationProperty(name = "Rows",
+      type = "Microsoft.Test.OData.Services.OpenTypesServiceV4.Row",
+      targetSchema = "Microsoft.Test.OData.Services.OpenTypesServiceV4",
+      targetContainer = "DefaultContainer",
+      targetEntitySet = "Row",
+      containsTarget = false)
+  Row getRows();
+
+  void
+      setRows(Row _rows);
+
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/package-info.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/package-info.java b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/package-info.java
new file mode 100644
index 0000000..26254f9
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/opentype/microsoft/test/odata/services/opentypesservice/types/package-info.java
@@ -0,0 +1,20 @@
+/*
+ * 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.fit.proxy.opentype.microsoft.test.odata.services.opentypesservice.types;
+

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/Service.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/Service.java b/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/Service.java
new file mode 100644
index 0000000..5b5a829
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/Service.java
@@ -0,0 +1,245 @@
+/*
+ * 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.fit.proxy.staticservice;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+import org.apache.olingo.client.api.EdmEnabledODataClient;
+import org.apache.olingo.commons.api.edm.constants.ODataServiceVersion;
+import org.apache.olingo.ext.proxy.AbstractService;
+import org.apache.olingo.ext.proxy.api.AbstractTerm;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.AccessLevel;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Account;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.AccountInfo;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Address;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Asset;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Club;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Color;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Company;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.CompanyAddress;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.CompanyCategory;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.CreditCardPI;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.CreditRecord;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Customer;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Department;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Employee;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.GiftCard;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.HomeAddress;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.IsBoss;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.LabourUnion;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Order;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.OrderDetail;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.PaymentInstrument;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Person;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Product;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.ProductDetail;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.ProductReview;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.PublicCompany;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Statement;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.StoredPI;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Subscription;
+
+public class Service<C extends EdmEnabledODataClient> extends AbstractService<C> {
+
+  // CHECKSTYLE:OFF (Maven checkstyle)
+  private static final String COMPRESSED_METADATA =
+      "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";
+  private static final String METADATA_ETAG = null;
+  // CHECKSTYLE:ON (Maven checkstyle)
+
+  private static final Map<String, Service<?>> SERVICES = new ConcurrentHashMap<String, Service<?>>();
+
+  @SuppressWarnings("unchecked")
+  private static <C extends EdmEnabledODataClient> Service<C> getInstance(
+      final ODataServiceVersion version, final String serviceRoot, final boolean transactional) {
+
+    if (!SERVICES.containsKey(serviceRoot)) {
+      final Service<C> instance = new Service<C>(COMPRESSED_METADATA, METADATA_ETAG,
+          version, serviceRoot, transactional);
+      SERVICES.put(serviceRoot, instance);
+    }
+
+    return (Service<C>) SERVICES.get(serviceRoot);
+  }
+
+  /**
+   * Gives an OData 4.0 instance for given service root, operating in transactions (with batch requests).
+   *
+   * @param serviceRoot OData service root
+   * @return OData 4.0 instance for given service root, operating in transactions (with batch requests)
+   */
+  public static Service<EdmEnabledODataClient> getV4(
+      final String serviceRoot) {
+
+    return getV4(serviceRoot, true);
+  }
+
+  /**
+   * Gives an OData 4.0 instance for given service root.
+   *
+   * @param serviceRoot OData service root
+   * @param transactional whether operating in transactions (with batch requests) or not
+   * @return OData 4.0 instance for given service root
+   */
+  public static Service<EdmEnabledODataClient> getV4(
+      final String serviceRoot, final boolean transactional) {
+
+    return getInstance(ODataServiceVersion.V40, serviceRoot, transactional);
+  }
+
+  private final Map<String, Class<?>> entityTypes = new HashMap<String, Class<?>>();
+
+  private final Map<String, Class<?>> complexTypes = new HashMap<String, Class<?>>();
+
+  private final Map<String, Class<?>> enumTypes = new HashMap<String, Class<?>>();
+
+  private final Map<String, Class<? extends AbstractTerm>> terms = new HashMap<String, Class<? extends AbstractTerm>>();
+
+  public Service(final String compressedMetadata, final String metadataETag,
+      final ODataServiceVersion version, final String serviceRoot, final boolean transactional) {
+
+    super(compressedMetadata, metadataETag, version, serviceRoot, transactional);
+
+    // CHECKSTYLE:OFF (Maven checkstyle)
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI",
+        CreditCardPI.class);
+    entityTypes.put("Microsoft.Test.OData.Services.ODataWCFService.Account",
+        Account.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.ProductDetail",
+        ProductDetail.class);
+    entityTypes.put("Microsoft.Test.OData.Services.ODataWCFService.Order",
+        Order.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.Statement",
+        Statement.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.Subscription",
+        Subscription.class);
+    entityTypes.put("Microsoft.Test.OData.Services.ODataWCFService.Person",
+        Person.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.GiftCard",
+        GiftCard.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.OrderDetail",
+        OrderDetail.class);
+    entityTypes.put("Microsoft.Test.OData.Services.ODataWCFService.Product",
+        Product.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument",
+        PaymentInstrument.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.Customer",
+        Customer.class);
+    entityTypes.put("Microsoft.Test.OData.Services.ODataWCFService.Club",
+        Club.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.ProductReview",
+        ProductReview.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.Department",
+        Department.class);
+    entityTypes.put("Microsoft.Test.OData.Services.ODataWCFService.Asset",
+        Asset.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.Employee",
+        Employee.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.StoredPI",
+        StoredPI.class);
+    entityTypes.put("Microsoft.Test.OData.Services.ODataWCFService.Company",
+        Company.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.CreditRecord",
+        CreditRecord.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.LabourUnion",
+        LabourUnion.class);
+    entityTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.PublicCompany",
+        PublicCompany.class);
+    complexTypes.put("Microsoft.Test.OData.Services.ODataWCFService.Address",
+        Address.class);
+    complexTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.CompanyAddress",
+        CompanyAddress.class);
+    complexTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.AccountInfo",
+        AccountInfo.class);
+    complexTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.HomeAddress",
+        HomeAddress.class);
+    enumTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.AccessLevel",
+        AccessLevel.class);
+    enumTypes.put("Microsoft.Test.OData.Services.ODataWCFService.Color",
+        Color.class);
+    enumTypes
+    .put(
+        "Microsoft.Test.OData.Services.ODataWCFService.CompanyCategory",
+        CompanyCategory.class);
+    terms.put("Microsoft.Test.OData.Services.ODataWCFService.IsBoss",
+        IsBoss.class);
+    // CHECKSTYLE:ON (Maven checkstyle)
+  }
+
+  @Override
+  public Class<?> getEntityTypeClass(final String name) {
+    return entityTypes.get(name);
+  }
+
+  @Override
+  public Class<?> getComplexTypeClass(final String name) {
+    return complexTypes.get(name);
+  }
+
+  @Override
+  public Class<?> getEnumTypeClass(final String name) {
+    return enumTypes.get(name);
+  }
+
+  @Override
+  public Class<? extends AbstractTerm> getTermClass(final String name) {
+    return terms.get(name);
+  }
+
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Accounts.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Accounts.java b/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Accounts.java
new file mode 100644
index 0000000..61b8f7b
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Accounts.java
@@ -0,0 +1,41 @@
+/*
+ * 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.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.AbstractEntitySet;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Account;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.AccountCollection;
+
+// CHECKSTYLE:ON (Maven checkstyle)
+
+@org.apache.olingo.ext.proxy.api.annotations.EntitySet(name = "Accounts",
+    container = "Microsoft.Test.OData.Services.ODataWCFService.InMemoryEntities")
+public interface Accounts
+    extends
+    org.apache.olingo.ext.proxy.api.EntitySet<Account, AccountCollection>,
+    org.apache.olingo.ext.proxy.api.StructuredCollectionQuery<Accounts>,
+    AbstractEntitySet<Account, java.lang.Integer, AccountCollection> {
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Customers.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Customers.java b/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Customers.java
new file mode 100644
index 0000000..0974312
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Customers.java
@@ -0,0 +1,41 @@
+/*
+ * 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.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.AbstractEntitySet;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Customer;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.CustomerCollection;
+
+// CHECKSTYLE:ON (Maven checkstyle)
+
+@org.apache.olingo.ext.proxy.api.annotations.EntitySet(name = "Customers",
+    container = "Microsoft.Test.OData.Services.ODataWCFService.InMemoryEntities")
+public interface Customers
+    extends
+    org.apache.olingo.ext.proxy.api.EntitySet<Customer, CustomerCollection>,
+    org.apache.olingo.ext.proxy.api.StructuredCollectionQuery<Customers>,
+    AbstractEntitySet<Customer, java.lang.Integer, CustomerCollection> {
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Departments.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Departments.java b/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Departments.java
new file mode 100644
index 0000000..8917add
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Departments.java
@@ -0,0 +1,42 @@
+/*
+ * 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.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.AbstractEntitySet;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Department;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types
+        .DepartmentCollection;
+
+// CHECKSTYLE:ON (Maven checkstyle)
+
+@org.apache.olingo.ext.proxy.api.annotations.EntitySet(name = "Departments",
+    container = "Microsoft.Test.OData.Services.ODataWCFService.InMemoryEntities")
+public interface Departments
+    extends
+    org.apache.olingo.ext.proxy.api.EntitySet<Department, DepartmentCollection>,
+    org.apache.olingo.ext.proxy.api.StructuredCollectionQuery<Departments>,
+    AbstractEntitySet<Department, java.lang.Integer, DepartmentCollection> {
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/78a9539e/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Employees.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Employees.java b/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Employees.java
new file mode 100644
index 0000000..4b1bccf
--- /dev/null
+++ b/fit/src/test/java/org/apache/olingo/fit/proxy/staticservice/microsoft/test/odata/services/odatawcfservice/Employees.java
@@ -0,0 +1,41 @@
+/*
+ * 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.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice;
+
+// CHECKSTYLE:OFF (Maven checkstyle)
+import org.apache.olingo.ext.proxy.api.AbstractEntitySet;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.Employee;
+import org.apache.olingo.fit.proxy.staticservice.microsoft.test.odata.services.odatawcfservice.types.EmployeeCollection;
+
+// CHECKSTYLE:ON (Maven checkstyle)
+
+@org.apache.olingo.ext.proxy.api.annotations.EntitySet(name = "Employees",
+    container = "Microsoft.Test.OData.Services.ODataWCFService.InMemoryEntities")
+public interface Employees
+    extends
+    org.apache.olingo.ext.proxy.api.EntitySet<Employee, EmployeeCollection>,
+    org.apache.olingo.ext.proxy.api.StructuredCollectionQuery<Employees>,
+    AbstractEntitySet<Employee, java.lang.Integer, EmployeeCollection> {
+
+  Operations operations();
+
+  interface Operations extends org.apache.olingo.ext.proxy.api.Operations {
+    // No additional methods needed for now.
+  }
+}