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 2014/07/03 09:16:52 UTC

[55/55] [abbrv] git commit: [OLINGO-317] Merge with current master

[OLINGO-317] Merge with current master


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

Branch: refs/heads/Olingo-317_DeSerializerRefactoring
Commit: 66f26e5b6ac3e2e3dd9c69bb6f2fbbe69baee87d
Parents: 876655f 2bd0662
Author: Michael Bolz <mi...@sap.com>
Authored: Thu Jul 3 09:04:49 2014 +0200
Committer: Michael Bolz <mi...@sap.com>
Committed: Thu Jul 3 09:04:49 2014 +0200

----------------------------------------------------------------------
 fit/pom.xml                                     |    2 +-
 .../org/apache/olingo/fit/AbstractServices.java |  735 +++++------
 .../fit/UnsupportedMediaTypeException.java      |   21 +-
 .../apache/olingo/fit/V3ActionOverloading.java  |   72 +-
 .../org/apache/olingo/fit/V3KeyAsSegment.java   |  132 +-
 .../java/org/apache/olingo/fit/V3OpenType.java  |   64 +-
 .../org/apache/olingo/fit/V3PrimitiveKeys.java  |   19 +-
 .../java/org/apache/olingo/fit/V3Services.java  |  200 +--
 .../main/java/org/apache/olingo/fit/V4Demo.java |  104 +-
 .../org/apache/olingo/fit/V4KeyAsSegment.java   |   90 +-
 .../java/org/apache/olingo/fit/V4NorthWind.java |   17 +-
 .../org/apache/olingo/fit/V4NorthWindExt.java   |   19 +-
 .../java/org/apache/olingo/fit/V4OpenType.java  |   60 +-
 .../java/org/apache/olingo/fit/V4Services.java  |  266 ++--
 .../org/apache/olingo/fit/V4Vocabularies.java   |   41 +-
 .../fit/metadata/AbstractMetadataElement.java   |   14 +-
 .../apache/olingo/fit/metadata/Association.java |   14 +-
 .../olingo/fit/metadata/AssociationSet.java     |   14 +-
 .../apache/olingo/fit/metadata/Container.java   |   14 +-
 .../apache/olingo/fit/metadata/EntitySet.java   |   23 +-
 .../apache/olingo/fit/metadata/EntityType.java  |   18 +-
 .../apache/olingo/fit/metadata/Metadata.java    |   62 +-
 .../olingo/fit/metadata/NavigationProperty.java |   24 +-
 .../apache/olingo/fit/metadata/Property.java    |   20 +-
 .../org/apache/olingo/fit/metadata/Schema.java  |   18 +-
 .../org/apache/olingo/fit/methods/MERGE.java    |   20 +-
 .../org/apache/olingo/fit/methods/PATCH.java    |   20 +-
 .../apache/olingo/fit/rproxy/LinkRewrite.java   |   17 +-
 .../olingo/fit/rproxy/LinkRewriteRenderer.java  |   23 +-
 .../fit/serializer/FITAtomDeserializer.java     |   14 +-
 .../olingo/fit/utils/AbstractUtilities.java     |   39 +-
 .../org/apache/olingo/fit/utils/Accept.java     |   25 +-
 .../org/apache/olingo/fit/utils/Commons.java    |  108 +-
 .../apache/olingo/fit/utils/ConstantKey.java    |   14 +-
 .../org/apache/olingo/fit/utils/Constants.java  |   25 +-
 .../org/apache/olingo/fit/utils/FSManager.java  |   14 +-
 .../fit/utils/InjectableSerializerProvider.java |   18 +-
 .../apache/olingo/fit/utils/JSONUtilities.java  |   80 +-
 .../org/apache/olingo/fit/utils/LinkInfo.java   |   16 +-
 .../olingo/fit/utils/MetadataLinkInfo.java      |   35 +-
 .../olingo/fit/utils/NavigationLinks.java       |   27 +-
 .../utils/ResolvingReferencesInterceptor.java   |   20 +-
 .../fit/utils/XHTTPMethodInterceptor.java       |   17 +-
 .../org/apache/olingo/fit/utils/XMLElement.java |   18 +-
 .../olingo/fit/utils/XMLEventReaderWrapper.java |   42 +-
 .../apache/olingo/fit/utils/XMLUtilities.java   |  268 ++--
 .../olingo/fit/AbstractBaseTestITCase.java      |   14 +-
 .../olingo/fit/proxy/v3/AbstractTestITCase.java |   56 +-
 .../proxy/v3/ActionOverloadingTestITCase.java   |   50 +-
 .../olingo/fit/proxy/v3/AsyncTestITCase.java    |   71 +-
 .../olingo/fit/proxy/v3/ContextTestITCase.java  |  127 +-
 .../fit/proxy/v3/EntityCreateTestITCase.java    |   34 +-
 .../fit/proxy/v3/EntityRetrieveTestITCase.java  |   94 +-
 .../fit/proxy/v3/EntitySetTestITCase.java       |   15 +-
 .../fit/proxy/v3/EntityUpdateTestITCase.java    |  154 ++-
 .../olingo/fit/proxy/v3/FilterTestITCase.java   |   41 +-
 .../olingo/fit/proxy/v3/InvokeTestITCase.java   |   34 +-
 .../fit/proxy/v3/MediaEntityTestITCase.java     |   19 +-
 .../olingo/fit/proxy/v3/OpenTypeTestITCase.java |   25 +-
 .../fit/proxy/v3/PrimitiveKeysTestITCase.java   |   27 +-
 .../olingo/fit/proxy/v3/PropertyTestITCase.java |   50 +-
 .../AllGeoCollectionTypesSet.java               |   56 +-
 .../astoriadefaultservice/AllGeoTypesSet.java   |   50 +-
 .../services/astoriadefaultservice/Car.java     |   50 +-
 .../astoriadefaultservice/Computer.java         |   50 +-
 .../astoriadefaultservice/ComputerDetail.java   |   50 +-
 .../astoriadefaultservice/Customer.java         |   50 +-
 .../astoriadefaultservice/CustomerInfo.java     |   50 +-
 .../astoriadefaultservice/DefaultContainer.java |  211 ++--
 .../services/astoriadefaultservice/Driver.java  |   50 +-
 .../astoriadefaultservice/LastLogin.java        |   50 +-
 .../services/astoriadefaultservice/License.java |   50 +-
 .../services/astoriadefaultservice/Login.java   |   50 +-
 .../astoriadefaultservice/MappedEntityType.java |   50 +-
 .../services/astoriadefaultservice/Message.java |   51 +-
 .../MessageAttachment.java                      |   50 +-
 .../services/astoriadefaultservice/Order.java   |   50 +-
 .../astoriadefaultservice/OrderLine.java        |   69 +-
 .../astoriadefaultservice/PageView.java         |   56 +-
 .../services/astoriadefaultservice/Person.java  |   76 +-
 .../astoriadefaultservice/PersonMetadata.java   |   50 +-
 .../services/astoriadefaultservice/Product.java |   56 +-
 .../astoriadefaultservice/ProductDetail.java    |   50 +-
 .../astoriadefaultservice/ProductPhoto.java     |   51 +-
 .../astoriadefaultservice/ProductReview.java    |   51 +-
 .../astoriadefaultservice/RSAToken.java         |   50 +-
 .../astoriadefaultservice/package-info.java     |   16 +-
 .../astoriadefaultservice/types/Aliases.java    |   62 +-
 .../types/AllSpatialCollectionTypes.java        |  139 +--
 .../AllSpatialCollectionTypesCollection.java    |   44 +-
 .../types/AllSpatialCollectionTypes_Simple.java |  470 ++++---
 ...SpatialCollectionTypes_SimpleCollection.java |   44 +-
 .../types/AllSpatialTypes.java                  |  985 +++++++--------
 .../types/AllSpatialTypesCollection.java        |   44 +-
 .../astoriadefaultservice/types/AuditInfo.java  |   89 +-
 .../types/BackOrderLine.java                    |  457 +++----
 .../types/BackOrderLine2.java                   |  457 +++----
 .../types/BackOrderLine2Collection.java         |   44 +-
 .../types/BackOrderLineCollection.java          |   44 +-
 .../astoriadefaultservice/types/Car.java        |  305 ++---
 .../types/CarCollection.java                    |   44 +-
 .../types/ComplexToCategory.java                |   77 +-
 .../astoriadefaultservice/types/Computer.java   |  222 ++--
 .../types/ComputerCollection.java               |   44 +-
 .../types/ComputerDetail.java                   |  500 ++++----
 .../types/ComputerDetailCollection.java         |   44 +-
 .../types/ConcurrencyInfo.java                  |   70 +-
 .../types/ContactDetails.java                   |  147 +--
 .../astoriadefaultservice/types/Contractor.java |  477 ++++---
 .../types/ContractorCollection.java             |   44 +-
 .../astoriadefaultservice/types/Customer.java   |  648 +++++-----
 .../types/CustomerCollection.java               |   44 +-
 .../types/CustomerInfo.java                     |  199 ++-
 .../types/CustomerInfoCollection.java           |   44 +-
 .../astoriadefaultservice/types/Dimensions.java |   77 +-
 .../types/DiscontinuedProduct.java              |  901 +++++++-------
 .../types/DiscontinuedProductCollection.java    |   44 +-
 .../astoriadefaultservice/types/Driver.java     |  222 ++--
 .../types/DriverCollection.java                 |   44 +-
 .../astoriadefaultservice/types/Employee.java   |  470 ++++---
 .../types/EmployeeCollection.java               |   58 +-
 .../astoriadefaultservice/types/LastLogin.java  |  328 +++--
 .../types/LastLoginCollection.java              |   44 +-
 .../astoriadefaultservice/types/License.java    |  381 +++---
 .../types/LicenseCollection.java                |   44 +-
 .../astoriadefaultservice/types/Login.java      |  346 +++---
 .../types/LoginCollection.java                  |   44 +-
 .../types/MappedEntityType.java                 | 1173 +++++++++---------
 .../types/MappedEntityTypeCollection.java       |   44 +-
 .../astoriadefaultservice/types/Message.java    |  548 ++++----
 .../types/MessageAttachment.java                |  192 ++-
 .../types/MessageAttachmentCollection.java      |   44 +-
 .../types/MessageCollection.java                |   44 +-
 .../astoriadefaultservice/types/MessageKey.java |   76 +-
 .../astoriadefaultservice/types/Order.java      |  319 +++--
 .../types/OrderCollection.java                  |   44 +-
 .../astoriadefaultservice/types/OrderLine.java  |  435 +++----
 .../types/OrderLineCollection.java              |   44 +-
 .../types/OrderLineKey.java                     |   76 +-
 .../astoriadefaultservice/types/PageView.java   |  381 +++---
 .../types/PageViewCollection.java               |   44 +-
 .../astoriadefaultservice/types/Person.java     |  242 ++--
 .../types/PersonCollection.java                 |   44 +-
 .../types/PersonMetadata.java                   |  328 +++--
 .../types/PersonMetadataCollection.java         |   44 +-
 .../astoriadefaultservice/types/Phone.java      |   69 +-
 .../astoriadefaultservice/types/Product.java    |  639 +++++-----
 .../types/ProductCollection.java                |   44 +-
 .../types/ProductDetail.java                    |  222 ++--
 .../types/ProductDetailCollection.java          |   44 +-
 .../types/ProductPageView.java                  |  514 ++++----
 .../types/ProductPageViewCollection.java        |   44 +-
 .../types/ProductPhoto.java                     |  244 ++--
 .../types/ProductPhotoCollection.java           |   44 +-
 .../types/ProductPhotoKey.java                  |   76 +-
 .../types/ProductReview.java                    |  328 +++--
 .../types/ProductReviewCollection.java          |   44 +-
 .../types/ProductReviewKey.java                 |   92 +-
 .../astoriadefaultservice/types/RSAToken.java   |  222 ++--
 .../types/RSATokenCollection.java               |   44 +-
 .../types/SpecialEmployee.java                  |  669 +++++-----
 .../types/SpecialEmployeeCollection.java        |   58 +-
 .../types/package-info.java                     |   16 +-
 .../opentypesservicev3/DefaultContainer.java    |   66 +-
 .../odata/services/opentypesservicev3/Row.java  |   55 +-
 .../services/opentypesservicev3/RowIndex.java   |   49 +-
 .../opentypesservicev3/package-info.java        |   16 +-
 .../types/ContactDetails.java                   |  151 +--
 .../opentypesservicev3/types/IndexedRow.java    |  149 +--
 .../types/IndexedRowCollection.java             |   44 +-
 .../services/opentypesservicev3/types/Row.java  |  140 +--
 .../opentypesservicev3/types/RowCollection.java |   44 +-
 .../opentypesservicev3/types/RowIndex.java      |  170 ++-
 .../types/RowIndexCollection.java               |   44 +-
 .../opentypesservicev3/types/package-info.java  |   16 +-
 .../primitivekeysservice/EdmBinarySet.java      |   50 +-
 .../primitivekeysservice/EdmBooleanSet.java     |   50 +-
 .../primitivekeysservice/EdmByteSet.java        |   50 +-
 .../EdmDateTimeOffsetSet.java                   |   50 +-
 .../primitivekeysservice/EdmDateTimeSet.java    |   50 +-
 .../primitivekeysservice/EdmDecimalSet.java     |   50 +-
 .../primitivekeysservice/EdmDoubleSet.java      |   50 +-
 .../primitivekeysservice/EdmGuidSet.java        |   50 +-
 .../primitivekeysservice/EdmInt16Set.java       |   50 +-
 .../primitivekeysservice/EdmInt32Set.java       |   50 +-
 .../primitivekeysservice/EdmInt64Set.java       |   50 +-
 .../primitivekeysservice/EdmSingleSet.java      |   50 +-
 .../primitivekeysservice/EdmStringSet.java      |   50 +-
 .../primitivekeysservice/EdmTimeSet.java        |   50 +-
 .../services/primitivekeysservice/Folders.java  |   50 +-
 .../primitivekeysservice/TestContext.java       |   88 +-
 .../primitivekeysservice/package-info.java      |   16 +-
 .../primitivekeysservice/types/EdmBinary.java   |  139 +--
 .../types/EdmBinaryCollection.java              |   44 +-
 .../primitivekeysservice/types/EdmBoolean.java  |  139 +--
 .../types/EdmBooleanCollection.java             |   44 +-
 .../primitivekeysservice/types/EdmByte.java     |  139 +--
 .../types/EdmByteCollection.java                |   44 +-
 .../primitivekeysservice/types/EdmDateTime.java |  139 +--
 .../types/EdmDateTimeCollection.java            |   44 +-
 .../types/EdmDateTimeOffset.java                |  139 +--
 .../types/EdmDateTimeOffsetCollection.java      |   44 +-
 .../primitivekeysservice/types/EdmDecimal.java  |  139 +--
 .../types/EdmDecimalCollection.java             |   44 +-
 .../primitivekeysservice/types/EdmDouble.java   |  139 +--
 .../types/EdmDoubleCollection.java              |   44 +-
 .../primitivekeysservice/types/EdmGuid.java     |  139 +--
 .../types/EdmGuidCollection.java                |   44 +-
 .../primitivekeysservice/types/EdmInt16.java    |  139 +--
 .../types/EdmInt16Collection.java               |   44 +-
 .../primitivekeysservice/types/EdmInt32.java    |  139 +--
 .../types/EdmInt32Collection.java               |   44 +-
 .../primitivekeysservice/types/EdmInt64.java    |  139 +--
 .../types/EdmInt64Collection.java               |   44 +-
 .../primitivekeysservice/types/EdmSingle.java   |  139 +--
 .../types/EdmSingleCollection.java              |   44 +-
 .../primitivekeysservice/types/EdmString.java   |  139 +--
 .../types/EdmStringCollection.java              |   44 +-
 .../primitivekeysservice/types/EdmTime.java     |  139 +--
 .../types/EdmTimeCollection.java                |   44 +-
 .../primitivekeysservice/types/Folder.java      |  222 ++--
 .../types/FolderCollection.java                 |   44 +-
 .../types/package-info.java                     |   16 +-
 .../AllGeoCollectionTypesSet.java               |   56 +-
 .../astoriadefaultservice/AllGeoTypesSet.java   |   50 +-
 .../services/astoriadefaultservice/Car.java     |   49 +-
 .../astoriadefaultservice/Computer.java         |   50 +-
 .../astoriadefaultservice/ComputerDetail.java   |   50 +-
 .../astoriadefaultservice/Customer.java         |   50 +-
 .../astoriadefaultservice/CustomerInfo.java     |   50 +-
 .../astoriadefaultservice/DefaultContainer.java |  299 ++---
 .../services/astoriadefaultservice/Driver.java  |   50 +-
 .../astoriadefaultservice/LastLogin.java        |   50 +-
 .../services/astoriadefaultservice/License.java |   50 +-
 .../services/astoriadefaultservice/Login.java   |   50 +-
 .../astoriadefaultservice/MappedEntityType.java |   50 +-
 .../services/astoriadefaultservice/Message.java |   51 +-
 .../MessageAttachment.java                      |   50 +-
 .../services/astoriadefaultservice/Order.java   |   50 +-
 .../astoriadefaultservice/OrderLine.java        |   69 +-
 .../astoriadefaultservice/PageView.java         |   56 +-
 .../services/astoriadefaultservice/Person.java  |   76 +-
 .../astoriadefaultservice/PersonMetadata.java   |   50 +-
 .../services/astoriadefaultservice/Product.java |   56 +-
 .../astoriadefaultservice/ProductDetail.java    |   50 +-
 .../astoriadefaultservice/ProductPhoto.java     |   51 +-
 .../astoriadefaultservice/ProductReview.java    |   51 +-
 .../astoriadefaultservice/RSAToken.java         |   50 +-
 .../astoriadefaultservice/package-info.java     |   16 +-
 .../astoriadefaultservice/types/Aliases.java    |   62 +-
 .../types/AllSpatialCollectionTypes.java        |  139 +--
 .../AllSpatialCollectionTypesCollection.java    |   44 +-
 .../types/AllSpatialCollectionTypes_Simple.java |  470 ++++---
 ...SpatialCollectionTypes_SimpleCollection.java |   44 +-
 .../types/AllSpatialTypes.java                  |  985 +++++++--------
 .../types/AllSpatialTypesCollection.java        |   44 +-
 .../astoriadefaultservice/types/AuditInfo.java  |   89 +-
 .../types/BackOrderLine.java                    |  441 ++++---
 .../types/BackOrderLine2.java                   |  442 +++----
 .../types/BackOrderLine2Collection.java         |   44 +-
 .../types/BackOrderLineCollection.java          |   44 +-
 .../astoriadefaultservice/types/Car.java        |  305 ++---
 .../types/CarCollection.java                    |   44 +-
 .../types/ComplexToCategory.java                |   77 +-
 .../types/ComplexWithAllPrimitiveTypes.java     |  167 +--
 .../astoriadefaultservice/types/Computer.java   |  245 ++--
 .../types/ComputerCollection.java               |   44 +-
 .../types/ComputerDetail.java                   |  526 ++++----
 .../types/ComputerDetailCollection.java         |   44 +-
 .../types/ConcurrencyInfo.java                  |   70 +-
 .../types/ContactDetails.java                   |  147 +--
 .../astoriadefaultservice/types/Contractor.java |  452 ++++---
 .../types/ContractorCollection.java             |   44 +-
 .../astoriadefaultservice/types/Customer.java   |  648 +++++-----
 .../types/CustomerCollection.java               |   44 +-
 .../types/CustomerInfo.java                     |  199 ++-
 .../types/CustomerInfoCollection.java           |   44 +-
 .../astoriadefaultservice/types/Dimensions.java |   77 +-
 .../types/DiscontinuedProduct.java              |  901 +++++++-------
 .../types/DiscontinuedProductCollection.java    |   44 +-
 .../astoriadefaultservice/types/Driver.java     |  222 ++--
 .../types/DriverCollection.java                 |   44 +-
 .../astoriadefaultservice/types/Employee.java   |  450 ++++---
 .../types/EmployeeCollection.java               |   58 +-
 .../astoriadefaultservice/types/LastLogin.java  |  328 +++--
 .../types/LastLoginCollection.java              |   44 +-
 .../astoriadefaultservice/types/License.java    |  381 +++---
 .../types/LicenseCollection.java                |   44 +-
 .../astoriadefaultservice/types/Login.java      |  346 +++---
 .../types/LoginCollection.java                  |   44 +-
 .../types/MappedEntityType.java                 | 1173 +++++++++---------
 .../types/MappedEntityTypeCollection.java       |   44 +-
 .../astoriadefaultservice/types/Message.java    |  548 ++++----
 .../types/MessageAttachment.java                |  192 ++-
 .../types/MessageAttachmentCollection.java      |   44 +-
 .../types/MessageCollection.java                |   44 +-
 .../astoriadefaultservice/types/MessageKey.java |   76 +-
 .../astoriadefaultservice/types/Order.java      |  319 +++--
 .../types/OrderCollection.java                  |   44 +-
 .../astoriadefaultservice/types/OrderLine.java  |  411 +++---
 .../types/OrderLineCollection.java              |   44 +-
 .../types/OrderLineKey.java                     |   76 +-
 .../astoriadefaultservice/types/PageView.java   |  381 +++---
 .../types/PageViewCollection.java               |   44 +-
 .../astoriadefaultservice/types/Person.java     |  222 ++--
 .../types/PersonCollection.java                 |   44 +-
 .../types/PersonMetadata.java                   |  328 +++--
 .../types/PersonMetadataCollection.java         |   44 +-
 .../astoriadefaultservice/types/Phone.java      |   69 +-
 .../astoriadefaultservice/types/Product.java    |  642 +++++-----
 .../types/ProductCollection.java                |   44 +-
 .../types/ProductDetail.java                    |  222 ++--
 .../types/ProductDetailCollection.java          |   44 +-
 .../types/ProductPageView.java                  |  514 ++++----
 .../types/ProductPageViewCollection.java        |   44 +-
 .../types/ProductPhoto.java                     |  244 ++--
 .../types/ProductPhotoCollection.java           |   44 +-
 .../types/ProductPhotoKey.java                  |   76 +-
 .../types/ProductReview.java                    |  328 +++--
 .../types/ProductReviewCollection.java          |   44 +-
 .../types/ProductReviewKey.java                 |   92 +-
 .../astoriadefaultservice/types/RSAToken.java   |  222 ++--
 .../types/RSATokenCollection.java               |   44 +-
 .../types/SpecialEmployee.java                  |  645 +++++-----
 .../types/SpecialEmployeeCollection.java        |   44 +-
 .../types/package-info.java                     |   16 +-
 .../olingo/fit/proxy/v4/AbstractTestITCase.java |   25 +-
 .../olingo/fit/proxy/v4/AsyncTestITCase.java    |   34 +-
 .../proxy/v4/AuthEntityCreateTestITCase.java    |   22 +-
 .../proxy/v4/AuthEntityRetrieveTestITCase.java  |   17 +-
 .../v4/BoundOperationInvokeTestITCase.java      |   28 +-
 .../fit/proxy/v4/DerivedTypeTestITCase.java     |   32 +-
 .../fit/proxy/v4/EntityCreateTestITCase.java    |   44 +-
 .../fit/proxy/v4/EntityRetrieveTestITCase.java  |   29 +-
 .../fit/proxy/v4/EntitySetTestITCase.java       |   14 +-
 .../fit/proxy/v4/EntityUpdateTestITCase.java    |   39 +-
 .../olingo/fit/proxy/v4/FilterTestITCase.java   |   28 +-
 .../fit/proxy/v4/KeyAsSegmentTestITCase.java    |   14 +-
 .../fit/proxy/v4/MediaEntityTestITCase.java     |   15 +-
 ...TransactionalAuthEntityCreateTestITCase.java |   22 +-
 .../NonTransactionalEntityCreateTestITCase.java |   17 +-
 .../NonTransactionalEntityUpdateTestITCase.java |   17 +-
 .../NonTransactionalMediaEntityTestITCase.java  |   14 +-
 .../olingo/fit/proxy/v4/OpenTypeTestITCase.java |   27 +-
 .../v4/OperationImportInvokeTestITCase.java     |   22 +-
 .../olingo/fit/proxy/v4/PropertyTestITCase.java |   14 +-
 .../fit/proxy/v4/SingletonTestITCase.java       |   14 +-
 .../v4/UnauthorizedEntityCreateTestITCase.java  |   19 +-
 .../proxy/v4/demo/odatademo/Advertisements.java |   48 +-
 .../fit/proxy/v4/demo/odatademo/Categories.java |   48 +-
 .../proxy/v4/demo/odatademo/DemoService.java    |   97 +-
 .../proxy/v4/demo/odatademo/PersonDetails.java  |   48 +-
 .../fit/proxy/v4/demo/odatademo/Persons.java    |   62 +-
 .../proxy/v4/demo/odatademo/ProductDetails.java |   48 +-
 .../fit/proxy/v4/demo/odatademo/Products.java   |   52 +-
 .../fit/proxy/v4/demo/odatademo/Suppliers.java  |   48 +-
 .../proxy/v4/demo/odatademo/package-info.java   |   16 +-
 .../proxy/v4/demo/odatademo/types/Address.java  |  272 ++--
 .../v4/demo/odatademo/types/Advertisement.java  |  279 ++---
 .../types/AdvertisementCollection.java          |   43 +-
 .../proxy/v4/demo/odatademo/types/Category.java |  220 ++--
 .../odatademo/types/CategoryCollection.java     |   43 +-
 .../proxy/v4/demo/odatademo/types/Customer.java |  285 ++---
 .../odatademo/types/CustomerCollection.java     |   43 +-
 .../proxy/v4/demo/odatademo/types/Employee.java |  391 +++---
 .../odatademo/types/EmployeeCollection.java     |   43 +-
 .../demo/odatademo/types/FeaturedProduct.java   |  615 +++++----
 .../types/FeaturedProductCollection.java        |   43 +-
 .../proxy/v4/demo/odatademo/types/Person.java   |  219 ++--
 .../demo/odatademo/types/PersonCollection.java  |   43 +-
 .../v4/demo/odatademo/types/PersonDetail.java   |  440 +++----
 .../odatademo/types/PersonDetailCollection.java |   43 +-
 .../proxy/v4/demo/odatademo/types/Product.java  |  566 ++++-----
 .../demo/odatademo/types/ProductCollection.java |   43 +-
 .../v4/demo/odatademo/types/ProductDetail.java  |  219 ++--
 .../types/ProductDetailCollection.java          |   43 +-
 .../proxy/v4/demo/odatademo/types/Supplier.java |  387 +++---
 .../odatademo/types/SupplierCollection.java     |   43 +-
 .../v4/demo/odatademo/types/package-info.java   |   16 +-
 .../opentypesservicev4/DefaultContainer.java    |   72 +-
 .../odata/services/opentypesservicev4/Row.java  |   55 +-
 .../services/opentypesservicev4/RowIndex.java   |   49 +-
 .../opentypesservicev4/package-info.java        |   16 +-
 .../opentypesservicev4/types/AccountInfo.java   |  155 +--
 .../opentypesservicev4/types/Color.java         |   45 +-
 .../types/ContactDetails.java                   |  552 ++++-----
 .../opentypesservicev4/types/IndexedRow.java    |  149 +--
 .../types/IndexedRowCollection.java             |   44 +-
 .../services/opentypesservicev4/types/Row.java  |  140 +--
 .../opentypesservicev4/types/RowCollection.java |   44 +-
 .../opentypesservicev4/types/RowIndex.java      |  168 +--
 .../types/RowIndexCollection.java               |   44 +-
 .../opentypesservicev4/types/package-info.java  |   16 +-
 .../services/odatawcfservice/Accounts.java      |   49 +-
 .../odata/services/odatawcfservice/Boss.java    |   44 +-
 .../odata/services/odatawcfservice/Company.java |   44 +-
 .../services/odatawcfservice/Customers.java     |   50 +-
 .../odatawcfservice/DefaultStoredPI.java        |   44 +-
 .../services/odatawcfservice/Departments.java   |   50 +-
 .../services/odatawcfservice/Employees.java     |   50 +-
 .../odatawcfservice/InMemoryEntities.java       |  294 ++---
 .../services/odatawcfservice/LabourUnion.java   |   44 +-
 .../services/odatawcfservice/OrderDetails.java  |   51 +-
 .../odata/services/odatawcfservice/Orders.java  |   49 +-
 .../odata/services/odatawcfservice/People.java  |   67 +-
 .../odatawcfservice/ProductDetails.java         |   51 +-
 .../odatawcfservice/ProductReviews.java         |   51 +-
 .../services/odatawcfservice/Products.java      |   49 +-
 .../services/odatawcfservice/PublicCompany.java |   44 +-
 .../services/odatawcfservice/StoredPIs.java     |   50 +-
 .../odatawcfservice/SubscriptionTemplates.java  |   50 +-
 .../services/odatawcfservice/VipCustomer.java   |   44 +-
 .../services/odatawcfservice/package-info.java  |   16 +-
 .../odatawcfservice/types/AccessLevel.java      |   49 +-
 .../services/odatawcfservice/types/Account.java |  488 ++++----
 .../types/AccountCollection.java                |   44 +-
 .../odatawcfservice/types/AccountInfo.java      |  155 +--
 .../services/odatawcfservice/types/Address.java |  192 ++-
 .../services/odatawcfservice/types/Asset.java   |  245 ++--
 .../odatawcfservice/types/AssetCollection.java  |   44 +-
 .../services/odatawcfservice/types/Club.java    |  192 ++-
 .../odatawcfservice/types/ClubCollection.java   |   44 +-
 .../services/odatawcfservice/types/Color.java   |   45 +-
 .../services/odatawcfservice/types/Company.java |  528 ++++----
 .../odatawcfservice/types/CompanyAddress.java   |  254 ++--
 .../odatawcfservice/types/CompanyCategory.java  |   47 +-
 .../types/CompanyCollection.java                |   44 +-
 .../odatawcfservice/types/CreditCardPI.java     |  658 +++++-----
 .../types/CreditCardPICollection.java           |   44 +-
 .../odatawcfservice/types/CreditRecord.java     |  298 ++---
 .../types/CreditRecordCollection.java           |   44 +-
 .../odatawcfservice/types/Customer.java         |  823 ++++++------
 .../types/CustomerCollection.java               |   44 +-
 .../odatawcfservice/types/Department.java       |  274 ++--
 .../types/DepartmentCollection.java             |   44 +-
 .../odatawcfservice/types/Employee.java         |  739 +++++------
 .../types/EmployeeCollection.java               |   44 +-
 .../odatawcfservice/types/GiftCard.java         |  377 +++---
 .../types/GiftCardCollection.java               |   44 +-
 .../odatawcfservice/types/HomeAddress.java      |  254 ++--
 .../services/odatawcfservice/types/IsBoss.java  |   25 +-
 .../odatawcfservice/types/LabourUnion.java      |  192 ++-
 .../types/LabourUnionCollection.java            |   44 +-
 .../services/odatawcfservice/types/Order.java   |  390 +++---
 .../odatawcfservice/types/OrderCollection.java  |   44 +-
 .../odatawcfservice/types/OrderDetail.java      |  411 +++---
 .../types/OrderDetailCollection.java            |   44 +-
 .../odatawcfservice/types/OrderDetailKey.java   |   76 +-
 .../types/PaymentInstrument.java                |  359 +++---
 .../types/PaymentInstrumentCollection.java      |   44 +-
 .../services/odatawcfservice/types/Person.java  |  594 +++++----
 .../odatawcfservice/types/PersonCollection.java |   44 +-
 .../services/odatawcfservice/types/Product.java |  644 +++++-----
 .../types/ProductCollection.java                |   61 +-
 .../odatawcfservice/types/ProductDetail.java    |  384 +++---
 .../types/ProductDetailCollection.java          |   44 +-
 .../odatawcfservice/types/ProductDetailKey.java |   76 +-
 .../odatawcfservice/types/ProductReview.java    |  405 +++---
 .../types/ProductReviewCollection.java          |   44 +-
 .../odatawcfservice/types/ProductReviewKey.java |  108 +-
 .../odatawcfservice/types/PublicCompany.java    |  700 ++++++-----
 .../types/PublicCompanyCollection.java          |   44 +-
 .../odatawcfservice/types/Statement.java        |  298 ++---
 .../types/StatementCollection.java              |   44 +-
 .../odatawcfservice/types/StoredPI.java         |  298 ++---
 .../types/StoredPICollection.java               |   44 +-
 .../odatawcfservice/types/Subscription.java     |  351 +++---
 .../types/SubscriptionCollection.java           |   44 +-
 .../odatawcfservice/types/package-info.java     |   16 +-
 .../apache/olingo/fit/tecsvc/BasicITCase.java   |    8 +-
 .../apache/olingo/fit/tecsvc/PingITCase.java    |   15 +-
 .../apache/olingo/fit/tecsvc/TecSvcConst.java   |   25 +
 .../olingo/fit/v3/AbstractTestITCase.java       |  128 +-
 .../fit/v3/ActionOverloadingTestITCase.java     |   57 +-
 .../apache/olingo/fit/v3/AsyncTestITCase.java   |   33 +-
 .../fit/v3/AuthEntityRetrieveTestITCase.java    |   14 +-
 .../apache/olingo/fit/v3/BatchTestITCase.java   |  115 +-
 .../apache/olingo/fit/v3/CountTestITCase.java   |   18 +-
 .../olingo/fit/v3/EntityCreateTestITCase.java   |  120 +-
 .../olingo/fit/v3/EntityRetrieveTestITCase.java |   30 +-
 .../olingo/fit/v3/EntitySetTestITCase.java      |   18 +-
 .../olingo/fit/v3/EntityUpdateTestITCase.java   |   60 +-
 .../apache/olingo/fit/v3/ErrorTestITCase.java   |   18 +-
 .../olingo/fit/v3/FilterFactoryTestITCase.java  |   70 +-
 .../apache/olingo/fit/v3/FilterTestITCase.java  |   18 +-
 .../apache/olingo/fit/v3/InvokeTestITCase.java  |   73 +-
 .../olingo/fit/v3/KeyAsSegmentTestITCase.java   |   20 +-
 .../apache/olingo/fit/v3/LinkTestITCase.java    |   37 +-
 .../olingo/fit/v3/MediaEntityTestITCase.java    |   30 +-
 .../olingo/fit/v3/MetadataTestITCase.java       |   19 +-
 .../olingo/fit/v3/OpenTypeTestITCase.java       |   96 +-
 .../olingo/fit/v3/PrimitiveKeysTestITCase.java  |   16 +-
 .../fit/v3/PropertyRetrieveTestITCase.java      |  124 +-
 .../olingo/fit/v3/PropertyTestITCase.java       |   68 +-
 .../olingo/fit/v3/PropertyValueTestITCase.java  |   44 +-
 .../olingo/fit/v3/QueryOptionsTestITCase.java   |   32 +-
 .../fit/v3/ServiceDocumentTestITCase.java       |   19 +-
 .../v3/XHTTPMethodEntityUpdateTestITCase.java   |   14 +-
 .../v3/XHTTPMethodPropertyUpdateTestITCase.java |   14 +-
 .../olingo/fit/v4/AbstractTestITCase.java       |   38 +-
 .../apache/olingo/fit/v4/AsyncTestITCase.java   |   44 +-
 .../olingo/fit/v4/AuthBatchTestITCase.java      |   16 +-
 .../apache/olingo/fit/v4/BatchTestITCase.java   |  112 +-
 .../fit/v4/BoundOperationInvokeTestITCase.java  |  232 ++--
 .../olingo/fit/v4/ConformanceTestITCase.java    |  106 +-
 .../apache/olingo/fit/v4/DeltaTestITCase.java   |   18 +-
 .../olingo/fit/v4/DerivedTypeTestITCase.java    |   66 +-
 .../olingo/fit/v4/EntityCreateTestITCase.java   |   76 +-
 .../olingo/fit/v4/EntityRetrieveTestITCase.java |   60 +-
 .../olingo/fit/v4/EntitySetTestITCase.java      |   22 +-
 .../olingo/fit/v4/EntityUpdateTestITCase.java   |   50 +-
 .../olingo/fit/v4/ErrorResponseTestITCase.java  |   22 +-
 .../olingo/fit/v4/FilterFactoryTestITCase.java  |   20 +-
 .../fit/v4/JSONFormatConformanceTestITCase.java |  164 +--
 .../olingo/fit/v4/KeyAsSegmentTestITCase.java   |   24 +-
 .../olingo/fit/v4/MediaEntityTestITCase.java    |   40 +-
 .../olingo/fit/v4/MetadataTestITCase.java       |   34 +-
 .../olingo/fit/v4/OpenTypeTestITCase.java       |   98 +-
 .../fit/v4/OperationImportInvokeTestITCase.java |  128 +-
 .../olingo/fit/v4/PropertyTestITCase.java       |   55 +-
 .../olingo/fit/v4/PropertyValueTestITCase.java  |   38 +-
 .../olingo/fit/v4/QueryOptionsTestITCase.java   |   54 +-
 .../fit/v4/ServiceDocumentTestITCase.java       |   23 +-
 .../olingo/fit/v4/SingletonTestITCase.java      |   36 +-
 .../apache/olingo/commons/api/Constants.java    |   14 +-
 .../commons/api/ODataApplicationException.java  |   16 +-
 .../olingo/commons/api/ODataException.java      |   16 +-
 .../api/ODataNotImplementedException.java       |   16 +-
 .../commons/api/ODataRuntimeException.java      |    6 +-
 .../olingo/commons/api/data/Annotatable.java    |   14 +-
 .../olingo/commons/api/data/Annotation.java     |   14 +-
 .../olingo/commons/api/data/ContextURL.java     |   25 +-
 .../olingo/commons/api/data/DeletedEntity.java  |   14 +-
 .../apache/olingo/commons/api/data/Delta.java   |   14 +-
 .../olingo/commons/api/data/DeltaLink.java      |   14 +-
 .../apache/olingo/commons/api/data/Entity.java  |   61 +-
 .../olingo/commons/api/data/EntitySet.java      |   32 +-
 .../olingo/commons/api/data/GeoUtils.java       |   70 +-
 .../apache/olingo/commons/api/data/Link.java    |   42 +-
 .../apache/olingo/commons/api/data/Linked.java  |   22 +-
 .../commons/api/data/LinkedComplexValue.java    |   14 +-
 .../olingo/commons/api/data/Property.java       |   14 +-
 .../apache/olingo/commons/api/data/ResWrap.java |   22 +-
 .../olingo/commons/api/data/Valuable.java       |   27 +-
 .../olingo/commons/api/data/ValueType.java      |   16 +-
 .../commons/api/data/v3/LinkCollection.java     |   22 +-
 .../api/domain/AbstractODataPayload.java        |   16 +-
 .../commons/api/domain/AbstractODataValue.java  |   26 +-
 .../commons/api/domain/CommonODataEntity.java   |   53 +-
 .../api/domain/CommonODataEntitySet.java        |   22 +-
 .../api/domain/CommonODataObjectFactory.java    |   37 +-
 .../commons/api/domain/CommonODataProperty.java |   28 +-
 .../api/domain/ODataCollectionValue.java        |   24 +-
 .../commons/api/domain/ODataComplexValue.java   |   24 +-
 .../olingo/commons/api/domain/ODataError.java   |   24 +-
 .../commons/api/domain/ODataErrorDetail.java    |   20 +-
 .../commons/api/domain/ODataInlineEntity.java   |   25 +-
 .../api/domain/ODataInlineEntitySet.java        |   25 +-
 .../commons/api/domain/ODataInvokeResult.java   |   19 +-
 .../olingo/commons/api/domain/ODataItem.java    |   19 +-
 .../olingo/commons/api/domain/ODataLink.java    |   60 +-
 .../commons/api/domain/ODataLinkType.java       |   20 +-
 .../olingo/commons/api/domain/ODataLinked.java  |   26 +-
 .../commons/api/domain/ODataOperation.java      |   26 +-
 .../commons/api/domain/ODataPrimitiveValue.java |   21 +-
 .../commons/api/domain/ODataPropertyType.java   |   14 +-
 .../api/domain/ODataServiceDocument.java        |   38 +-
 .../olingo/commons/api/domain/ODataValue.java   |   28 +-
 .../commons/api/domain/v3/ODataEntity.java      |   15 +-
 .../commons/api/domain/v3/ODataEntitySet.java   |   15 +-
 .../api/domain/v3/ODataObjectFactory.java       |   17 +-
 .../commons/api/domain/v3/ODataProperty.java    |   18 +-
 .../commons/api/domain/v4/ODataAnnotatable.java |   14 +-
 .../commons/api/domain/v4/ODataAnnotation.java  |   16 +-
 .../api/domain/v4/ODataDeletedEntity.java       |   14 +-
 .../commons/api/domain/v4/ODataDelta.java       |   14 +-
 .../commons/api/domain/v4/ODataDeltaLink.java   |   14 +-
 .../commons/api/domain/v4/ODataEntity.java      |   17 +-
 .../commons/api/domain/v4/ODataEntitySet.java   |   19 +-
 .../commons/api/domain/v4/ODataEnumValue.java   |   14 +-
 .../olingo/commons/api/domain/v4/ODataLink.java |   15 +-
 .../api/domain/v4/ODataLinkedComplexValue.java  |   16 +-
 .../api/domain/v4/ODataObjectFactory.java       |   17 +-
 .../commons/api/domain/v4/ODataProperty.java    |   17 +-
 .../commons/api/domain/v4/ODataSingleton.java   |   17 +-
 .../commons/api/domain/v4/ODataValuable.java    |   36 +-
 .../commons/api/domain/v4/ODataValue.java       |   22 +-
 .../org/apache/olingo/commons/api/edm/Edm.java  |   54 +-
 .../olingo/commons/api/edm/EdmAction.java       |   16 +-
 .../olingo/commons/api/edm/EdmActionImport.java |   18 +-
 .../commons/api/edm/EdmActionImportInfo.java    |   18 +-
 .../olingo/commons/api/edm/EdmAnnotatable.java  |   16 +-
 .../olingo/commons/api/edm/EdmAnnotation.java   |   14 +-
 .../olingo/commons/api/edm/EdmAnnotations.java  |   16 +-
 .../commons/api/edm/EdmAnnotationsTarget.java   |   18 +-
 .../commons/api/edm/EdmBindingTarget.java       |   22 +-
 .../olingo/commons/api/edm/EdmComplexType.java  |   16 +-
 .../olingo/commons/api/edm/EdmElement.java      |   16 +-
 .../commons/api/edm/EdmEntityContainer.java     |   20 +-
 .../olingo/commons/api/edm/EdmEntitySet.java    |   16 +-
 .../commons/api/edm/EdmEntitySetInfo.java       |   18 +-
 .../olingo/commons/api/edm/EdmEntityType.java   |   26 +-
 .../olingo/commons/api/edm/EdmEnumType.java     |   16 +-
 .../olingo/commons/api/edm/EdmException.java    |   16 +-
 .../olingo/commons/api/edm/EdmFunction.java     |   16 +-
 .../commons/api/edm/EdmFunctionImport.java      |   20 +-
 .../commons/api/edm/EdmFunctionImportInfo.java  |   18 +-
 .../commons/api/edm/EdmKeyPropertyRef.java      |   16 +-
 .../olingo/commons/api/edm/EdmMappable.java     |   18 +-
 .../olingo/commons/api/edm/EdmMapping.java      |   24 +-
 .../olingo/commons/api/edm/EdmMember.java       |   16 +-
 .../apache/olingo/commons/api/edm/EdmNamed.java |   16 +-
 .../api/edm/EdmNavigationPropertyBinding.java   |    8 +-
 .../olingo/commons/api/edm/EdmOperation.java    |   24 +-
 .../commons/api/edm/EdmOperationImport.java     |   16 +-
 .../commons/api/edm/EdmOperationImportInfo.java |   16 +-
 .../olingo/commons/api/edm/EdmParameter.java    |   16 +-
 .../commons/api/edm/EdmPrimitiveType.java       |   40 +-
 .../api/edm/EdmPrimitiveTypeException.java      |   16 +-
 .../commons/api/edm/EdmPrimitiveTypeKind.java   |   39 +-
 .../olingo/commons/api/edm/EdmProperty.java     |   20 +-
 .../olingo/commons/api/edm/EdmReturnType.java   |   16 +-
 .../olingo/commons/api/edm/EdmSchema.java       |   20 +-
 .../commons/api/edm/EdmServiceMetadata.java     |   17 +-
 .../olingo/commons/api/edm/EdmSingleton.java    |   16 +-
 .../commons/api/edm/EdmSingletonInfo.java       |   18 +-
 .../commons/api/edm/EdmStructuredType.java      |   36 +-
 .../apache/olingo/commons/api/edm/EdmTerm.java  |   19 +-
 .../apache/olingo/commons/api/edm/EdmType.java  |   18 +-
 .../commons/api/edm/EdmTypeDefinition.java      |   16 +-
 .../apache/olingo/commons/api/edm/EdmTyped.java |   18 +-
 .../commons/api/edm/FullQualifiedName.java      |   10 +-
 .../apache/olingo/commons/api/edm/Target.java   |    4 +-
 .../commons/api/edm/annotation/EdmAnd.java      |   14 +-
 .../edm/annotation/EdmAnnotationExpression.java |   14 +-
 .../api/edm/annotation/EdmAnnotationPath.java   |   14 +-
 .../commons/api/edm/annotation/EdmApply.java    |   17 +-
 .../commons/api/edm/annotation/EdmCast.java     |   14 +-
 .../api/edm/annotation/EdmCollection.java       |   14 +-
 .../EdmConstantAnnotationExpression.java        |   14 +-
 .../EdmDynamicAnnotationExpression.java         |   14 +-
 .../commons/api/edm/annotation/EdmEq.java       |   14 +-
 .../commons/api/edm/annotation/EdmGe.java       |   14 +-
 .../commons/api/edm/annotation/EdmGt.java       |   14 +-
 .../commons/api/edm/annotation/EdmIf.java       |   14 +-
 .../commons/api/edm/annotation/EdmIsOf.java     |   14 +-
 .../api/edm/annotation/EdmLabeledElement.java   |   14 +-
 .../annotation/EdmLabeledElementReference.java  |   14 +-
 .../commons/api/edm/annotation/EdmLe.java       |   14 +-
 .../commons/api/edm/annotation/EdmLt.java       |   14 +-
 .../annotation/EdmNavigationPropertyPath.java   |   14 +-
 .../commons/api/edm/annotation/EdmNe.java       |   14 +-
 .../commons/api/edm/annotation/EdmNot.java      |   14 +-
 .../commons/api/edm/annotation/EdmNull.java     |   14 +-
 .../commons/api/edm/annotation/EdmOr.java       |   14 +-
 .../commons/api/edm/annotation/EdmPath.java     |   14 +-
 .../api/edm/annotation/EdmPropertyPath.java     |   14 +-
 .../api/edm/annotation/EdmPropertyValue.java    |   14 +-
 .../commons/api/edm/annotation/EdmRecord.java   |   15 +-
 ...mTwoParamsOpDynamicAnnotationExpression.java |   14 +-
 .../commons/api/edm/annotation/EdmUrlRef.java   |   14 +-
 .../api/edm/constants/EdmContentKind.java       |   14 +-
 .../commons/api/edm/constants/EdmOnDelete.java  |   16 +-
 .../commons/api/edm/constants/EdmTypeKind.java  |   16 +-
 .../api/edm/constants/ODataServiceVersion.java  |   35 +-
 .../commons/api/edm/geo/ComposedGeospatial.java |   18 +-
 .../olingo/commons/api/edm/geo/Geospatial.java  |   26 +-
 .../api/edm/geo/GeospatialCollection.java       |   19 +-
 .../olingo/commons/api/edm/geo/LineString.java  |   19 +-
 .../commons/api/edm/geo/MultiLineString.java    |   19 +-
 .../olingo/commons/api/edm/geo/MultiPoint.java  |   19 +-
 .../commons/api/edm/geo/MultiPolygon.java       |   19 +-
 .../olingo/commons/api/edm/geo/Point.java       |   24 +-
 .../olingo/commons/api/edm/geo/Polygon.java     |   29 +-
 .../apache/olingo/commons/api/edm/geo/SRID.java |   24 +-
 .../olingo/commons/api/edm/package-info.java    |   17 +-
 .../olingo/commons/api/format/AcceptType.java   |   42 +-
 .../olingo/commons/api/format/ContentType.java  |   55 +-
 .../olingo/commons/api/format/ODataFormat.java  |   46 +-
 .../olingo/commons/api/http/HttpHeader.java     |    2 +-
 .../olingo/commons/api/http/HttpMethod.java     |   14 +-
 .../api/serialization/ODataDeserializer.java    |   22 +-
 .../ODataDeserializerException.java             |   14 +-
 .../api/serialization/ODataSerializer.java      |   14 +-
 .../serialization/ODataSerializerException.java |   14 +-
 .../olingo/commons/api/data/ContextURLTest.java |   37 +-
 .../commons/api/format/AcceptTypeTest.java      |   60 +
 .../core/data/AbstractAnnotatedObject.java      |   14 +-
 .../commons/core/data/AbstractODataObject.java  |   18 +-
 .../commons/core/data/AbstractValuable.java     |   16 +-
 .../commons/core/data/AnnotationImpl.java       |   14 +-
 .../commons/core/data/DeletedEntityImpl.java    |   15 +-
 .../olingo/commons/core/data/DeltaLinkImpl.java |   15 +-
 .../olingo/commons/core/data/EntityImpl.java    |   25 +-
 .../olingo/commons/core/data/EntitySetImpl.java |   15 +-
 .../olingo/commons/core/data/LinkImpl.java      |   14 +-
 .../core/data/LinkedComplexValueImpl.java       |   14 +-
 .../commons/core/data/ODataErrorDetailImpl.java |   14 +-
 .../commons/core/data/ODataErrorImpl.java       |   16 +-
 .../olingo/commons/core/data/PropertyImpl.java  |   21 +-
 .../core/data/v3/LinkCollectionImpl.java        |   21 +-
 .../olingo/commons/core/data/v4/DeltaImpl.java  |   15 +-
 .../domain/AbstractODataCollectionValue.java    |   31 +-
 .../core/domain/AbstractODataComplexValue.java  |   31 +-
 .../core/domain/AbstractODataEntity.java        |   49 +-
 .../core/domain/AbstractODataEntitySet.java     |   17 +-
 .../core/domain/AbstractODataObjectFactory.java |   20 +-
 .../domain/AbstractODataPrimitiveValue.java     |   22 +-
 .../core/domain/AbstractODataProperty.java      |   42 +-
 .../domain/v3/ODataCollectionValueImpl.java     |   14 +-
 .../core/domain/v3/ODataComplexValueImpl.java   |   14 +-
 .../commons/core/domain/v3/ODataEntityImpl.java |   15 +-
 .../core/domain/v3/ODataEntitySetImpl.java      |   18 +-
 .../core/domain/v3/ODataObjectFactoryImpl.java  |   29 +-
 .../core/domain/v3/ODataPrimitiveValueImpl.java |   16 +-
 .../core/domain/v3/ODataPropertyImpl.java       |   18 +-
 .../core/domain/v4/ODataAnnotationImpl.java     |   22 +-
 .../domain/v4/ODataCollectionValueImpl.java     |   17 +-
 .../core/domain/v4/ODataComplexValueImpl.java   |   37 +-
 .../core/domain/v4/ODataDeletedEntityImpl.java  |   15 +-
 .../commons/core/domain/v4/ODataDeltaImpl.java  |   17 +-
 .../core/domain/v4/ODataDeltaLinkImpl.java      |   15 +-
 .../commons/core/domain/v4/ODataEntityImpl.java |   15 +-
 .../core/domain/v4/ODataEntitySetImpl.java      |   15 +-
 .../core/domain/v4/ODataEnumValueImpl.java      |   16 +-
 .../core/domain/v4/ODataObjectFactoryImpl.java  |   33 +-
 .../core/domain/v4/ODataPrimitiveValueImpl.java |   18 +-
 .../core/domain/v4/ODataPropertyImpl.java       |   25 +-
 .../core/domain/v4/ODataValuableImpl.java       |   40 +-
 .../olingo/commons/core/edm/AbstractEdm.java    |   42 +-
 .../core/edm/AbstractEdmBindingTarget.java      |   23 +-
 .../core/edm/AbstractEdmComplexType.java        |    8 +-
 .../core/edm/AbstractEdmEntityContainer.java    |    2 +-
 .../commons/core/edm/AbstractEdmEntityType.java |   23 +-
 .../commons/core/edm/AbstractEdmEnumType.java   |   40 +-
 .../core/edm/AbstractEdmKeyPropertyRef.java     |   22 +-
 .../commons/core/edm/AbstractEdmMember.java     |   16 +-
 .../core/edm/AbstractEdmNavigationProperty.java |    2 +-
 .../commons/core/edm/AbstractEdmOperation.java  |   22 +-
 .../core/edm/AbstractEdmOperationImport.java    |   24 +-
 .../commons/core/edm/AbstractEdmParameter.java  |   16 +-
 .../commons/core/edm/AbstractEdmProperty.java   |   14 +-
 .../commons/core/edm/AbstractEdmReturnType.java |   16 +-
 .../commons/core/edm/AbstractEdmSchema.java     |   24 +-
 .../core/edm/AbstractEdmStructuredType.java     |   10 +-
 .../core/edm/AbstractEdmTypeDefinition.java     |   30 +-
 .../olingo/commons/core/edm/ActionMapKey.java   |   24 +-
 .../core/edm/EdmActionImportInfoImpl.java       |   16 +-
 .../commons/core/edm/EdmAnnotationHelper.java   |   17 +-
 .../olingo/commons/core/edm/EdmElementImpl.java |   16 +-
 .../commons/core/edm/EdmEntitySetInfoImpl.java  |   16 +-
 .../core/edm/EdmFunctionImportInfoImpl.java     |   16 +-
 .../olingo/commons/core/edm/EdmNamedImpl.java   |   14 +-
 .../edm/EdmNavigationPropertyBindingImpl.java   |    4 +-
 .../core/edm/EdmOperationImportInfoImpl.java    |   16 +-
 .../commons/core/edm/EdmSingletonInfoImpl.java  |   16 +-
 .../core/edm/EdmStructuredTypeHelper.java       |   14 +-
 .../olingo/commons/core/edm/EdmTypeInfo.java    |   73 +-
 .../olingo/commons/core/edm/FunctionMapKey.java |   34 +-
 ...mAnnotatableDynamicAnnotationExpression.java |   17 +-
 .../AbstractEdmAnnotationEspression.java        |   14 +-
 .../AbstractEdmDynamicAnnotationExpression.java |   16 +-
 .../AbstractEdmElementOrAttributeNotation.java  |   14 +-
 ...mTwoParamsOpDynamicAnnotationExpression.java |   18 +-
 .../commons/core/edm/annotation/EdmAndImpl.java |   14 +-
 .../edm/annotation/EdmAnnotationPathImpl.java   |   14 +-
 .../core/edm/annotation/EdmApplyImpl.java       |   15 +-
 .../core/edm/annotation/EdmCollectionImpl.java  |   15 +-
 .../commons/core/edm/annotation/EdmEqImpl.java  |   14 +-
 .../commons/core/edm/annotation/EdmGeImpl.java  |   14 +-
 .../commons/core/edm/annotation/EdmGtImpl.java  |   14 +-
 .../commons/core/edm/annotation/EdmIfImpl.java  |   16 +-
 .../edm/annotation/EdmLabeledElementImpl.java   |   16 +-
 .../EdmLabeledElementReferenceImpl.java         |   16 +-
 .../commons/core/edm/annotation/EdmLeImpl.java  |   14 +-
 .../commons/core/edm/annotation/EdmLtImpl.java  |   14 +-
 .../EdmNavigationPropertyPathImpl.java          |   16 +-
 .../commons/core/edm/annotation/EdmNeImpl.java  |   14 +-
 .../commons/core/edm/annotation/EdmNotImpl.java |   14 +-
 .../core/edm/annotation/EdmNullImpl.java        |   14 +-
 .../commons/core/edm/annotation/EdmOrImpl.java  |   14 +-
 .../core/edm/annotation/EdmPathImpl.java        |   14 +-
 .../edm/annotation/EdmPropertyPathImpl.java     |   14 +-
 .../edm/annotation/EdmPropertyValueImpl.java    |   16 +-
 .../core/edm/annotation/EdmUrlRefImpl.java      |   14 +-
 .../primitivetype/AbstractGeospatialType.java   |  345 +++---
 .../primitivetype/AbstractPrimitiveType.java    |   44 +-
 .../core/edm/primitivetype/EdmBinary.java       |   42 +-
 .../core/edm/primitivetype/EdmBoolean.java      |   34 +-
 .../commons/core/edm/primitivetype/EdmByte.java |   40 +-
 .../commons/core/edm/primitivetype/EdmDate.java |   34 +-
 .../core/edm/primitivetype/EdmDateTime.java     |   34 +-
 .../edm/primitivetype/EdmDateTimeOffset.java    |   76 +-
 .../core/edm/primitivetype/EdmDecimal.java      |   74 +-
 .../core/edm/primitivetype/EdmDouble.java       |   54 +-
 .../core/edm/primitivetype/EdmDuration.java     |   52 +-
 .../core/edm/primitivetype/EdmGeography.java    |   24 +-
 .../primitivetype/EdmGeographyCollection.java   |   26 +-
 .../primitivetype/EdmGeographyLineString.java   |   24 +-
 .../EdmGeographyMultiLineString.java            |   26 +-
 .../primitivetype/EdmGeographyMultiPoint.java   |   24 +-
 .../primitivetype/EdmGeographyMultiPolygon.java |   24 +-
 .../edm/primitivetype/EdmGeographyPoint.java    |   24 +-
 .../edm/primitivetype/EdmGeographyPolygon.java  |   24 +-
 .../core/edm/primitivetype/EdmGeometry.java     |   24 +-
 .../primitivetype/EdmGeometryCollection.java    |   26 +-
 .../primitivetype/EdmGeometryLineString.java    |   24 +-
 .../EdmGeometryMultiLineString.java             |   26 +-
 .../primitivetype/EdmGeometryMultiPoint.java    |   24 +-
 .../primitivetype/EdmGeometryMultiPolygon.java  |   26 +-
 .../edm/primitivetype/EdmGeometryPoint.java     |   24 +-
 .../edm/primitivetype/EdmGeometryPolygon.java   |   24 +-
 .../commons/core/edm/primitivetype/EdmGuid.java |   36 +-
 .../core/edm/primitivetype/EdmInt16.java        |   42 +-
 .../core/edm/primitivetype/EdmInt32.java        |   42 +-
 .../core/edm/primitivetype/EdmInt64.java        |   48 +-
 .../primitivetype/EdmPrimitiveTypeFactory.java  |  160 +--
 .../core/edm/primitivetype/EdmSByte.java        |   36 +-
 .../core/edm/primitivetype/EdmSingle.java       |   48 +-
 .../core/edm/primitivetype/EdmStream.java       |   31 +-
 .../core/edm/primitivetype/EdmString.java       |   31 +-
 .../commons/core/edm/primitivetype/EdmTime.java |   16 +-
 .../core/edm/primitivetype/EdmTimeOfDay.java    |   34 +-
 .../primitivetype/SingletonPrimitiveType.java   |   16 +-
 .../commons/core/edm/primitivetype/Uint7.java   |   28 +-
 .../core/serialization/AbstractAtomDealer.java  |  105 +-
 .../core/serialization/AtomDeserializer.java    |   34 +-
 .../serialization/AtomGeoValueDeserializer.java |  114 +-
 .../serialization/AtomGeoValueSerializer.java   |  164 +--
 .../core/serialization/AtomSerializer.java      |   32 +-
 .../serialization/JsonDeltaDeserializer.java    |   21 +-
 .../core/serialization/JsonDeserializer.java    |   26 +-
 .../serialization/JsonEntityDeserializer.java   |   14 +-
 .../serialization/JsonEntitySerializer.java     |   14 +-
 .../JsonEntitySetDeserializer.java              |   18 +-
 .../serialization/JsonEntitySetSerializer.java  |   14 +-
 .../serialization/JsonGeoValueDeserializer.java |  122 +-
 .../serialization/JsonGeoValueSerializer.java   |  140 +--
 .../JsonLinkCollectionDeserializer.java         |   16 +-
 .../JsonODataErrorDeserializer.java             |   18 +-
 .../JsonODataErrorDetailDeserializer.java       |   14 +-
 .../serialization/JsonPropertyDeserializer.java |   16 +-
 .../serialization/JsonPropertySerializer.java   |   26 +-
 .../core/serialization/JsonSerializer.java      |   22 +-
 .../apache/olingo/commons/core/EncoderTest.java |    2 +-
 .../commons/core/edm/ActionMapKeyTest.java      |   19 +-
 .../commons/core/edm/EdmImplCachingTest.java    |   24 +-
 .../commons/core/edm/EdmImplCallCreateTest.java |   24 +-
 .../commons/core/edm/FunctionMapKeyTest.java    |   17 +-
 .../primitivetype/CommonPrimitiveTypeTest.java  |   40 +-
 .../core/edm/primitivetype/EdmBinaryTest.java   |   42 +-
 .../core/edm/primitivetype/EdmBooleanTest.java  |   16 +-
 .../core/edm/primitivetype/EdmByteTest.java     |   16 +-
 .../core/edm/primitivetype/EdmDateTest.java     |   16 +-
 .../primitivetype/EdmDateTimeOffsetTest.java    |   26 +-
 .../core/edm/primitivetype/EdmDecimalTest.java  |   16 +-
 .../core/edm/primitivetype/EdmDoubleTest.java   |   16 +-
 .../core/edm/primitivetype/EdmDurationTest.java |   16 +-
 .../core/edm/primitivetype/EdmGeoTest.java      |   49 +-
 .../core/edm/primitivetype/EdmGuidTest.java     |   16 +-
 .../core/edm/primitivetype/EdmInt16Test.java    |   16 +-
 .../core/edm/primitivetype/EdmInt32Test.java    |   16 +-
 .../core/edm/primitivetype/EdmInt64Test.java    |   16 +-
 .../core/edm/primitivetype/EdmNullTest.java     |   16 +-
 .../core/edm/primitivetype/EdmSByteTest.java    |   16 +-
 .../core/edm/primitivetype/EdmSingleTest.java   |   28 +-
 .../core/edm/primitivetype/EdmStringTest.java   |   16 +-
 .../edm/primitivetype/EdmTimeOfDayTest.java     |   18 +-
 .../primitivetype/PrimitiveTypeBaseTest.java    |   54 +-
 .../core/edm/primitivetype/UInt7Test.java       |   20 +-
 lib/server-api/pom.xml                          |    4 +
 .../apache/olingo/server/api/ODataRequest.java  |   37 +-
 .../api/processor/CollectionProcessor.java      |   29 +
 .../api/processor/CustomContentTypeSupport.java |   28 +
 .../server/api/processor/DefaultProcessor.java  |   10 +-
 .../api/processor/EntitySetProcessor.java       |   29 -
 .../api/processor/FormatContentTypeMapping.java |   53 +
 .../server/api/processor/MetadataProcessor.java |    2 +-
 .../olingo/server/api/ODataRequestTest.java     |   66 +
 .../olingo/server/core/ContentNegotiator.java   |  158 +++
 .../server/core/DefaultRedirectProcessor.java   |   16 +-
 .../apache/olingo/server/core/ODataHandler.java |   86 +-
 .../server/core/ODataHttpHandlerImpl.java       |   12 +-
 .../apache/olingo/server/core/ODataImpl.java    |    2 +-
 .../core/serializer/ODataXmlSerializerImpl.java |    5 +-
 .../serializer/json/ODataJsonSerializer.java    |    9 +-
 .../json/ServiceDocumentJsonSerializer.java     |    2 +-
 .../xml/MetadataDocumentXmlSerializer.java      |    3 +-
 .../server/core/ContentNegotiatorTest.java      |  233 ++++
 .../server/core/edm/provider/EdmEnumTest.java   |    2 +-
 .../core/edm/provider/EdmMemberImplTest.java    |    6 +-
 lib/server-tecsvc/pom.xml                       |   34 -
 .../olingo/server/tecsvc/TechnicalServlet.java  |   48 +-
 .../server/tecsvc/data/model/EtAllPrim.java     |   36 +-
 .../server/tecsvc/data/model/EtTwoPrim.java     |    8 +-
 .../tecsvc/processor/SampleJsonProcessor.java   |   82 +-
 .../tecsvc/processor/TechnicalProcessor.java    |   23 +-
 .../tecsvc/provider/ContainerProvider.java      |    4 +-
 .../src/main/webapp/META-INF/MANIFEST.MF        |    8 +-
 .../olingo/server/api/ODataRequestTest.java     |   45 -
 .../olingo/server/core/ODataHandlerTest.java    |   22 +-
 .../core/uri/testutil/ResourceValidator.java    |    2 +-
 .../core/uri/validator/UriValidatorTest.java    |    7 +-
 903 files changed, 34701 insertions(+), 41979 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/66f26e5b/lib/commons-core/src/main/java/org/apache/olingo/commons/core/data/PropertyImpl.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/66f26e5b/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/json/ODataJsonSerializer.java
----------------------------------------------------------------------
diff --cc lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/json/ODataJsonSerializer.java
index 536ead1,21304b6..2ea5b9e
--- a/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/json/ODataJsonSerializer.java
+++ b/lib/server-core/src/main/java/org/apache/olingo/server/core/serializer/json/ODataJsonSerializer.java
@@@ -135,60 -147,48 +135,61 @@@ public class ODataJsonSerializer implem
          json.writeNull();
        }
      } else {
 -      if (edmProperty.isPrimitive()) {
 -        if (property.isPrimitive()) {
 -          writePrimitiveValue(edmProperty, property.asPrimitive(), json);
 -        } else if (property.isGeospatial()) {
 -          throw new ODataRuntimeException("Property type not yet supported!");
 -        } else if (property.isEnum()) {
 -          json.writeString(property.asEnum().toString());
 -        } else {
 -          throw new ODataRuntimeException("Inconsistent property type!");
 -        }
 -      } else if (edmProperty.isCollection()) {
 -        json.writeStartArray();
 -        for (Object value : property.asCollection()) {
 -          switch (property.getValueType()) {
 -          case COLLECTION_PRIMITIVE:
 -            writePrimitiveValue(edmProperty, value, json);
 -            break;
 -          case COLLECTION_GEOSPATIAL:
 -            throw new ODataRuntimeException("Property type not yet supported!");
 -          case COLLECTION_ENUM:
 -            json.writeString(value.toString());
 -            break;
 -          case COLLECTION_LINKED_COMPLEX:
 -            writeLinkedComplexValue(edmProperty, (LinkedComplexValue) value, json);
 -            break;
 -          default:
 -            throw new ODataRuntimeException("Property type not yet supported!");
 -          }
 -        }
 -        json.writeEndArray();
 +      if (edmProperty.isCollection()) {
 +        handleCollection(edmProperty, property, json);
 +      } else if (edmProperty.isPrimitive()) {
 +        handlePrimitive(edmProperty, property, json);
 +      } else if (property.isLinkedComplex()) {
 +        writeComplexValue(edmProperty, property.asLinkedComplex().getValue(), json);
 +      } else if(property.isComplex()) {
 +        writeComplexValue(edmProperty, property.asComplex(), json);
        } else {
 -        if (property.isLinkedComplex()) {
 -          writeLinkedComplexValue(edmProperty, property.asLinkedComplex(), json);
 -        } else {
 -          throw new ODataRuntimeException("Property type not yet supported!");
 -        }
 +        throw new ODataRuntimeException("Property type not yet supported!");
 +      }
 +    }
 +  }
 +
 +  private void handleCollection(EdmProperty edmProperty, Property property, JsonGenerator json)
 +          throws IOException, EdmPrimitiveTypeException {
 +    json.writeStartArray();
 +    for (Object value : property.asCollection()) {
 +      switch (property.getValueType()) {
 +      case COLLECTION_PRIMITIVE:
 +        writePrimitiveValue(edmProperty, value, json);
 +        break;
 +      case COLLECTION_GEOSPATIAL:
 +        throw new ODataRuntimeException("Property type not yet supported!");
 +      case COLLECTION_ENUM:
 +        json.writeString(value.toString());
 +        break;
 +      case COLLECTION_LINKED_COMPLEX:
 +        writeComplexValue(edmProperty, ((LinkedComplexValue) value).getValue(), json);
 +        break;
 +      case COLLECTION_COMPLEX:
 +        writeComplexValue(edmProperty, property.asComplex(), json);
 +        break;
 +      default:
 +        throw new ODataRuntimeException("Property type not yet supported!");
        }
      }
 +    json.writeEndArray();
 +  }
 +
 +  private void handlePrimitive(EdmProperty edmProperty, Property property, JsonGenerator json)
 +          throws EdmPrimitiveTypeException, IOException {
 +    if (property.isPrimitive()) {
 +      writePrimitiveValue(edmProperty, property.asPrimitive(), json);
 +    } else if (property.isGeospatial()) {
 +      throw new ODataRuntimeException("Property type not yet supported!");
 +    } else if (property.isEnum()) {
 +      json.writeString(property.asEnum().toString());
 +    } else {
 +      throw new ODataRuntimeException("Inconsistent property type!");
 +    }
    }
  
-   protected void writePrimitiveValue(final EdmProperty edmProperty, final Object primitiveValue, JsonGenerator json)
+   protected void writePrimitiveValue(final EdmProperty edmProperty, final Object primitiveValue,
+       final JsonGenerator json)
        throws EdmPrimitiveTypeException, IOException {
      final EdmPrimitiveType type = (EdmPrimitiveType) edmProperty.getType();
      final String value = type.valueToString(primitiveValue,

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/66f26e5b/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/processor/SampleJsonProcessor.java
----------------------------------------------------------------------
diff --cc lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/processor/SampleJsonProcessor.java
index bfdede8,e7d6717..e34fd42
--- a/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/processor/SampleJsonProcessor.java
+++ b/lib/server-tecsvc/src/main/java/org/apache/olingo/server/tecsvc/processor/SampleJsonProcessor.java
@@@ -27,10 -27,7 +27,9 @@@ import org.apache.olingo.commons.api.da
  import org.apache.olingo.commons.api.data.Property;
  import org.apache.olingo.commons.api.data.ValueType;
  import org.apache.olingo.commons.api.edm.Edm;
 +import org.apache.olingo.commons.api.edm.EdmEntitySet;
 +import org.apache.olingo.commons.api.edm.EdmEntityType;
  import org.apache.olingo.commons.api.edm.FullQualifiedName;
- import org.apache.olingo.commons.api.edm.constants.EdmTypeKind;
  import org.apache.olingo.commons.api.format.ContentType;
  import org.apache.olingo.commons.api.format.ODataFormat;
  import org.apache.olingo.commons.api.http.HttpStatusCode;
@@@ -40,88 -37,67 +39,88 @@@ import org.apache.olingo.commons.core.d
  import org.apache.olingo.server.api.OData;
  import org.apache.olingo.server.api.ODataRequest;
  import org.apache.olingo.server.api.ODataResponse;
+ import org.apache.olingo.server.api.processor.CollectionProcessor;
  import org.apache.olingo.server.api.processor.EntityProcessor;
- import org.apache.olingo.server.api.processor.EntitySetProcessor;
  import org.apache.olingo.server.api.serializer.ODataSerializer;
  import org.apache.olingo.server.api.uri.UriInfo;
 +import org.apache.olingo.server.api.uri.UriResource;
  import org.slf4j.Logger;
  import org.slf4j.LoggerFactory;
  
- public class SampleJsonProcessor implements EntitySetProcessor, EntityProcessor {
-     private static final Logger LOG = LoggerFactory.getLogger(SampleJsonProcessor.class);
+ public class SampleJsonProcessor implements CollectionProcessor, EntityProcessor {
+   private static final Logger LOG = LoggerFactory.getLogger(SampleJsonProcessor.class);
  
-     private OData odata;
-     private Edm edm;
+   private OData odata;
+   private Edm edm;
  
-     @Override
-     public void init(OData odata, Edm edm) {
-       this.odata = odata;
-       this.edm = edm;
-     }
+   @Override
 -  public void init(final OData odata, final Edm edm) {
++  public void init(OData odata, Edm edm) {
+     this.odata = odata;
+     this.edm = edm;
+   }
  
-     @Override
-     public void readEntitySet(ODataRequest request, ODataResponse response, UriInfo uriInfo, String format) {
-       long time = System.nanoTime();
- 
-       LOG.info((System.nanoTime() - time) / 1000 + " microseconds");
-       time = System.nanoTime();
-       ODataSerializer serializer = odata.createSerializer(ODataFormat.JSON);
-       EdmEntitySet edmEntitySet = getEntitySet(uriInfo);
-       ContextURL contextUrl = getContextUrl(request, edmEntitySet.getEntityType());
-       EntitySet entitySet = createEntitySet(edmEntitySet.getEntityType(), contextUrl.getURI().toASCIIString());
-       response.setContent(serializer.entitySet(edmEntitySet, entitySet, contextUrl));
-       LOG.info("Finished in " + (System.nanoTime() - time) / 1000 + " microseconds");
- 
-       response.setStatusCode(HttpStatusCode.OK.getStatusCode());
-       response.setHeader("Content-Type", ContentType.APPLICATION_JSON.toContentTypeString());
-     }
+   @Override
 -  public void readCollection(final ODataRequest request, final ODataResponse response, final UriInfo uriInfo,
 -      final String format) {
++  public void readCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo, String format) {
+     long time = System.nanoTime();
+ 
 -    EntitySet entitySet = createEntitySet();
 -
+     LOG.info((System.nanoTime() - time) / 1000 + " microseconds");
+     time = System.nanoTime();
+     ODataSerializer serializer = odata.createSerializer(ODataFormat.JSON);
 -    response.setContent(serializer.entitySet(
 -        edm.getEntityContainer(new FullQualifiedName("com.sap.odata.test1", "Container"))
 -            .getEntitySet("ESAllPrim"),
 -        entitySet,
 -        ContextURL.getInstance(URI.create("dummyContextURL"))));
++    EdmEntitySet edmEntitySet = getEntitySet(uriInfo);
++    ContextURL contextUrl = getContextUrl(request, edmEntitySet.getEntityType());
++    EntitySet entitySet = createEntitySet(edmEntitySet.getEntityType(), contextUrl.getURI().toASCIIString());
++    response.setContent(serializer.entitySet(edmEntitySet, entitySet, contextUrl));
+     LOG.info("Finished in " + (System.nanoTime() - time) / 1000 + " microseconds");
+ 
+     response.setStatusCode(HttpStatusCode.OK.getStatusCode());
+     response.setHeader("Content-Type", ContentType.APPLICATION_JSON.toContentTypeString());
+   }
  
-     @Override
-     public void readEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo, String format) {
-       long time = System.nanoTime();
+   @Override
 -  public void readEntity(final ODataRequest request, final ODataResponse response, final UriInfo uriInfo,
 -      final String format) {
++  public void readEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo, String format) {
+     long time = System.nanoTime();
 -    Entity entity = createEntity();
  
-       LOG.info((System.nanoTime() - time) / 1000 + " microseconds");
-       time = System.nanoTime();
-       ODataSerializer serializer = odata.createSerializer(ODataFormat.JSON);
-       EdmEntityType entityType = getEntityType(uriInfo);
-       Entity entity = createEntity(entityType);
+     LOG.info((System.nanoTime() - time) / 1000 + " microseconds");
+     time = System.nanoTime();
+     ODataSerializer serializer = odata.createSerializer(ODataFormat.JSON);
 -    response.setContent(serializer.entity(
 -        edm.getEntityContainer(new FullQualifiedName("com.sap.odata.test1", "Container"))
 -            .getEntitySet("ESAllPrim").getEntityType(),
 -        entity,
 -        ContextURL.getInstance(URI.create("dummyContextURL"))));
++    EdmEntityType entityType = getEntityType(uriInfo);
++    Entity entity = createEntity(entityType);
 +
-       response.setContent(serializer.entity(entityType, entity,
-               getContextUrl(request, entityType)));
-       LOG.info("Finished in " + (System.nanoTime() - time) / 1000 + " microseconds");
++    response.setContent(serializer.entity(entityType, entity,
++            getContextUrl(request, entityType)));
+     LOG.info("Finished in " + (System.nanoTime() - time) / 1000 + " microseconds");
  
-       response.setStatusCode(HttpStatusCode.OK.getStatusCode());
-       response.setHeader("Content-Type", ContentType.APPLICATION_JSON.toContentTypeString());
-     }
+     response.setStatusCode(HttpStatusCode.OK.getStatusCode());
+     response.setHeader("Content-Type", ContentType.APPLICATION_JSON.toContentTypeString());
+   }
  
 -  protected Entity createEntity() {
 +  private ContextURL getContextUrl(ODataRequest request, EdmEntityType entityType) {
 +    return ContextURL.getInstance(URI.create(request.getRawBaseUri() + "/" + entityType.getName()));
 +  }
 +
 +  public EdmEntityType getEntityType(UriInfo uriInfo) {
 +    return getEntitySet(uriInfo).getEntityType();
 +  }
 +
 +  public EdmEntitySet getEntitySet(UriInfo uriInfo) {
 +    List<UriResource> resourcePaths = uriInfo.getUriResourceParts();
 +    if(resourcePaths.isEmpty()) {
 +      throw new RuntimeException("Invalid resource path.");
 +    }
 +    String entitySetName = resourcePaths.get(resourcePaths.size()-1).toString();
 +    return edm.getEntityContainer(new FullQualifiedName("com.sap.odata.test1", "Container"))
 +            .getEntitySet(entitySetName);
 +  }
 +
 +  protected Entity createEntity(EdmEntityType entityType) {
 +    boolean complex = (entityType.getName().contains("Comp"));
 +    if(entityType.getName().contains("Coll")) {
 +      return createEntityWithCollection(complex);
 +    }
 +    return createEntity(complex);
 +  }
 +
 +  protected Entity createEntity(boolean complex) {
      Entity entity = new EntityImpl();
      Property property = new PropertyImpl();
      property.setName("PropertyString");
@@@ -143,88 -114,12 +142,87 @@@
      return entity;
    }
  
 -  protected EntitySet createEntitySet() {
 +  protected Entity createEntityWithCollection(boolean complex) {
 +    Entity entity = new EntityImpl();
 +    Property propertyInt = new PropertyImpl();
 +    propertyInt.setName("PropertyInt16");
 +    propertyInt.setValue(ValueType.PRIMITIVE, 42);
 +    Property property = new PropertyImpl();
 +    property.setName("CollPropertyString");
 +    property.setValue(ValueType.COLLECTION_PRIMITIVE, Arrays.asList("dummyValue", "dummyValue_2"));
 +    entity.getProperties().add(property);
 +    entity.getProperties().add(propertyInt);
 +    Property propertyGuid = new PropertyImpl();
 +    propertyGuid.setName("CollPropertyGuid");
 +    propertyGuid.setValue(ValueType.COLLECTION_PRIMITIVE, Arrays.asList(UUID.randomUUID(), UUID.randomUUID()));
 +    entity.getProperties().add(propertyGuid);
 +
 +    if(complex) {
 +      entity.addProperty(createCollectionOfComplexProperty());
 +    }
 +
 +    return entity;
 +  }
 +
 +  protected Property createComplexProperty() {
 +    List<Property> properties = new ArrayList<Property>();
 +    Property property = new PropertyImpl();
 +    property.setName("PropertyString");
 +    property.setValue(ValueType.PRIMITIVE, "dummyValue");
 +    properties.add(property);
 +    Property propertyInt = new PropertyImpl();
 +    propertyInt.setName("PropertyInt16");
 +    propertyInt.setValue(ValueType.PRIMITIVE, 42);
 +    properties.add(propertyInt);
 +    Property propertyGuid = new PropertyImpl();
 +    propertyGuid.setName("PropertyGuid");
 +    propertyGuid.setValue(ValueType.PRIMITIVE, UUID.randomUUID());
 +    properties.add(propertyGuid);
 +
 +    return new PropertyImpl("com.sap.odata.test1.ETCompAllPrim", "PropertyComplex", ValueType.COMPLEX,
 +            properties);
 +  }
 +
 +  protected Property createCollectionOfComplexProperty() {
 +    List<Property> properties = new ArrayList<Property>();
 +    Property property = new PropertyImpl();
 +    property.setName("PropertyString");
 +    property.setValue(ValueType.PRIMITIVE, "dummyValue");
 +    properties.add(property);
 +    Property propertyInt = new PropertyImpl();
 +    propertyInt.setName("PropertyInt16");
 +    propertyInt.setValue(ValueType.PRIMITIVE, 42);
 +    properties.add(propertyInt);
 +    Property propertyGuid = new PropertyImpl();
 +    propertyGuid.setName("PropertyGuid");
 +    propertyGuid.setValue(ValueType.PRIMITIVE, UUID.randomUUID());
 +    properties.add(propertyGuid);
 +
 +    List<Property> properties2 = new ArrayList<Property>();
 +    Property property2 = new PropertyImpl();
 +    property2.setName("PropertyString");
 +    property2.setValue(ValueType.PRIMITIVE, "dummyValue2");
 +    properties2.add(property2);
 +    Property property2Int = new PropertyImpl();
 +    property2Int.setName("PropertyInt16");
 +    property2Int.setValue(ValueType.PRIMITIVE, 44);
 +    properties2.add(property2Int);
 +    Property property2Guid = new PropertyImpl();
 +    property2Guid.setName("PropertyGuid");
 +    property2Guid.setValue(ValueType.PRIMITIVE, UUID.randomUUID());
 +    properties2.add(property2Guid);
 +
 +    return new PropertyImpl("com.sap.odata.test1.ETCompAllPrim", "PropertyComplex", ValueType.COMPLEX,
 +            Arrays.asList(properties, properties2));
 +  }
 +
- 
 +  protected EntitySet createEntitySet(EdmEntityType edmEntityType, String baseUri) {
      EntitySet entitySet = new EntitySetImpl();
 -    entitySet.setCount(4242);
 -    entitySet.setNext(URI.create("nextLinkURI"));
 -    for (int i = 0; i < 1000; i++) {
 -      entitySet.getEntities().add(createEntity());
 +    int count = (int) ((Math.random() * 50) + 1);
 +    entitySet.setCount(count);
 +    entitySet.setNext(URI.create(baseUri + "nextLink"));
 +    for (int i = 0; i < count; i++) {
 +      entitySet.getEntities().add(createEntity(edmEntityType));
      }
      return entitySet;
    }