You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by fm...@apache.org on 2014/05/26 16:05:20 UTC
[23/24] git commit: Some refinements arounf pojogen
Some refinements arounf pojogen
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/24a031b7
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/24a031b7
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/24a031b7
Branch: refs/heads/master
Commit: 24a031b7503b85a1f972b578285663a880704915
Parents: 5b5ff8e
Author: fmartelli <fa...@gmail.com>
Authored: Mon May 26 16:00:25 2014 +0200
Committer: fmartelli <fa...@gmail.com>
Committed: Mon May 26 16:00:25 2014 +0200
----------------------------------------------------------------------
.../src/it/exchangeMail/pom.xml | 93 +++++
.../src/test/resources/metadata.xml | 353 +++++++++++++++++++
.../src/it/exchangeMail/verify.groovy | 20 ++
.../src/it/exchangeMailNoBasePkg/pom.xml | 92 +++++
.../src/test/resources/metadata.xml | 353 +++++++++++++++++++
.../src/it/exchangeMailNoBasePkg/verify.groovy | 20 ++
.../olingo/ext/pojogen/AbstractPOJOGenMojo.java | 39 +-
.../olingo/ext/pojogen/AbstractUtility.java | 31 +-
.../src/main/resources/complexType.vm | 13 +-
.../src/main/resources/containedEntitySet.vm | 65 ----
.../src/main/resources/container.vm | 20 +-
.../src/main/resources/entityCollection.vm | 6 +-
.../src/main/resources/entitySet.vm | 6 +-
.../src/main/resources/entityType.vm | 98 +++--
.../src/main/resources/entityTypeKey.vm | 6 +-
.../src/main/resources/enumType.vm | 4 +-
.../src/main/resources/singleton.vm | 4 +-
.../src/main/resources/term.vm | 8 +-
.../src/main/resources/v30/complexType.vm | 19 +-
.../src/main/resources/v40/complexType.vm | 75 ++--
.../src/main/resources/v40/singleton.vm | 2 +-
.../AllGeoCollectionTypesSet.java | 5 +-
.../astoriadefaultservice/AllGeoTypesSet.java | 5 +-
.../services/astoriadefaultservice/Car.java | 5 +-
.../astoriadefaultservice/Computer.java | 5 +-
.../astoriadefaultservice/ComputerDetail.java | 5 +-
.../astoriadefaultservice/Customer.java | 5 +-
.../astoriadefaultservice/CustomerInfo.java | 5 +-
.../astoriadefaultservice/DefaultContainer.java | 50 +--
.../services/astoriadefaultservice/Driver.java | 5 +-
.../astoriadefaultservice/LastLogin.java | 5 +-
.../services/astoriadefaultservice/License.java | 5 +-
.../services/astoriadefaultservice/Login.java | 5 +-
.../astoriadefaultservice/MappedEntityType.java | 5 +-
.../services/astoriadefaultservice/Message.java | 3 +-
.../MessageAttachment.java | 5 +-
.../services/astoriadefaultservice/Order.java | 5 +-
.../astoriadefaultservice/OrderLine.java | 3 +-
.../astoriadefaultservice/PageView.java | 5 +-
.../services/astoriadefaultservice/Person.java | 5 +-
.../astoriadefaultservice/PersonMetadata.java | 5 +-
.../services/astoriadefaultservice/Product.java | 5 +-
.../astoriadefaultservice/ProductDetail.java | 5 +-
.../astoriadefaultservice/ProductPhoto.java | 3 +-
.../astoriadefaultservice/ProductReview.java | 3 +-
.../astoriadefaultservice/RSAToken.java | 5 +-
.../astoriadefaultservice/types/Aliases.java | 23 +-
.../types/AllSpatialCollectionTypes.java | 40 ++-
.../AllSpatialCollectionTypesCollection.java | 7 +-
.../types/AllSpatialCollectionTypes_Simple.java | 100 ++++--
...SpatialCollectionTypes_SimpleCollection.java | 7 +-
.../types/AllSpatialTypes.java | 200 +++++++----
.../types/AllSpatialTypesCollection.java | 7 +-
.../astoriadefaultservice/types/AuditInfo.java | 35 +-
.../types/BackOrderLine.java | 106 ++++--
.../types/BackOrderLine2.java | 106 ++++--
.../types/BackOrderLine2Collection.java | 7 +-
.../types/BackOrderLineCollection.java | 7 +-
.../astoriadefaultservice/types/Car.java | 66 ++--
.../types/CarCollection.java | 7 +-
.../types/ComplexToCategory.java | 35 +-
.../astoriadefaultservice/types/Computer.java | 60 +++-
.../types/ComputerCollection.java | 7 +-
.../types/ComputerDetail.java | 114 ++++--
.../types/ComputerDetailCollection.java | 7 +-
.../types/ConcurrencyInfo.java | 29 +-
.../types/ContactDetails.java | 55 +--
.../astoriadefaultservice/types/Contractor.java | 106 ++++--
.../types/ContractorCollection.java | 7 +-
.../astoriadefaultservice/types/Customer.java | 168 ++++++---
.../types/CustomerCollection.java | 7 +-
.../types/CustomerInfo.java | 50 ++-
.../types/CustomerInfoCollection.java | 7 +-
.../astoriadefaultservice/types/Dimensions.java | 35 +-
.../types/DiscontinuedProduct.java | 195 ++++++----
.../types/DiscontinuedProductCollection.java | 7 +-
.../astoriadefaultservice/types/Driver.java | 60 +++-
.../types/DriverCollection.java | 7 +-
.../astoriadefaultservice/types/Employee.java | 116 ++++--
.../types/EmployeeCollection.java | 9 +-
.../astoriadefaultservice/types/LastLogin.java | 80 +++--
.../types/LastLoginCollection.java | 7 +-
.../astoriadefaultservice/types/License.java | 90 +++--
.../types/LicenseCollection.java | 7 +-
.../astoriadefaultservice/types/Login.java | 116 ++++--
.../types/LoginCollection.java | 7 +-
.../types/MappedEntityType.java | 230 ++++++++----
.../types/MappedEntityTypeCollection.java | 7 +-
.../astoriadefaultservice/types/Message.java | 138 +++++---
.../types/MessageAttachment.java | 48 ++-
.../types/MessageAttachmentCollection.java | 7 +-
.../types/MessageCollection.java | 7 +-
.../astoriadefaultservice/types/MessageKey.java | 14 +-
.../astoriadefaultservice/types/Order.java | 88 +++--
.../types/OrderCollection.java | 7 +-
.../astoriadefaultservice/types/OrderLine.java | 110 ++++--
.../types/OrderLineCollection.java | 7 +-
.../types/OrderLineKey.java | 14 +-
.../astoriadefaultservice/types/PageView.java | 90 +++--
.../types/PageViewCollection.java | 7 +-
.../astoriadefaultservice/types/Person.java | 66 ++--
.../types/PersonCollection.java | 7 +-
.../types/PersonMetadata.java | 80 +++--
.../types/PersonMetadataCollection.java | 7 +-
.../astoriadefaultservice/types/Phone.java | 29 +-
.../astoriadefaultservice/types/Product.java | 158 ++++++---
.../types/ProductCollection.java | 7 +-
.../types/ProductDetail.java | 60 +++-
.../types/ProductDetailCollection.java | 7 +-
.../types/ProductPageView.java | 110 ++++--
.../types/ProductPageViewCollection.java | 7 +-
.../types/ProductPhoto.java | 58 ++-
.../types/ProductPhotoCollection.java | 7 +-
.../types/ProductPhotoKey.java | 14 +-
.../types/ProductReview.java | 80 +++--
.../types/ProductReviewCollection.java | 7 +-
.../types/ProductReviewKey.java | 20 +-
.../astoriadefaultservice/types/RSAToken.java | 60 +++-
.../types/RSATokenCollection.java | 7 +-
.../types/SpecialEmployee.java | 158 ++++++---
.../types/SpecialEmployeeCollection.java | 9 +-
.../opentypesservicev3/DefaultContainer.java | 10 +-
.../odata/services/opentypesservicev3/Row.java | 5 +-
.../services/opentypesservicev3/RowIndex.java | 5 +-
.../types/ContactDetails.java | 87 +++--
.../opentypesservicev3/types/IndexedRow.java | 40 ++-
.../types/IndexedRowCollection.java | 7 +-
.../services/opentypesservicev3/types/Row.java | 40 ++-
.../opentypesservicev3/types/RowCollection.java | 7 +-
.../opentypesservicev3/types/RowIndex.java | 50 ++-
.../types/RowIndexCollection.java | 7 +-
.../primitivekeysservice/EdmBinarySet.java | 3 +-
.../primitivekeysservice/EdmBooleanSet.java | 5 +-
.../primitivekeysservice/EdmByteSet.java | 5 +-
.../EdmDateTimeOffsetSet.java | 5 +-
.../primitivekeysservice/EdmDateTimeSet.java | 5 +-
.../primitivekeysservice/EdmDecimalSet.java | 5 +-
.../primitivekeysservice/EdmDoubleSet.java | 5 +-
.../primitivekeysservice/EdmGuidSet.java | 5 +-
.../primitivekeysservice/EdmInt16Set.java | 5 +-
.../primitivekeysservice/EdmInt32Set.java | 5 +-
.../primitivekeysservice/EdmInt64Set.java | 5 +-
.../primitivekeysservice/EdmSingleSet.java | 5 +-
.../primitivekeysservice/EdmStringSet.java | 5 +-
.../primitivekeysservice/EdmTimeSet.java | 5 +-
.../services/primitivekeysservice/Folders.java | 5 +-
.../primitivekeysservice/TestContext.java | 21 +-
.../primitivekeysservice/types/EdmBinary.java | 38 +-
.../types/EdmBinaryCollection.java | 7 +-
.../primitivekeysservice/types/EdmBoolean.java | 40 ++-
.../types/EdmBooleanCollection.java | 7 +-
.../primitivekeysservice/types/EdmByte.java | 40 ++-
.../types/EdmByteCollection.java | 7 +-
.../primitivekeysservice/types/EdmDateTime.java | 40 ++-
.../types/EdmDateTimeCollection.java | 7 +-
.../types/EdmDateTimeOffset.java | 40 ++-
.../types/EdmDateTimeOffsetCollection.java | 7 +-
.../primitivekeysservice/types/EdmDecimal.java | 40 ++-
.../types/EdmDecimalCollection.java | 7 +-
.../primitivekeysservice/types/EdmDouble.java | 40 ++-
.../types/EdmDoubleCollection.java | 7 +-
.../primitivekeysservice/types/EdmGuid.java | 40 ++-
.../types/EdmGuidCollection.java | 7 +-
.../primitivekeysservice/types/EdmInt16.java | 40 ++-
.../types/EdmInt16Collection.java | 7 +-
.../primitivekeysservice/types/EdmInt32.java | 40 ++-
.../types/EdmInt32Collection.java | 7 +-
.../primitivekeysservice/types/EdmInt64.java | 40 ++-
.../types/EdmInt64Collection.java | 7 +-
.../primitivekeysservice/types/EdmSingle.java | 40 ++-
.../types/EdmSingleCollection.java | 7 +-
.../primitivekeysservice/types/EdmString.java | 40 ++-
.../types/EdmStringCollection.java | 7 +-
.../primitivekeysservice/types/EdmTime.java | 40 ++-
.../types/EdmTimeCollection.java | 7 +-
.../primitivekeysservice/types/Folder.java | 60 +++-
.../types/FolderCollection.java | 7 +-
.../AllGeoCollectionTypesSet.java | 5 +-
.../astoriadefaultservice/AllGeoTypesSet.java | 5 +-
.../services/astoriadefaultservice/Car.java | 5 +-
.../astoriadefaultservice/Computer.java | 5 +-
.../astoriadefaultservice/ComputerDetail.java | 5 +-
.../astoriadefaultservice/Customer.java | 5 +-
.../astoriadefaultservice/CustomerInfo.java | 5 +-
.../astoriadefaultservice/DefaultContainer.java | 72 ++--
.../services/astoriadefaultservice/Driver.java | 5 +-
.../astoriadefaultservice/LastLogin.java | 5 +-
.../services/astoriadefaultservice/License.java | 5 +-
.../services/astoriadefaultservice/Login.java | 5 +-
.../astoriadefaultservice/MappedEntityType.java | 5 +-
.../services/astoriadefaultservice/Message.java | 3 +-
.../MessageAttachment.java | 5 +-
.../services/astoriadefaultservice/Order.java | 5 +-
.../astoriadefaultservice/OrderLine.java | 3 +-
.../astoriadefaultservice/PageView.java | 5 +-
.../services/astoriadefaultservice/Person.java | 5 +-
.../astoriadefaultservice/PersonMetadata.java | 5 +-
.../services/astoriadefaultservice/Product.java | 5 +-
.../astoriadefaultservice/ProductDetail.java | 5 +-
.../astoriadefaultservice/ProductPhoto.java | 3 +-
.../astoriadefaultservice/ProductReview.java | 3 +-
.../astoriadefaultservice/RSAToken.java | 5 +-
.../astoriadefaultservice/types/Aliases.java | 23 +-
.../types/AllSpatialCollectionTypes.java | 40 ++-
.../AllSpatialCollectionTypesCollection.java | 7 +-
.../types/AllSpatialCollectionTypes_Simple.java | 100 ++++--
...SpatialCollectionTypes_SimpleCollection.java | 7 +-
.../types/AllSpatialTypes.java | 200 +++++++----
.../types/AllSpatialTypesCollection.java | 7 +-
.../astoriadefaultservice/types/AuditInfo.java | 35 +-
.../types/BackOrderLine.java | 102 ++++--
.../types/BackOrderLine2.java | 102 ++++--
.../types/BackOrderLine2Collection.java | 7 +-
.../types/BackOrderLineCollection.java | 7 +-
.../astoriadefaultservice/types/Car.java | 66 ++--
.../types/CarCollection.java | 7 +-
.../types/ComplexToCategory.java | 35 +-
.../types/ComplexWithAllPrimitiveTypes.java | 99 +++---
.../astoriadefaultservice/types/Computer.java | 66 ++--
.../types/ComputerCollection.java | 7 +-
.../types/ComputerDetail.java | 120 ++++---
.../types/ComputerDetailCollection.java | 7 +-
.../types/ConcurrencyInfo.java | 29 +-
.../types/ContactDetails.java | 55 +--
.../astoriadefaultservice/types/Contractor.java | 100 ++++--
.../types/ContractorCollection.java | 7 +-
.../astoriadefaultservice/types/Customer.java | 168 ++++++---
.../types/CustomerCollection.java | 7 +-
.../types/CustomerInfo.java | 50 ++-
.../types/CustomerInfoCollection.java | 7 +-
.../astoriadefaultservice/types/Dimensions.java | 35 +-
.../types/DiscontinuedProduct.java | 195 ++++++----
.../types/DiscontinuedProductCollection.java | 7 +-
.../astoriadefaultservice/types/Driver.java | 60 +++-
.../types/DriverCollection.java | 7 +-
.../astoriadefaultservice/types/Employee.java | 110 ++++--
.../types/EmployeeCollection.java | 9 +-
.../astoriadefaultservice/types/LastLogin.java | 80 +++--
.../types/LastLoginCollection.java | 7 +-
.../astoriadefaultservice/types/License.java | 90 +++--
.../types/LicenseCollection.java | 7 +-
.../astoriadefaultservice/types/Login.java | 116 ++++--
.../types/LoginCollection.java | 7 +-
.../types/MappedEntityType.java | 230 ++++++++----
.../types/MappedEntityTypeCollection.java | 7 +-
.../astoriadefaultservice/types/Message.java | 138 +++++---
.../types/MessageAttachment.java | 48 ++-
.../types/MessageAttachmentCollection.java | 7 +-
.../types/MessageCollection.java | 7 +-
.../astoriadefaultservice/types/MessageKey.java | 14 +-
.../astoriadefaultservice/types/Order.java | 88 +++--
.../types/OrderCollection.java | 7 +-
.../astoriadefaultservice/types/OrderLine.java | 102 ++++--
.../types/OrderLineCollection.java | 7 +-
.../types/OrderLineKey.java | 14 +-
.../astoriadefaultservice/types/PageView.java | 90 +++--
.../types/PageViewCollection.java | 7 +-
.../astoriadefaultservice/types/Person.java | 60 +++-
.../types/PersonCollection.java | 7 +-
.../types/PersonMetadata.java | 80 +++--
.../types/PersonMetadataCollection.java | 7 +-
.../astoriadefaultservice/types/Phone.java | 29 +-
.../astoriadefaultservice/types/Product.java | 156 +++++---
.../types/ProductCollection.java | 7 +-
.../types/ProductDetail.java | 60 +++-
.../types/ProductDetailCollection.java | 7 +-
.../types/ProductPageView.java | 110 ++++--
.../types/ProductPageViewCollection.java | 7 +-
.../types/ProductPhoto.java | 58 ++-
.../types/ProductPhotoCollection.java | 7 +-
.../types/ProductPhotoKey.java | 14 +-
.../types/ProductReview.java | 80 +++--
.../types/ProductReviewCollection.java | 7 +-
.../types/ProductReviewKey.java | 20 +-
.../astoriadefaultservice/types/RSAToken.java | 60 +++-
.../types/RSATokenCollection.java | 7 +-
.../types/SpecialEmployee.java | 152 +++++---
.../types/SpecialEmployeeCollection.java | 7 +-
.../fit/proxy/v4/demo/Advertisements.java | 52 +++
.../olingo/fit/proxy/v4/demo/Categories.java | 52 +++
.../olingo/fit/proxy/v4/demo/DemoService.java | 83 +++++
.../olingo/fit/proxy/v4/demo/PersonDetails.java | 52 +++
.../olingo/fit/proxy/v4/demo/Persons.java | 56 +++
.../fit/proxy/v4/demo/ProductDetails.java | 52 +++
.../olingo/fit/proxy/v4/demo/Products.java | 54 +++
.../olingo/fit/proxy/v4/demo/Suppliers.java | 52 +++
.../proxy/v4/demo/odatademo/Advertisements.java | 52 ---
.../fit/proxy/v4/demo/odatademo/Categories.java | 52 ---
.../proxy/v4/demo/odatademo/DemoService.java | 85 -----
.../proxy/v4/demo/odatademo/PersonDetails.java | 52 ---
.../fit/proxy/v4/demo/odatademo/Persons.java | 56 ---
.../proxy/v4/demo/odatademo/ProductDetails.java | 52 ---
.../fit/proxy/v4/demo/odatademo/Products.java | 54 ---
.../fit/proxy/v4/demo/odatademo/Suppliers.java | 52 ---
.../proxy/v4/demo/odatademo/package-info.java | 21 --
.../proxy/v4/demo/odatademo/types/Address.java | 140 --------
.../v4/demo/odatademo/types/Advertisement.java | 150 --------
.../types/AdvertisementCollection.java | 47 ---
.../proxy/v4/demo/odatademo/types/Category.java | 124 -------
.../odatademo/types/CategoryCollection.java | 47 ---
.../proxy/v4/demo/odatademo/types/Customer.java | 148 --------
.../odatademo/types/CustomerCollection.java | 47 ---
.../proxy/v4/demo/odatademo/types/Employee.java | 194 ----------
.../odatademo/types/EmployeeCollection.java | 47 ---
.../demo/odatademo/types/FeaturedProduct.java | 276 ---------------
.../types/FeaturedProductCollection.java | 47 ---
.../proxy/v4/demo/odatademo/types/Person.java | 124 -------
.../demo/odatademo/types/PersonCollection.java | 47 ---
.../v4/demo/odatademo/types/PersonDetail.java | 224 ------------
.../odatademo/types/PersonDetailCollection.java | 47 ---
.../proxy/v4/demo/odatademo/types/Product.java | 271 --------------
.../demo/odatademo/types/ProductCollection.java | 47 ---
.../v4/demo/odatademo/types/ProductDetail.java | 124 -------
.../types/ProductDetailCollection.java | 47 ---
.../proxy/v4/demo/odatademo/types/Supplier.java | 201 -----------
.../odatademo/types/SupplierCollection.java | 47 ---
.../v4/demo/odatademo/types/package-info.java | 21 --
.../olingo/fit/proxy/v4/demo/package-info.java | 21 ++
.../olingo/fit/proxy/v4/demo/types/Address.java | 178 ++++++++++
.../fit/proxy/v4/demo/types/Advertisement.java | 176 +++++++++
.../v4/demo/types/AdvertisementCollection.java | 52 +++
.../fit/proxy/v4/demo/types/Category.java | 146 ++++++++
.../proxy/v4/demo/types/CategoryCollection.java | 52 +++
.../fit/proxy/v4/demo/types/Customer.java | 174 +++++++++
.../proxy/v4/demo/types/CustomerCollection.java | 52 +++
.../fit/proxy/v4/demo/types/Employee.java | 228 ++++++++++++
.../proxy/v4/demo/types/EmployeeCollection.java | 52 +++
.../proxy/v4/demo/types/FeaturedProduct.java | 330 +++++++++++++++++
.../demo/types/FeaturedProductCollection.java | 52 +++
.../olingo/fit/proxy/v4/demo/types/Person.java | 146 ++++++++
.../proxy/v4/demo/types/PersonCollection.java | 52 +++
.../fit/proxy/v4/demo/types/PersonDetail.java | 258 ++++++++++++++
.../v4/demo/types/PersonDetailCollection.java | 52 +++
.../olingo/fit/proxy/v4/demo/types/Product.java | 321 +++++++++++++++++
.../proxy/v4/demo/types/ProductCollection.java | 52 +++
.../fit/proxy/v4/demo/types/ProductDetail.java | 146 ++++++++
.../v4/demo/types/ProductDetailCollection.java | 52 +++
.../fit/proxy/v4/demo/types/Supplier.java | 231 ++++++++++++
.../proxy/v4/demo/types/SupplierCollection.java | 52 +++
.../fit/proxy/v4/demo/types/package-info.java | 21 ++
.../opentypesservicev4/DefaultContainer.java | 10 +-
.../odata/services/opentypesservicev4/Row.java | 4 +-
.../services/opentypesservicev4/RowIndex.java | 4 +-
.../opentypesservicev4/types/AccountInfo.java | 45 ++-
.../opentypesservicev4/types/Color.java | 10 +-
.../types/ContactDetails.java | 141 ++++++--
.../opentypesservicev4/types/IndexedRow.java | 37 +-
.../types/IndexedRowCollection.java | 2 +-
.../services/opentypesservicev4/types/Row.java | 37 +-
.../opentypesservicev4/types/RowCollection.java | 2 +-
.../opentypesservicev4/types/RowIndex.java | 43 ++-
.../types/RowIndexCollection.java | 2 +-
.../services/odatawcfservice/Accounts.java | 5 +-
.../odatawcfservice/ActiveSubscriptions.java | 51 ---
.../odata/services/odatawcfservice/Assets.java | 51 ---
.../odatawcfservice/BillingStatements.java | 51 ---
.../odata/services/odatawcfservice/Boss.java | 5 +-
.../odata/services/odatawcfservice/Club.java | 51 ---
.../odata/services/odatawcfservice/Company.java | 5 +-
.../services/odatawcfservice/CreditRecords.java | 51 ---
.../services/odatawcfservice/Customers.java | 5 +-
.../odatawcfservice/DefaultStoredPI.java | 5 +-
.../services/odatawcfservice/Departments.java | 5 +-
.../services/odatawcfservice/Employees.java | 5 +-
.../odatawcfservice/InMemoryEntities.java | 57 ++-
.../services/odatawcfservice/LabourUnion.java | 5 +-
.../services/odatawcfservice/MyGiftCard.java | 51 ---
.../odatawcfservice/MyPaymentInstruments.java | 53 ---
.../services/odatawcfservice/OrderDetails.java | 3 +-
.../odata/services/odatawcfservice/Orders.java | 5 +-
.../odata/services/odatawcfservice/People.java | 5 +-
.../odatawcfservice/ProductDetails.java | 3 +-
.../odatawcfservice/ProductReviews.java | 3 +-
.../services/odatawcfservice/Products.java | 5 +-
.../services/odatawcfservice/PublicCompany.java | 5 +-
.../services/odatawcfservice/StoredPIs.java | 5 +-
.../odatawcfservice/SubscriptionTemplates.java | 5 +-
.../services/odatawcfservice/VipCustomer.java | 5 +-
.../services/odatawcfservice/package-info.java | 1 +
.../odatawcfservice/types/AccessLevel.java | 11 +-
.../services/odatawcfservice/types/Account.java | 137 +++----
.../types/AccountCollection.java | 3 +-
.../odatawcfservice/types/AccountInfo.java | 38 +-
.../services/odatawcfservice/types/Address.java | 46 ++-
.../services/odatawcfservice/types/Asset.java | 51 +--
.../odatawcfservice/types/AssetCollection.java | 3 +-
.../services/odatawcfservice/types/Club.java | 43 +--
.../odatawcfservice/types/ClubCollection.java | 3 +-
.../services/odatawcfservice/types/Color.java | 11 +-
.../services/odatawcfservice/types/Company.java | 93 +++--
.../odatawcfservice/types/CompanyAddress.java | 55 +--
.../odatawcfservice/types/CompanyCategory.java | 11 +-
.../types/CompanyCollection.java | 3 +-
.../odatawcfservice/types/CreditCardPI.java | 148 ++++----
.../types/CreditCardPICollection.java | 3 +-
.../odatawcfservice/types/CreditRecord.java | 59 ++--
.../types/CreditRecordCollection.java | 3 +-
.../odatawcfservice/types/Customer.java | 131 ++++---
.../types/CustomerCollection.java | 3 +-
.../odatawcfservice/types/Department.java | 57 +--
.../types/DepartmentCollection.java | 3 +-
.../odatawcfservice/types/Employee.java | 117 +++---
.../types/EmployeeCollection.java | 3 +-
.../odatawcfservice/types/GiftCard.java | 73 ++--
.../types/GiftCardCollection.java | 3 +-
.../odatawcfservice/types/HomeAddress.java | 55 +--
.../services/odatawcfservice/types/IsBoss.java | 5 +-
.../odatawcfservice/types/LabourUnion.java | 43 +--
.../types/LabourUnionCollection.java | 3 +-
.../services/odatawcfservice/types/Order.java | 77 ++--
.../odatawcfservice/types/OrderCollection.java | 3 +-
.../odatawcfservice/types/OrderDetail.java | 79 +++--
.../types/OrderDetailCollection.java | 3 +-
.../odatawcfservice/types/OrderDetailKey.java | 15 +-
.../types/PaymentInstrument.java | 96 ++---
.../types/PaymentInstrumentCollection.java | 3 +-
.../services/odatawcfservice/types/Person.java | 103 +++---
.../odatawcfservice/types/PersonCollection.java | 3 +-
.../services/odatawcfservice/types/Product.java | 103 +++---
.../types/ProductCollection.java | 5 +-
.../odatawcfservice/types/ProductDetail.java | 73 ++--
.../types/ProductDetailCollection.java | 3 +-
.../odatawcfservice/types/ProductDetailKey.java | 15 +-
.../odatawcfservice/types/ProductReview.java | 75 ++--
.../types/ProductReviewCollection.java | 3 +-
.../odatawcfservice/types/ProductReviewKey.java | 27 +-
.../odatawcfservice/types/PublicCompany.java | 138 ++++----
.../types/PublicCompanyCollection.java | 3 +-
.../odatawcfservice/types/Statement.java | 59 ++--
.../types/StatementCollection.java | 3 +-
.../odatawcfservice/types/StoredPI.java | 59 ++--
.../types/StoredPICollection.java | 3 +-
.../odatawcfservice/types/Subscription.java | 67 ++--
.../types/SubscriptionCollection.java | 3 +-
.../odatawcfservice/types/package-info.java | 1 +
.../olingo/fit/v4/ErrorResponseTestITCase.java | 2 -
.../olingo/client/core/edm/EdmSchemaImpl.java | 11 +-
.../commons/core/edm/AbstractEdmSchema.java | 6 +-
438 files changed, 12043 insertions(+), 7836 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/24a031b7/ext/pojogen-maven-plugin/src/it/exchangeMail/pom.xml
----------------------------------------------------------------------
diff --git a/ext/pojogen-maven-plugin/src/it/exchangeMail/pom.xml b/ext/pojogen-maven-plugin/src/it/exchangeMail/pom.xml
new file mode 100644
index 0000000..b918061
--- /dev/null
+++ b/ext/pojogen-maven-plugin/src/it/exchangeMail/pom.xml
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ 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.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>pojogen-maven-plugin-v4test</artifactId>
+ <groupId>org.apache.olingo</groupId>
+ <version>@project.version@</version>
+ <name>${project.artifactId}</name>
+ <description>A simple IT verifying the basic use case of pojogen-man-plugin.</description>
+
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <artifactId>pojogen-maven-plugin</artifactId>
+ <groupId>org.apache.olingo</groupId>
+ <version>@project.version@</version>
+ <scope>runtime</scope>
+ </dependency>
+
+ <dependency>
+ <artifactId>olingo-client-proxy</artifactId>
+ <groupId>org.apache.olingo</groupId>
+ <version>@project.version@</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <version>1.8</version>
+ <executions>
+ <execution>
+ <phase>process-sources</phase>
+ <goals>
+ <goal>add-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>${project.build.directory}/generated-sources</source>
+ </sources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>@project.groupId@</groupId>
+ <artifactId>pojogen-maven-plugin</artifactId>
+ <version>@project.version@</version>
+ <executions>
+ <execution>
+ <configuration>
+ <outputDirectory>${project.build.directory}/generated-sources</outputDirectory>
+ <localEdm>${project.basedir}/src/test/resources/metadata.xml</localEdm>
+ <basePackage>org.apache.olingo.fit.proxy.v4.staticservice</basePackage>
+ </configuration>
+ <id>v4pojoGen</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>v4pojoGen</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/24a031b7/ext/pojogen-maven-plugin/src/it/exchangeMail/src/test/resources/metadata.xml
----------------------------------------------------------------------
diff --git a/ext/pojogen-maven-plugin/src/it/exchangeMail/src/test/resources/metadata.xml b/ext/pojogen-maven-plugin/src/it/exchangeMail/src/test/resources/metadata.xml
new file mode 100644
index 0000000..9cb28ec
--- /dev/null
+++ b/ext/pojogen-maven-plugin/src/it/exchangeMail/src/test/resources/metadata.xml
@@ -0,0 +1,353 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+ 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.
+
+-->
+<edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
+ <edmx:DataServices>
+ <Schema Namespace="Microsoft.Exchange.Services.OData.Model" xmlns="http://docs.oasis-open.org/odata/ns/edm">
+ <EnumType Name="BodyType">
+ <Member Name="Text" Value="0" />
+ <Member Name="HTML" Value="1" />
+ </EnumType>
+ <EnumType Name="Importance">
+ <Member Name="Normal" Value="0" />
+ <Member Name="Low" Value="1" />
+ <Member Name="High" Value="2" />
+ </EnumType>
+ <EnumType Name="AttendeeType">
+ <Member Name="Required" Value="0" />
+ <Member Name="Optional" Value="1" />
+ <Member Name="Resource" Value="2" />
+ </EnumType>
+ <EnumType Name="ResponseType">
+ <Member Name="None" Value="0" />
+ <Member Name="Organizer" Value="1" />
+ <Member Name="TentativelyAccepted" Value="2" />
+ <Member Name="Accepted" Value="3" />
+ <Member Name="Declined" Value="4" />
+ <Member Name="NotResponded" Value="5" />
+ </EnumType>
+ <EnumType Name="EventType">
+ <Member Name="SingleInstance" Value="0" />
+ <Member Name="Occurrence" Value="1" />
+ <Member Name="Exception" Value="2" />
+ <Member Name="SeriesMaster" Value="3" />
+ </EnumType>
+ <EnumType Name="FreeBusyStatus">
+ <Member Name="Unknown" Value="0" />
+ <Member Name="Free" Value="1" />
+ <Member Name="Tentative" Value="2" />
+ <Member Name="Busy" Value="3" />
+ <Member Name="Oof" Value="4" />
+ <Member Name="WorkingElsewhere" Value="5" />
+ </EnumType>
+ <EnumType Name="MeetingMessageType">
+ <Member Name="None" Value="0" />
+ <Member Name="MeetingRequest" Value="1" />
+ <Member Name="MeetingCancelled" Value="2" />
+ <Member Name="MeetingAccepted" Value="3" />
+ <Member Name="MeetingTenativelyAccepted" Value="4" />
+ <Member Name="MeetingDeclined" Value="5" />
+ </EnumType>
+ <EnumType Name="RecurrencePatternType">
+ <Member Name="Daily" Value="0" />
+ <Member Name="Weekly" Value="1" />
+ <Member Name="AbsoluteMonthly" Value="2" />
+ <Member Name="RelativeMonthly" Value="3" />
+ <Member Name="AbsoluteYearly" Value="4" />
+ <Member Name="RelativeYearly" Value="5" />
+ </EnumType>
+ <EnumType Name="RecurrenceRangeType">
+ <Member Name="EndDate" Value="0" />
+ <Member Name="NoEnd" Value="1" />
+ <Member Name="Numbered" Value="2" />
+ </EnumType>
+ <EnumType Name="WeekIndex">
+ <Member Name="First" Value="0" />
+ <Member Name="Second" Value="1" />
+ <Member Name="Third" Value="2" />
+ <Member Name="Fourth" Value="3" />
+ <Member Name="Last" Value="4" />
+ </EnumType>
+ <ComplexType Name="Recipient">
+ <Property Name="Name" Type="Edm.String" />
+ <Property Name="Address" Type="Edm.String" />
+ </ComplexType>
+ <ComplexType Name="Attendee" BaseType="Microsoft.Exchange.Services.OData.Model.Recipient">
+ <Property Name="Status" Type="Microsoft.Exchange.Services.OData.Model.ResponseStatus" />
+ <Property Name="Type" Type="Microsoft.Exchange.Services.OData.Model.AttendeeType" />
+ </ComplexType>
+ <ComplexType Name="ItemBody">
+ <Property Name="ContentType" Type="Microsoft.Exchange.Services.OData.Model.BodyType" />
+ <Property Name="Content" Type="Edm.String" />
+ </ComplexType>
+ <ComplexType Name="Location">
+ <Property Name="DisplayName" Type="Edm.String" />
+ </ComplexType>
+ <ComplexType Name="ResponseStatus" BaseType="Microsoft.Exchange.Services.OData.Model.Recipient">
+ <Property Name="Response" Type="Microsoft.Exchange.Services.OData.Model.ResponseType" />
+ <Property Name="Time" Type="Edm.DateTimeOffset" />
+ </ComplexType>
+ <ComplexType Name="RecurrencePattern">
+ <Property Name="Type" Type="Microsoft.Exchange.Services.OData.Model.RecurrencePatternType" />
+ <Property Name="Interval" Type="Edm.Int32" Nullable="false" />
+ <Property Name="DayOfMonth" Type="Edm.Int32" Nullable="false" />
+ <Property Name="Month" Type="Edm.Int32" Nullable="false" />
+ <Property Name="DaysOfWeek" Type="Collection(System.DayOfWeek)" />
+ <Property Name="FirstDayOfWeek" Type="System.DayOfWeek" />
+ <Property Name="Index" Type="Microsoft.Exchange.Services.OData.Model.WeekIndex" />
+ </ComplexType>
+ <ComplexType Name="RecurrenceRange">
+ <Property Name="Type" Type="Microsoft.Exchange.Services.OData.Model.RecurrenceRangeType" />
+ <Property Name="StartDate" Type="Edm.DateTimeOffset" />
+ <Property Name="EndDate" Type="Edm.DateTimeOffset" />
+ <Property Name="NumberOfOccurrences" Type="Edm.Int32" Nullable="false" />
+ </ComplexType>
+ <ComplexType Name="PatternedRecurrence">
+ <Property Name="Pattern" Type="Microsoft.Exchange.Services.OData.Model.RecurrencePattern" />
+ <Property Name="Range" Type="Microsoft.Exchange.Services.OData.Model.RecurrenceRange" />
+ </ComplexType>
+ <EntityType Name="Entity" Abstract="true">
+ <Key>
+ <PropertyRef Name="Id" />
+ </Key>
+ <Property Name="Id" Type="Edm.String" Nullable="false" />
+ </EntityType>
+ <EntityType Name="User" BaseType="Microsoft.Exchange.Services.OData.Model.Entity">
+ <Property Name="DisplayName" Type="Edm.String" />
+ <Property Name="Alias" Type="Edm.String" />
+ <Property Name="MailboxGuid" Type="Edm.Guid" />
+ <NavigationProperty Name="Folders" Type="Collection(Microsoft.Exchange.Services.OData.Model.Folder)" ContainsTarget="true" />
+ <NavigationProperty Name="Messages" Type="Collection(Microsoft.Exchange.Services.OData.Model.Message)" ContainsTarget="true" />
+ <NavigationProperty Name="RootFolder" Type="Microsoft.Exchange.Services.OData.Model.Folder" ContainsTarget="true" />
+ <NavigationProperty Name="Inbox" Type="Microsoft.Exchange.Services.OData.Model.Folder" ContainsTarget="true" />
+ <NavigationProperty Name="Drafts" Type="Microsoft.Exchange.Services.OData.Model.Folder" ContainsTarget="true" />
+ <NavigationProperty Name="SentItems" Type="Microsoft.Exchange.Services.OData.Model.Folder" ContainsTarget="true" />
+ <NavigationProperty Name="DeletedItems" Type="Microsoft.Exchange.Services.OData.Model.Folder" ContainsTarget="true" />
+ <NavigationProperty Name="Calendars" Type="Collection(Microsoft.Exchange.Services.OData.Model.Calendar)" ContainsTarget="true" />
+ <NavigationProperty Name="Calendar" Type="Microsoft.Exchange.Services.OData.Model.Calendar" ContainsTarget="true" />
+ <NavigationProperty Name="CalendarGroups" Type="Collection(Microsoft.Exchange.Services.OData.Model.CalendarGroup)" ContainsTarget="true" />
+ <NavigationProperty Name="Events" Type="Collection(Microsoft.Exchange.Services.OData.Model.Event)" ContainsTarget="true" />
+ <NavigationProperty Name="Contacts" Type="Collection(Microsoft.Exchange.Services.OData.Model.Contact)" ContainsTarget="true" />
+ <NavigationProperty Name="ContactFolders" Type="Collection(Microsoft.Exchange.Services.OData.Model.ContactFolder)" ContainsTarget="true" />
+ </EntityType>
+ <EntityType Name="Folder" BaseType="Microsoft.Exchange.Services.OData.Model.Entity">
+ <Property Name="ParentFolderId" Type="Edm.String" />
+ <Property Name="DisplayName" Type="Edm.String" />
+ <Property Name="ClassName" Type="Edm.String" />
+ <Property Name="TotalCount" Type="Edm.Int32" />
+ <Property Name="ChildFolderCount" Type="Edm.Int32" />
+ <Property Name="UnreadItemCount" Type="Edm.Int32" />
+ <NavigationProperty Name="ChildFolders" Type="Collection(Microsoft.Exchange.Services.OData.Model.Folder)" ContainsTarget="true" />
+ <NavigationProperty Name="Messages" Type="Collection(Microsoft.Exchange.Services.OData.Model.Message)" ContainsTarget="true" />
+ </EntityType>
+ <Action Name="Copy" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Folder" />
+ <Parameter Name="DestinationId" Type="Edm.String" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Folder" />
+ </Action>
+ <Action Name="Move" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Folder" />
+ <Parameter Name="DestinationId" Type="Edm.String" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Folder" />
+ </Action>
+ <EntityType Name="Item" BaseType="Microsoft.Exchange.Services.OData.Model.Entity" Abstract="true">
+ <Property Name="ChangeKey" Type="Edm.String" />
+ <Property Name="ClassName" Type="Edm.String" />
+ <Property Name="Subject" Type="Edm.String" />
+ <Property Name="Body" Type="Microsoft.Exchange.Services.OData.Model.ItemBody" />
+ <Property Name="BodyPreview" Type="Edm.String" />
+ <Property Name="Importance" Type="Microsoft.Exchange.Services.OData.Model.Importance" />
+ <Property Name="Categories" Type="Collection(Edm.String)" />
+ <Property Name="HasAttachments" Type="Edm.Boolean" />
+ <NavigationProperty Name="Attachments" Type="Collection(Microsoft.Exchange.Services.OData.Model.Attachment)" ContainsTarget="true" />
+ </EntityType>
+ <EntityType Name="Message" BaseType="Microsoft.Exchange.Services.OData.Model.Item">
+ <Property Name="ParentFolderId" Type="Edm.String" />
+ <Property Name="From" Type="Microsoft.Exchange.Services.OData.Model.Recipient" />
+ <Property Name="Sender" Type="Microsoft.Exchange.Services.OData.Model.Recipient" />
+ <Property Name="ToRecipients" Type="Collection(Microsoft.Exchange.Services.OData.Model.Recipient)" />
+ <Property Name="CcRecipients" Type="Collection(Microsoft.Exchange.Services.OData.Model.Recipient)" />
+ <Property Name="BccRecipients" Type="Collection(Microsoft.Exchange.Services.OData.Model.Recipient)" />
+ <Property Name="ReplyTo" Type="Collection(Microsoft.Exchange.Services.OData.Model.Recipient)" />
+ <Property Name="ConversationId" Type="Edm.String" />
+ <Property Name="UniqueBody" Type="Microsoft.Exchange.Services.OData.Model.ItemBody" />
+ <Property Name="DateTimeReceived" Type="Edm.DateTimeOffset" />
+ <Property Name="DateTimeSent" Type="Edm.DateTimeOffset" />
+ <Property Name="IsDeliveryReceiptRequested" Type="Edm.Boolean" />
+ <Property Name="IsReadReceiptRequested" Type="Edm.Boolean" />
+ <Property Name="IsDraft" Type="Edm.Boolean" />
+ <Property Name="IsRead" Type="Edm.Boolean" />
+ <Property Name="EventId" Type="Edm.String" />
+ <Property Name="MeetingMessageType" Type="Microsoft.Exchange.Services.OData.Model.MeetingMessageType" />
+ <Property Name="DateTimeCreated" Type="Edm.DateTimeOffset" />
+ <Property Name="LastModifiedTime" Type="Edm.DateTimeOffset" />
+ </EntityType>
+ <Action Name="Copy" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <Parameter Name="DestinationId" Type="Edm.String" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <Action Name="Move" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <Parameter Name="DestinationId" Type="Edm.String" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <Action Name="CreateReply" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <Action Name="CreateReplyAll" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <Action Name="CreateForward" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <Action Name="Reply" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ </Action>
+ <Action Name="ReplyAll" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ </Action>
+ <Action Name="Forward" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ <Parameter Name="ToRecipients" Type="Collection(Microsoft.Exchange.Services.OData.Model.Recipient)" />
+ </Action>
+ <Action Name="Send" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <EntityType Name="Attachment" BaseType="Microsoft.Exchange.Services.OData.Model.Entity" Abstract="true">
+ <Property Name="Name" Type="Edm.String" />
+ <Property Name="ContentType" Type="Edm.String" />
+ <Property Name="Size" Type="Edm.Int32" Nullable="false" />
+ <Property Name="IsInline" Type="Edm.Boolean" Nullable="false" />
+ <Property Name="LastModifiedTime" Type="Edm.DateTimeOffset" />
+ </EntityType>
+ <EntityType Name="FileAttachment" BaseType="Microsoft.Exchange.Services.OData.Model.Attachment">
+ <Property Name="ContentId" Type="Edm.String" />
+ <Property Name="ContentLocation" Type="Edm.String" />
+ <Property Name="IsContactPhoto" Type="Edm.Boolean" Nullable="false" />
+ <Property Name="ContentBytes" Type="Edm.Binary" />
+ </EntityType>
+ <EntityType Name="ItemAttachment" BaseType="Microsoft.Exchange.Services.OData.Model.Attachment">
+ <NavigationProperty Name="Item" Type="Microsoft.Exchange.Services.OData.Model.Item" ContainsTarget="true" />
+ </EntityType>
+ <EntityType Name="Calendar" BaseType="Microsoft.Exchange.Services.OData.Model.Entity">
+ <Property Name="Name" Type="Edm.String" />
+ <Property Name="ChangeKey" Type="Edm.String" />
+ <NavigationProperty Name="Events" Type="Collection(Microsoft.Exchange.Services.OData.Model.Event)" ContainsTarget="true" />
+ </EntityType>
+ <EntityType Name="CalendarGroup" BaseType="Microsoft.Exchange.Services.OData.Model.Entity">
+ <Property Name="Name" Type="Edm.String" />
+ <Property Name="ChangeKey" Type="Edm.String" />
+ <Property Name="ClassId" Type="Edm.Guid" />
+ <NavigationProperty Name="Calendars" Type="Collection(Microsoft.Exchange.Services.OData.Model.Calendar)" ContainsTarget="true" />
+ </EntityType>
+ <EntityType Name="Event" BaseType="Microsoft.Exchange.Services.OData.Model.Item">
+ <Property Name="Start" Type="Edm.DateTimeOffset" />
+ <Property Name="End" Type="Edm.DateTimeOffset" />
+ <Property Name="Location" Type="Microsoft.Exchange.Services.OData.Model.Location" />
+ <Property Name="ShowAs" Type="Microsoft.Exchange.Services.OData.Model.FreeBusyStatus" />
+ <Property Name="IsAllDay" Type="Edm.Boolean" />
+ <Property Name="IsCancelled" Type="Edm.Boolean" />
+ <Property Name="IsOrganizer" Type="Edm.Boolean" />
+ <Property Name="ResponseRequested" Type="Edm.Boolean" />
+ <Property Name="Type" Type="Microsoft.Exchange.Services.OData.Model.EventType" />
+ <Property Name="SeriesId" Type="Edm.String" />
+ <Property Name="Attendees" Type="Collection(Microsoft.Exchange.Services.OData.Model.Attendee)" />
+ <Property Name="Recurrence" Type="Microsoft.Exchange.Services.OData.Model.PatternedRecurrence" />
+ <NavigationProperty Name="Calendar" Type="Microsoft.Exchange.Services.OData.Model.Calendar" ContainsTarget="true" />
+ </EntityType>
+ <Action Name="Accept" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Event" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ </Action>
+ <Action Name="Decline" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Event" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ </Action>
+ <Action Name="TentativelyAccept" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Event" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ </Action>
+ <EntityType Name="Contact" BaseType="Microsoft.Exchange.Services.OData.Model.Item">
+ <Property Name="ParentFolderId" Type="Edm.String" />
+ <Property Name="Birthday" Type="Edm.DateTimeOffset" />
+ <Property Name="FileAs" Type="Edm.String" />
+ <Property Name="DisplayName" Type="Edm.String" />
+ <Property Name="GivenName" Type="Edm.String" />
+ <Property Name="Initials" Type="Edm.String" />
+ <Property Name="MiddleName" Type="Edm.String" />
+ <Property Name="NickName" Type="Edm.String" />
+ <Property Name="Surname" Type="Edm.String" />
+ <Property Name="Title" Type="Edm.String" />
+ <Property Name="Generation" Type="Edm.String" />
+ <Property Name="EmailAddress1" Type="Edm.String" />
+ <Property Name="EmailAddress2" Type="Edm.String" />
+ <Property Name="EmailAddress3" Type="Edm.String" />
+ <Property Name="ImAddress1" Type="Edm.String" />
+ <Property Name="ImAddress2" Type="Edm.String" />
+ <Property Name="ImAddress3" Type="Edm.String" />
+ <Property Name="JobTitle" Type="Edm.String" />
+ <Property Name="CompanyName" Type="Edm.String" />
+ <Property Name="Department" Type="Edm.String" />
+ <Property Name="OfficeLocation" Type="Edm.String" />
+ <Property Name="Profession" Type="Edm.String" />
+ <Property Name="BusinessHomePage" Type="Edm.String" />
+ <Property Name="AssistantName" Type="Edm.String" />
+ <Property Name="Manager" Type="Edm.String" />
+ <Property Name="HomePhone1" Type="Edm.String" />
+ <Property Name="HomePhone2" Type="Edm.String" />
+ <Property Name="BusinessPhone1" Type="Edm.String" />
+ <Property Name="BusinessPhone2" Type="Edm.String" />
+ <Property Name="MobilePhone1" Type="Edm.String" />
+ <Property Name="OtherPhone" Type="Edm.String" />
+ <Property Name="DateTimeCreated" Type="Edm.DateTimeOffset" />
+ <Property Name="LastModifiedTime" Type="Edm.DateTimeOffset" />
+ </EntityType>
+ <EntityType Name="ContactFolder" BaseType="Microsoft.Exchange.Services.OData.Model.Entity">
+ <Property Name="ParentFolderId" Type="Edm.String" />
+ <Property Name="DisplayName" Type="Edm.String" />
+ <NavigationProperty Name="Contacts" Type="Collection(Microsoft.Exchange.Services.OData.Model.Contact)" ContainsTarget="true" />
+ <NavigationProperty Name="ChildFolders" Type="Collection(Microsoft.Exchange.Services.OData.Model.ContactFolder)" ContainsTarget="true" />
+ </EntityType>
+ <EntityContainer Name="EntityContainer">
+ <EntitySet Name="Users" EntityType="Microsoft.Exchange.Services.OData.Model.User" />
+ <Singleton Name="Me" Type="Microsoft.Exchange.Services.OData.Model.User" />
+ </EntityContainer>
+ </Schema>
+ <Schema Namespace="System" xmlns="http://docs.oasis-open.org/odata/ns/edm">
+ <EnumType Name="DayOfWeek">
+ <Member Name="Sunday" Value="0" />
+ <Member Name="Monday" Value="1" />
+ <Member Name="Tuesday" Value="2" />
+ <Member Name="Wednesday" Value="3" />
+ <Member Name="Thursday" Value="4" />
+ <Member Name="Friday" Value="5" />
+ <Member Name="Saturday" Value="6" />
+ </EnumType>
+ </Schema>
+ </edmx:DataServices>
+</edmx:Edmx>
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/24a031b7/ext/pojogen-maven-plugin/src/it/exchangeMail/verify.groovy
----------------------------------------------------------------------
diff --git a/ext/pojogen-maven-plugin/src/it/exchangeMail/verify.groovy b/ext/pojogen-maven-plugin/src/it/exchangeMail/verify.groovy
new file mode 100644
index 0000000..02f0407
--- /dev/null
+++ b/ext/pojogen-maven-plugin/src/it/exchangeMail/verify.groovy
@@ -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.
+ */
+File basepkg = new File( basedir, "target/generated-sources/ojc-plugin/org/apache/olingo/fit/proxy/v4" );
+assert basepkg.isDirectory() && basepkg.listFiles().length>0;
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/24a031b7/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/pom.xml
----------------------------------------------------------------------
diff --git a/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/pom.xml b/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/pom.xml
new file mode 100644
index 0000000..2cc2fa0
--- /dev/null
+++ b/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/pom.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ 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.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>pojogen-maven-plugin-v4test</artifactId>
+ <groupId>org.apache.olingo</groupId>
+ <version>@project.version@</version>
+ <name>${project.artifactId}</name>
+ <description>A simple IT verifying the basic use case of pojogen-man-plugin.</description>
+
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <artifactId>pojogen-maven-plugin</artifactId>
+ <groupId>org.apache.olingo</groupId>
+ <version>@project.version@</version>
+ <scope>runtime</scope>
+ </dependency>
+
+ <dependency>
+ <artifactId>olingo-client-proxy</artifactId>
+ <groupId>org.apache.olingo</groupId>
+ <version>@project.version@</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <version>1.8</version>
+ <executions>
+ <execution>
+ <phase>process-sources</phase>
+ <goals>
+ <goal>add-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>${project.build.directory}/generated-sources</source>
+ </sources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>@project.groupId@</groupId>
+ <artifactId>pojogen-maven-plugin</artifactId>
+ <version>@project.version@</version>
+ <executions>
+ <execution>
+ <configuration>
+ <outputDirectory>${project.build.directory}/generated-sources</outputDirectory>
+ <localEdm>${project.basedir}/src/test/resources/metadata.xml</localEdm>
+ </configuration>
+ <id>v4pojoGen</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>v4pojoGen</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/24a031b7/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/src/test/resources/metadata.xml
----------------------------------------------------------------------
diff --git a/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/src/test/resources/metadata.xml b/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/src/test/resources/metadata.xml
new file mode 100644
index 0000000..9cb28ec
--- /dev/null
+++ b/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/src/test/resources/metadata.xml
@@ -0,0 +1,353 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+ 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.
+
+-->
+<edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
+ <edmx:DataServices>
+ <Schema Namespace="Microsoft.Exchange.Services.OData.Model" xmlns="http://docs.oasis-open.org/odata/ns/edm">
+ <EnumType Name="BodyType">
+ <Member Name="Text" Value="0" />
+ <Member Name="HTML" Value="1" />
+ </EnumType>
+ <EnumType Name="Importance">
+ <Member Name="Normal" Value="0" />
+ <Member Name="Low" Value="1" />
+ <Member Name="High" Value="2" />
+ </EnumType>
+ <EnumType Name="AttendeeType">
+ <Member Name="Required" Value="0" />
+ <Member Name="Optional" Value="1" />
+ <Member Name="Resource" Value="2" />
+ </EnumType>
+ <EnumType Name="ResponseType">
+ <Member Name="None" Value="0" />
+ <Member Name="Organizer" Value="1" />
+ <Member Name="TentativelyAccepted" Value="2" />
+ <Member Name="Accepted" Value="3" />
+ <Member Name="Declined" Value="4" />
+ <Member Name="NotResponded" Value="5" />
+ </EnumType>
+ <EnumType Name="EventType">
+ <Member Name="SingleInstance" Value="0" />
+ <Member Name="Occurrence" Value="1" />
+ <Member Name="Exception" Value="2" />
+ <Member Name="SeriesMaster" Value="3" />
+ </EnumType>
+ <EnumType Name="FreeBusyStatus">
+ <Member Name="Unknown" Value="0" />
+ <Member Name="Free" Value="1" />
+ <Member Name="Tentative" Value="2" />
+ <Member Name="Busy" Value="3" />
+ <Member Name="Oof" Value="4" />
+ <Member Name="WorkingElsewhere" Value="5" />
+ </EnumType>
+ <EnumType Name="MeetingMessageType">
+ <Member Name="None" Value="0" />
+ <Member Name="MeetingRequest" Value="1" />
+ <Member Name="MeetingCancelled" Value="2" />
+ <Member Name="MeetingAccepted" Value="3" />
+ <Member Name="MeetingTenativelyAccepted" Value="4" />
+ <Member Name="MeetingDeclined" Value="5" />
+ </EnumType>
+ <EnumType Name="RecurrencePatternType">
+ <Member Name="Daily" Value="0" />
+ <Member Name="Weekly" Value="1" />
+ <Member Name="AbsoluteMonthly" Value="2" />
+ <Member Name="RelativeMonthly" Value="3" />
+ <Member Name="AbsoluteYearly" Value="4" />
+ <Member Name="RelativeYearly" Value="5" />
+ </EnumType>
+ <EnumType Name="RecurrenceRangeType">
+ <Member Name="EndDate" Value="0" />
+ <Member Name="NoEnd" Value="1" />
+ <Member Name="Numbered" Value="2" />
+ </EnumType>
+ <EnumType Name="WeekIndex">
+ <Member Name="First" Value="0" />
+ <Member Name="Second" Value="1" />
+ <Member Name="Third" Value="2" />
+ <Member Name="Fourth" Value="3" />
+ <Member Name="Last" Value="4" />
+ </EnumType>
+ <ComplexType Name="Recipient">
+ <Property Name="Name" Type="Edm.String" />
+ <Property Name="Address" Type="Edm.String" />
+ </ComplexType>
+ <ComplexType Name="Attendee" BaseType="Microsoft.Exchange.Services.OData.Model.Recipient">
+ <Property Name="Status" Type="Microsoft.Exchange.Services.OData.Model.ResponseStatus" />
+ <Property Name="Type" Type="Microsoft.Exchange.Services.OData.Model.AttendeeType" />
+ </ComplexType>
+ <ComplexType Name="ItemBody">
+ <Property Name="ContentType" Type="Microsoft.Exchange.Services.OData.Model.BodyType" />
+ <Property Name="Content" Type="Edm.String" />
+ </ComplexType>
+ <ComplexType Name="Location">
+ <Property Name="DisplayName" Type="Edm.String" />
+ </ComplexType>
+ <ComplexType Name="ResponseStatus" BaseType="Microsoft.Exchange.Services.OData.Model.Recipient">
+ <Property Name="Response" Type="Microsoft.Exchange.Services.OData.Model.ResponseType" />
+ <Property Name="Time" Type="Edm.DateTimeOffset" />
+ </ComplexType>
+ <ComplexType Name="RecurrencePattern">
+ <Property Name="Type" Type="Microsoft.Exchange.Services.OData.Model.RecurrencePatternType" />
+ <Property Name="Interval" Type="Edm.Int32" Nullable="false" />
+ <Property Name="DayOfMonth" Type="Edm.Int32" Nullable="false" />
+ <Property Name="Month" Type="Edm.Int32" Nullable="false" />
+ <Property Name="DaysOfWeek" Type="Collection(System.DayOfWeek)" />
+ <Property Name="FirstDayOfWeek" Type="System.DayOfWeek" />
+ <Property Name="Index" Type="Microsoft.Exchange.Services.OData.Model.WeekIndex" />
+ </ComplexType>
+ <ComplexType Name="RecurrenceRange">
+ <Property Name="Type" Type="Microsoft.Exchange.Services.OData.Model.RecurrenceRangeType" />
+ <Property Name="StartDate" Type="Edm.DateTimeOffset" />
+ <Property Name="EndDate" Type="Edm.DateTimeOffset" />
+ <Property Name="NumberOfOccurrences" Type="Edm.Int32" Nullable="false" />
+ </ComplexType>
+ <ComplexType Name="PatternedRecurrence">
+ <Property Name="Pattern" Type="Microsoft.Exchange.Services.OData.Model.RecurrencePattern" />
+ <Property Name="Range" Type="Microsoft.Exchange.Services.OData.Model.RecurrenceRange" />
+ </ComplexType>
+ <EntityType Name="Entity" Abstract="true">
+ <Key>
+ <PropertyRef Name="Id" />
+ </Key>
+ <Property Name="Id" Type="Edm.String" Nullable="false" />
+ </EntityType>
+ <EntityType Name="User" BaseType="Microsoft.Exchange.Services.OData.Model.Entity">
+ <Property Name="DisplayName" Type="Edm.String" />
+ <Property Name="Alias" Type="Edm.String" />
+ <Property Name="MailboxGuid" Type="Edm.Guid" />
+ <NavigationProperty Name="Folders" Type="Collection(Microsoft.Exchange.Services.OData.Model.Folder)" ContainsTarget="true" />
+ <NavigationProperty Name="Messages" Type="Collection(Microsoft.Exchange.Services.OData.Model.Message)" ContainsTarget="true" />
+ <NavigationProperty Name="RootFolder" Type="Microsoft.Exchange.Services.OData.Model.Folder" ContainsTarget="true" />
+ <NavigationProperty Name="Inbox" Type="Microsoft.Exchange.Services.OData.Model.Folder" ContainsTarget="true" />
+ <NavigationProperty Name="Drafts" Type="Microsoft.Exchange.Services.OData.Model.Folder" ContainsTarget="true" />
+ <NavigationProperty Name="SentItems" Type="Microsoft.Exchange.Services.OData.Model.Folder" ContainsTarget="true" />
+ <NavigationProperty Name="DeletedItems" Type="Microsoft.Exchange.Services.OData.Model.Folder" ContainsTarget="true" />
+ <NavigationProperty Name="Calendars" Type="Collection(Microsoft.Exchange.Services.OData.Model.Calendar)" ContainsTarget="true" />
+ <NavigationProperty Name="Calendar" Type="Microsoft.Exchange.Services.OData.Model.Calendar" ContainsTarget="true" />
+ <NavigationProperty Name="CalendarGroups" Type="Collection(Microsoft.Exchange.Services.OData.Model.CalendarGroup)" ContainsTarget="true" />
+ <NavigationProperty Name="Events" Type="Collection(Microsoft.Exchange.Services.OData.Model.Event)" ContainsTarget="true" />
+ <NavigationProperty Name="Contacts" Type="Collection(Microsoft.Exchange.Services.OData.Model.Contact)" ContainsTarget="true" />
+ <NavigationProperty Name="ContactFolders" Type="Collection(Microsoft.Exchange.Services.OData.Model.ContactFolder)" ContainsTarget="true" />
+ </EntityType>
+ <EntityType Name="Folder" BaseType="Microsoft.Exchange.Services.OData.Model.Entity">
+ <Property Name="ParentFolderId" Type="Edm.String" />
+ <Property Name="DisplayName" Type="Edm.String" />
+ <Property Name="ClassName" Type="Edm.String" />
+ <Property Name="TotalCount" Type="Edm.Int32" />
+ <Property Name="ChildFolderCount" Type="Edm.Int32" />
+ <Property Name="UnreadItemCount" Type="Edm.Int32" />
+ <NavigationProperty Name="ChildFolders" Type="Collection(Microsoft.Exchange.Services.OData.Model.Folder)" ContainsTarget="true" />
+ <NavigationProperty Name="Messages" Type="Collection(Microsoft.Exchange.Services.OData.Model.Message)" ContainsTarget="true" />
+ </EntityType>
+ <Action Name="Copy" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Folder" />
+ <Parameter Name="DestinationId" Type="Edm.String" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Folder" />
+ </Action>
+ <Action Name="Move" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Folder" />
+ <Parameter Name="DestinationId" Type="Edm.String" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Folder" />
+ </Action>
+ <EntityType Name="Item" BaseType="Microsoft.Exchange.Services.OData.Model.Entity" Abstract="true">
+ <Property Name="ChangeKey" Type="Edm.String" />
+ <Property Name="ClassName" Type="Edm.String" />
+ <Property Name="Subject" Type="Edm.String" />
+ <Property Name="Body" Type="Microsoft.Exchange.Services.OData.Model.ItemBody" />
+ <Property Name="BodyPreview" Type="Edm.String" />
+ <Property Name="Importance" Type="Microsoft.Exchange.Services.OData.Model.Importance" />
+ <Property Name="Categories" Type="Collection(Edm.String)" />
+ <Property Name="HasAttachments" Type="Edm.Boolean" />
+ <NavigationProperty Name="Attachments" Type="Collection(Microsoft.Exchange.Services.OData.Model.Attachment)" ContainsTarget="true" />
+ </EntityType>
+ <EntityType Name="Message" BaseType="Microsoft.Exchange.Services.OData.Model.Item">
+ <Property Name="ParentFolderId" Type="Edm.String" />
+ <Property Name="From" Type="Microsoft.Exchange.Services.OData.Model.Recipient" />
+ <Property Name="Sender" Type="Microsoft.Exchange.Services.OData.Model.Recipient" />
+ <Property Name="ToRecipients" Type="Collection(Microsoft.Exchange.Services.OData.Model.Recipient)" />
+ <Property Name="CcRecipients" Type="Collection(Microsoft.Exchange.Services.OData.Model.Recipient)" />
+ <Property Name="BccRecipients" Type="Collection(Microsoft.Exchange.Services.OData.Model.Recipient)" />
+ <Property Name="ReplyTo" Type="Collection(Microsoft.Exchange.Services.OData.Model.Recipient)" />
+ <Property Name="ConversationId" Type="Edm.String" />
+ <Property Name="UniqueBody" Type="Microsoft.Exchange.Services.OData.Model.ItemBody" />
+ <Property Name="DateTimeReceived" Type="Edm.DateTimeOffset" />
+ <Property Name="DateTimeSent" Type="Edm.DateTimeOffset" />
+ <Property Name="IsDeliveryReceiptRequested" Type="Edm.Boolean" />
+ <Property Name="IsReadReceiptRequested" Type="Edm.Boolean" />
+ <Property Name="IsDraft" Type="Edm.Boolean" />
+ <Property Name="IsRead" Type="Edm.Boolean" />
+ <Property Name="EventId" Type="Edm.String" />
+ <Property Name="MeetingMessageType" Type="Microsoft.Exchange.Services.OData.Model.MeetingMessageType" />
+ <Property Name="DateTimeCreated" Type="Edm.DateTimeOffset" />
+ <Property Name="LastModifiedTime" Type="Edm.DateTimeOffset" />
+ </EntityType>
+ <Action Name="Copy" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <Parameter Name="DestinationId" Type="Edm.String" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <Action Name="Move" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <Parameter Name="DestinationId" Type="Edm.String" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <Action Name="CreateReply" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <Action Name="CreateReplyAll" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <Action Name="CreateForward" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <ReturnType Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <Action Name="Reply" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ </Action>
+ <Action Name="ReplyAll" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ </Action>
+ <Action Name="Forward" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ <Parameter Name="ToRecipients" Type="Collection(Microsoft.Exchange.Services.OData.Model.Recipient)" />
+ </Action>
+ <Action Name="Send" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Message" />
+ </Action>
+ <EntityType Name="Attachment" BaseType="Microsoft.Exchange.Services.OData.Model.Entity" Abstract="true">
+ <Property Name="Name" Type="Edm.String" />
+ <Property Name="ContentType" Type="Edm.String" />
+ <Property Name="Size" Type="Edm.Int32" Nullable="false" />
+ <Property Name="IsInline" Type="Edm.Boolean" Nullable="false" />
+ <Property Name="LastModifiedTime" Type="Edm.DateTimeOffset" />
+ </EntityType>
+ <EntityType Name="FileAttachment" BaseType="Microsoft.Exchange.Services.OData.Model.Attachment">
+ <Property Name="ContentId" Type="Edm.String" />
+ <Property Name="ContentLocation" Type="Edm.String" />
+ <Property Name="IsContactPhoto" Type="Edm.Boolean" Nullable="false" />
+ <Property Name="ContentBytes" Type="Edm.Binary" />
+ </EntityType>
+ <EntityType Name="ItemAttachment" BaseType="Microsoft.Exchange.Services.OData.Model.Attachment">
+ <NavigationProperty Name="Item" Type="Microsoft.Exchange.Services.OData.Model.Item" ContainsTarget="true" />
+ </EntityType>
+ <EntityType Name="Calendar" BaseType="Microsoft.Exchange.Services.OData.Model.Entity">
+ <Property Name="Name" Type="Edm.String" />
+ <Property Name="ChangeKey" Type="Edm.String" />
+ <NavigationProperty Name="Events" Type="Collection(Microsoft.Exchange.Services.OData.Model.Event)" ContainsTarget="true" />
+ </EntityType>
+ <EntityType Name="CalendarGroup" BaseType="Microsoft.Exchange.Services.OData.Model.Entity">
+ <Property Name="Name" Type="Edm.String" />
+ <Property Name="ChangeKey" Type="Edm.String" />
+ <Property Name="ClassId" Type="Edm.Guid" />
+ <NavigationProperty Name="Calendars" Type="Collection(Microsoft.Exchange.Services.OData.Model.Calendar)" ContainsTarget="true" />
+ </EntityType>
+ <EntityType Name="Event" BaseType="Microsoft.Exchange.Services.OData.Model.Item">
+ <Property Name="Start" Type="Edm.DateTimeOffset" />
+ <Property Name="End" Type="Edm.DateTimeOffset" />
+ <Property Name="Location" Type="Microsoft.Exchange.Services.OData.Model.Location" />
+ <Property Name="ShowAs" Type="Microsoft.Exchange.Services.OData.Model.FreeBusyStatus" />
+ <Property Name="IsAllDay" Type="Edm.Boolean" />
+ <Property Name="IsCancelled" Type="Edm.Boolean" />
+ <Property Name="IsOrganizer" Type="Edm.Boolean" />
+ <Property Name="ResponseRequested" Type="Edm.Boolean" />
+ <Property Name="Type" Type="Microsoft.Exchange.Services.OData.Model.EventType" />
+ <Property Name="SeriesId" Type="Edm.String" />
+ <Property Name="Attendees" Type="Collection(Microsoft.Exchange.Services.OData.Model.Attendee)" />
+ <Property Name="Recurrence" Type="Microsoft.Exchange.Services.OData.Model.PatternedRecurrence" />
+ <NavigationProperty Name="Calendar" Type="Microsoft.Exchange.Services.OData.Model.Calendar" ContainsTarget="true" />
+ </EntityType>
+ <Action Name="Accept" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Event" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ </Action>
+ <Action Name="Decline" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Event" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ </Action>
+ <Action Name="TentativelyAccept" IsBound="true" EntitySetPath="bindingParameter">
+ <Parameter Name="bindingParameter" Type="Microsoft.Exchange.Services.OData.Model.Event" />
+ <Parameter Name="Comment" Type="Edm.String" />
+ </Action>
+ <EntityType Name="Contact" BaseType="Microsoft.Exchange.Services.OData.Model.Item">
+ <Property Name="ParentFolderId" Type="Edm.String" />
+ <Property Name="Birthday" Type="Edm.DateTimeOffset" />
+ <Property Name="FileAs" Type="Edm.String" />
+ <Property Name="DisplayName" Type="Edm.String" />
+ <Property Name="GivenName" Type="Edm.String" />
+ <Property Name="Initials" Type="Edm.String" />
+ <Property Name="MiddleName" Type="Edm.String" />
+ <Property Name="NickName" Type="Edm.String" />
+ <Property Name="Surname" Type="Edm.String" />
+ <Property Name="Title" Type="Edm.String" />
+ <Property Name="Generation" Type="Edm.String" />
+ <Property Name="EmailAddress1" Type="Edm.String" />
+ <Property Name="EmailAddress2" Type="Edm.String" />
+ <Property Name="EmailAddress3" Type="Edm.String" />
+ <Property Name="ImAddress1" Type="Edm.String" />
+ <Property Name="ImAddress2" Type="Edm.String" />
+ <Property Name="ImAddress3" Type="Edm.String" />
+ <Property Name="JobTitle" Type="Edm.String" />
+ <Property Name="CompanyName" Type="Edm.String" />
+ <Property Name="Department" Type="Edm.String" />
+ <Property Name="OfficeLocation" Type="Edm.String" />
+ <Property Name="Profession" Type="Edm.String" />
+ <Property Name="BusinessHomePage" Type="Edm.String" />
+ <Property Name="AssistantName" Type="Edm.String" />
+ <Property Name="Manager" Type="Edm.String" />
+ <Property Name="HomePhone1" Type="Edm.String" />
+ <Property Name="HomePhone2" Type="Edm.String" />
+ <Property Name="BusinessPhone1" Type="Edm.String" />
+ <Property Name="BusinessPhone2" Type="Edm.String" />
+ <Property Name="MobilePhone1" Type="Edm.String" />
+ <Property Name="OtherPhone" Type="Edm.String" />
+ <Property Name="DateTimeCreated" Type="Edm.DateTimeOffset" />
+ <Property Name="LastModifiedTime" Type="Edm.DateTimeOffset" />
+ </EntityType>
+ <EntityType Name="ContactFolder" BaseType="Microsoft.Exchange.Services.OData.Model.Entity">
+ <Property Name="ParentFolderId" Type="Edm.String" />
+ <Property Name="DisplayName" Type="Edm.String" />
+ <NavigationProperty Name="Contacts" Type="Collection(Microsoft.Exchange.Services.OData.Model.Contact)" ContainsTarget="true" />
+ <NavigationProperty Name="ChildFolders" Type="Collection(Microsoft.Exchange.Services.OData.Model.ContactFolder)" ContainsTarget="true" />
+ </EntityType>
+ <EntityContainer Name="EntityContainer">
+ <EntitySet Name="Users" EntityType="Microsoft.Exchange.Services.OData.Model.User" />
+ <Singleton Name="Me" Type="Microsoft.Exchange.Services.OData.Model.User" />
+ </EntityContainer>
+ </Schema>
+ <Schema Namespace="System" xmlns="http://docs.oasis-open.org/odata/ns/edm">
+ <EnumType Name="DayOfWeek">
+ <Member Name="Sunday" Value="0" />
+ <Member Name="Monday" Value="1" />
+ <Member Name="Tuesday" Value="2" />
+ <Member Name="Wednesday" Value="3" />
+ <Member Name="Thursday" Value="4" />
+ <Member Name="Friday" Value="5" />
+ <Member Name="Saturday" Value="6" />
+ </EnumType>
+ </Schema>
+ </edmx:DataServices>
+</edmx:Edmx>
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/24a031b7/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/verify.groovy
----------------------------------------------------------------------
diff --git a/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/verify.groovy b/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/verify.groovy
new file mode 100644
index 0000000..3b7941b
--- /dev/null
+++ b/ext/pojogen-maven-plugin/src/it/exchangeMailNoBasePkg/verify.groovy
@@ -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.
+ */
+File basepkg = new File( basedir, "target/generated-sources/ojc-plugin" );
+assert basepkg.isDirectory() && basepkg.listFiles().length>0;
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/24a031b7/ext/pojogen-maven-plugin/src/main/java/org/apache/olingo/ext/pojogen/AbstractPOJOGenMojo.java
----------------------------------------------------------------------
diff --git a/ext/pojogen-maven-plugin/src/main/java/org/apache/olingo/ext/pojogen/AbstractPOJOGenMojo.java b/ext/pojogen-maven-plugin/src/main/java/org/apache/olingo/ext/pojogen/AbstractPOJOGenMojo.java
index ee09e65..ea29767 100644
--- a/ext/pojogen-maven-plugin/src/main/java/org/apache/olingo/ext/pojogen/AbstractPOJOGenMojo.java
+++ b/ext/pojogen-maven-plugin/src/main/java/org/apache/olingo/ext/pojogen/AbstractPOJOGenMojo.java
@@ -44,7 +44,6 @@ import org.apache.olingo.commons.api.edm.EdmEntityContainer;
import org.apache.olingo.commons.api.edm.EdmEntitySet;
import org.apache.olingo.commons.api.edm.EdmEntityType;
import org.apache.olingo.commons.api.edm.EdmEnumType;
-import org.apache.olingo.commons.api.edm.EdmNavigationProperty;
import org.apache.olingo.commons.api.edm.EdmSchema;
import org.apache.olingo.commons.api.edm.EdmSingleton;
import org.apache.olingo.commons.api.edm.EdmTerm;
@@ -78,7 +77,7 @@ public abstract class AbstractPOJOGenMojo extends AbstractMojo {
/**
* Base package.
*/
- @Parameter(property = "basePackage", required = true)
+ @Parameter(property = "basePackage", required = false)
protected String basePackage;
protected final Set<String> namespaces = new HashSet<String>();
@@ -104,7 +103,9 @@ public abstract class AbstractPOJOGenMojo extends AbstractMojo {
}
protected File mkPkgDir(final String path) {
- return mkdir(basePackage.replace('.', File.separatorChar) + File.separator + path);
+ return StringUtils.isBlank(basePackage)
+ ? mkdir(path)
+ : mkdir(basePackage.replace('.', File.separatorChar) + File.separator + path);
}
protected void writeFile(final String name, final File path, final VelocityContext ctx, final Template template,
@@ -242,7 +243,9 @@ public abstract class AbstractPOJOGenMojo extends AbstractMojo {
// write package-info for the base package
final String schemaPath = utility.getNamespace().toLowerCase().replace('.', File.separatorChar);
final File base = mkPkgDir(schemaPath);
- final String pkg = basePackage + "." + utility.getNamespace().toLowerCase();
+ final String pkg = StringUtils.isBlank(basePackage)
+ ? utility.getNamespace().toLowerCase()
+ : basePackage + "." + utility.getNamespace().toLowerCase();
parseObj(base, pkg, "package-info", "package-info.java");
// write package-info for types package
@@ -277,20 +280,6 @@ public abstract class AbstractPOJOGenMojo extends AbstractMojo {
objs.clear();
objs.put("complexType", complex);
parseObj(typesBaseDir, typesPkg, "complexType", className + ".java", objs);
-
- for (String navPropName : complex.getNavigationPropertyNames()) {
- final EdmNavigationProperty navProp = complex.getNavigationProperty(navPropName);
- if ((complex.getBaseType() == null
- || edm.getEntityType(complex.getBaseType().getFullQualifiedName()).
- getNavigationProperty(navPropName) == null)
- && navProp.containsTarget()) {
-
- objs.clear();
- objs.put("navProp", navProp);
- parseObj(base, pkg, "containedEntitySet",
- utility.capitalize(navProp.getName()) + ".java", objs);
- }
- }
}
for (EdmEntityType entity : schema.getEntityTypes()) {
@@ -328,20 +317,6 @@ public abstract class AbstractPOJOGenMojo extends AbstractMojo {
utility.capitalize(entity.getName()) + ".java", objs);
parseObj(typesBaseDir, typesPkg, "entityCollection",
utility.capitalize(entity.getName()) + "Collection.java", objs);
-
- for (String navPropName : entity.getNavigationPropertyNames()) {
- final EdmNavigationProperty navProp = entity.getNavigationProperty(navPropName);
- if ((entity.getBaseType() == null
- || edm.getEntityType(entity.getBaseType().getFullQualifiedName()).
- getNavigationProperty(navPropName) == null)
- && navProp.containsTarget()) {
-
- objs.clear();
- objs.put("navProp", navProp);
- parseObj(base, pkg, "containedEntitySet",
- utility.capitalize(navProp.getName()) + ".java", objs);
- }
- }
}
// write container and top entity sets into the base package