You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by il...@apache.org on 2014/03/20 14:50:15 UTC
[9/9] git commit: Consistently using package name to differentiate V3
and V4
Consistently using package name to differentiate V3 and V4
Project: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/commit/bab03624
Tree: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/tree/bab03624
Diff: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/diff/bab03624
Branch: refs/heads/olingo200
Commit: bab0362401a2b76724b483942c705c986f5570e6
Parents: be73bf6
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Thu Mar 20 14:37:37 2014 +0100
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Thu Mar 20 14:37:37 2014 +0100
----------------------------------------------------------------------
.../olingo/client/api/CommonConfiguration.java | 184 +++++++++++++++
.../olingo/client/api/CommonODataClient.java | 76 +++++++
.../apache/olingo/client/api/Configuration.java | 184 ---------------
.../apache/olingo/client/api/ODataClient.java | 76 -------
.../apache/olingo/client/api/ODataV3Client.java | 58 -----
.../apache/olingo/client/api/ODataV4Client.java | 58 -----
.../client/api/UnsupportedInV3Exception.java | 31 ---
.../olingo/client/api/V3Configuration.java | 44 ----
.../olingo/client/api/V4Configuration.java | 24 --
.../request/batch/BatchRequestFactory.java | 35 ---
.../batch/CommonBatchRequestFactory.java | 35 +++
.../request/batch/V3BatchRequestFactory.java | 22 --
.../request/batch/V4BatchRequestFactory.java | 22 --
.../request/batch/v3/BatchRequestFactory.java | 24 ++
.../request/batch/v4/BatchRequestFactory.java | 24 ++
.../request/cud/CUDRequestFactory.java | 145 ------------
.../request/cud/CommonCUDRequestFactory.java | 145 ++++++++++++
.../request/cud/V3CUDRequestFactory.java | 22 --
.../request/cud/V4CUDRequestFactory.java | 22 --
.../request/cud/v3/CUDRequestFactory.java | 24 ++
.../request/cud/v4/CUDRequestFactory.java | 24 ++
.../invoke/CommonInvokeRequestFactory.java | 58 +++++
.../request/invoke/InvokeRequestFactory.java | 58 -----
.../request/invoke/V3InvokeRequestFactory.java | 24 --
.../request/invoke/V4InvokeRequestFactory.java | 24 --
.../request/invoke/v3/InvokeRequestFactory.java | 25 +++
.../request/invoke/v4/InvokeRequestFactory.java | 25 +++
.../retrieve/CommonRetrieveRequestFactory.java | 105 +++++++++
.../retrieve/ODataLinkCollectionRequest.java | 28 ---
.../retrieve/RetrieveRequestFactory.java | 105 ---------
.../retrieve/V3RetrieveRequestFactory.java | 33 ---
.../retrieve/V4RetrieveRequestFactory.java | 22 --
.../retrieve/v3/ODataLinkCollectionRequest.java | 29 +++
.../retrieve/v3/RetrieveRequestFactory.java | 34 +++
.../retrieve/v4/RetrieveRequestFactory.java | 24 ++
.../streamed/CommonStreamedRequestFactory.java | 62 +++++
.../streamed/StreamedRequestFactory.java | 62 -----
.../streamed/V3StreamedRequestFactory.java | 22 --
.../streamed/V4StreamedRequestFactory.java | 22 --
.../streamed/v3/StreamedRequestFactory.java | 24 ++
.../streamed/v4/StreamedRequestFactory.java | 24 ++
.../olingo/client/api/data/LinkCollection.java | 52 -----
.../client/api/data/v3/LinkCollection.java | 52 +++++
.../api/domain/ODataEntitySetIterator.java | 8 +-
.../client/api/domain/ODataGeospatialValue.java | 6 +-
.../client/api/domain/ODataLinkCollection.java | 100 ---------
.../client/api/domain/ODataPrimitiveValue.java | 12 +-
.../api/domain/v3/ODataLinkCollection.java | 100 +++++++++
.../olingo/client/api/op/CommonODataBinder.java | 132 +++++++++++
.../client/api/op/CommonODataDeserializer.java | 84 +++++++
.../olingo/client/api/op/CommonODataReader.java | 104 +++++++++
.../olingo/client/api/op/ODataBinder.java | 142 ------------
.../olingo/client/api/op/ODataDeserializer.java | 94 --------
.../olingo/client/api/op/ODataReader.java | 114 ----------
.../client/api/op/ODataV3Deserializer.java | 31 ---
.../client/api/op/ODataV4Deserializer.java | 30 ---
.../olingo/client/api/op/v3/ODataBinder.java | 35 +++
.../client/api/op/v3/ODataDeserializer.java | 37 +++
.../olingo/client/api/op/v3/ODataReader.java | 37 +++
.../olingo/client/api/op/v4/ODataBinder.java | 25 +++
.../client/api/op/v4/ODataDeserializer.java | 31 +++
.../olingo/client/api/op/v4/ODataReader.java | 25 +++
.../client/api/uri/CommonFilterArgFactory.java | 83 +++++++
.../client/api/uri/CommonFilterFactory.java | 61 +++++
.../olingo/client/api/uri/CommonURIBuilder.java | 224 ++++++++++++++++++
.../apache/olingo/client/api/uri/FilterArg.java | 30 +++
.../olingo/client/api/uri/URIBuilder.java | 225 -------------------
.../apache/olingo/client/api/uri/URIFilter.java | 32 +++
.../olingo/client/api/uri/V3URIBuilder.java | 47 ----
.../olingo/client/api/uri/V4URIBuilder.java | 87 -------
.../olingo/client/api/uri/filter/FilterArg.java | 30 ---
.../client/api/uri/filter/FilterArgFactory.java | 83 -------
.../client/api/uri/filter/FilterFactory.java | 61 -----
.../olingo/client/api/uri/filter/URIFilter.java | 32 ---
.../api/uri/filter/V3FilterArgFactory.java | 25 ---
.../client/api/uri/filter/V3FilterFactory.java | 26 ---
.../api/uri/filter/V4FilterArgFactory.java | 55 -----
.../client/api/uri/filter/V4FilterFactory.java | 32 ---
.../client/api/uri/v3/FilterArgFactory.java | 28 +++
.../olingo/client/api/uri/v3/FilterFactory.java | 28 +++
.../olingo/client/api/uri/v3/URIBuilder.java | 49 ++++
.../client/api/uri/v4/FilterArgFactory.java | 59 +++++
.../olingo/client/api/uri/v4/FilterFactory.java | 35 +++
.../olingo/client/api/uri/v4/URIBuilder.java | 89 ++++++++
.../olingo/client/api/utils/URIUtils.java | 4 +-
.../olingo/client/api/v3/Configuration.java | 46 ++++
.../olingo/client/api/v3/ODataClient.java | 67 ++++++
.../client/api/v3/UnsupportedInV3Exception.java | 31 +++
.../olingo/client/api/v4/Configuration.java | 26 +++
.../olingo/client/api/v4/ODataClient.java | 67 ++++++
.../client/core/AbstractConfiguration.java | 4 +-
.../olingo/client/core/AbstractODataClient.java | 4 +-
.../olingo/client/core/ODataClientFactory.java | 11 +-
.../olingo/client/core/ODataV3ClientImpl.java | 149 ------------
.../olingo/client/core/ODataV4ClientImpl.java | 148 ------------
.../olingo/client/core/V3ConfigurationImpl.java | 57 -----
.../olingo/client/core/V4ConfigurationImpl.java | 31 ---
.../org/apache/olingo/client/core/Wrapper.java | 41 ----
.../request/AbstractODataBasicRequest.java | 4 +-
.../request/AbstractODataStreamManager.java | 1 -
.../communication/request/ODataRequestImpl.java | 10 +-
.../core/communication/request/Wrapper.java | 41 ++++
.../batch/AbstractBatchRequestFactory.java | 10 +-
.../request/batch/ODataBatchRequestImpl.java | 4 +-
.../batch/V3BatchRequestFactoryImpl.java | 32 ---
.../batch/V4BatchRequestFactoryImpl.java | 32 ---
.../batch/v3/BatchRequestFactoryImpl.java | 33 +++
.../batch/v4/BatchRequestFactoryImpl.java | 33 +++
.../request/cud/AbstractCUDRequestFactory.java | 10 +-
.../request/cud/ODataDeleteRequestImpl.java | 4 +-
.../cud/ODataEntityCreateRequestImpl.java | 4 +-
.../cud/ODataEntityUpdateRequestImpl.java | 4 +-
.../request/cud/ODataLinkCreateRequestImpl.java | 4 +-
.../request/cud/ODataLinkUpdateRequestImpl.java | 4 +-
.../cud/ODataPropertyUpdateRequestImpl.java | 4 +-
.../cud/ODataValueUpdateRequestImpl.java | 4 +-
.../request/cud/V3CUDRequestFactoryImpl.java | 32 ---
.../request/cud/V4CUDRequestFactoryImpl.java | 32 ---
.../request/cud/v3/CUDRequestFactoryImpl.java | 33 +++
.../request/cud/v4/CUDRequestFactoryImpl.java | 33 +++
.../invoke/AbstractInvokeRequestFactory.java | 11 +-
.../request/invoke/ODataInvokeRequestImpl.java | 6 +-
.../invoke/V3InvokeRequestFactoryImpl.java | 89 --------
.../invoke/V4InvokeRequestFactoryImpl.java | 43 ----
.../invoke/v3/InvokeRequestFactoryImpl.java | 91 ++++++++
.../invoke/v4/InvokeRequestFactoryImpl.java | 44 ++++
.../retrieve/AbstractODataRetrieveRequest.java | 9 +-
.../AbstractRetrieveRequestFactory.java | 10 +-
.../retrieve/ODataEntityRequestImpl.java | 4 +-
.../ODataEntitySetIteratorRequestImpl.java | 4 +-
.../retrieve/ODataEntitySetRequestImpl.java | 4 +-
.../ODataLinkCollectionRequestImpl.java | 98 --------
.../request/retrieve/ODataMediaRequestImpl.java | 4 +-
.../retrieve/ODataMetadataRequestImpl.java | 4 +-
.../retrieve/ODataPropertyRequestImpl.java | 4 +-
.../request/retrieve/ODataRawRequestImpl.java | 4 +-
.../ODataServiceDocumentRequestImpl.java | 4 +-
.../request/retrieve/ODataValueRequestImpl.java | 4 +-
.../retrieve/V3RetrieveRequestFactoryImpl.java | 39 ----
.../retrieve/V4RetrieveRequestFactoryImpl.java | 32 ---
.../v3/ODataLinkCollectionRequestImpl.java | 99 ++++++++
.../retrieve/v3/RetrieveRequestFactoryImpl.java | 41 ++++
.../retrieve/v4/RetrieveRequestFactoryImpl.java | 33 +++
.../AbstractODataStreamedEntityRequest.java | 4 +-
.../streamed/AbstractODataStreamedRequest.java | 6 +-
.../AbstractStreamedRequestFactory.java | 10 +-
.../ODataMediaEntityCreateRequestImpl.java | 4 +-
.../ODataMediaEntityUpdateRequestImpl.java | 4 +-
.../streamed/ODataStreamUpdateRequestImpl.java | 4 +-
.../streamed/V3StreamedRequestFactoryImpl.java | 32 ---
.../streamed/V4StreamedRequestFactoryImpl.java | 32 ---
.../streamed/v3/StreamedRequestFactoryImpl.java | 33 +++
.../streamed/v4/StreamedRequestFactoryImpl.java | 33 +++
.../client/core/data/AtomDeserializer.java | 1 +
.../core/data/JSONLinkCollectionImpl.java | 117 ----------
.../core/data/ODataJacksonDeserializer.java | 6 +-
.../core/data/ODataJacksonSerializer.java | 6 +-
.../client/core/data/XMLLinkCollectionImpl.java | 70 ------
.../core/data/v3/JSONLinkCollectionImpl.java | 118 ++++++++++
.../core/data/v3/XMLLinkCollectionImpl.java | 70 ++++++
.../olingo/client/core/edm/EdmClientImpl.java | 12 +-
.../client/core/edm/EdmEntityContainerImpl.java | 2 +-
.../core/edm/v3/EdmServiceMetadataImpl.java | 6 +-
.../client/core/edm/v3/FunctionImportUtils.java | 36 +++
.../core/edm/v3/V3FunctionImportUtils.java | 36 ---
.../core/op/impl/AbstractEdmDeserializer.java | 6 +-
.../core/op/impl/AbstractJacksonTool.java | 12 +-
.../core/op/impl/AbstractODataBinder.java | 19 +-
.../core/op/impl/AbstractODataDeserializer.java | 18 +-
.../core/op/impl/AbstractODataReader.java | 19 +-
.../core/op/impl/AbstractODataSerializer.java | 4 +-
.../core/op/impl/ODataObjectFactoryImpl.java | 6 +-
.../client/core/op/impl/ODataV3BinderImpl.java | 30 ---
.../core/op/impl/ODataV3DeserializerImpl.java | 56 -----
.../client/core/op/impl/ODataV3ReaderImpl.java | 47 ----
.../core/op/impl/ODataV3SerializerImpl.java | 31 ---
.../client/core/op/impl/ODataV4BinderImpl.java | 57 -----
.../core/op/impl/ODataV4DeserializerImpl.java | 57 -----
.../client/core/op/impl/ODataV4ReaderImpl.java | 47 ----
.../core/op/impl/ODataV4SerializerImpl.java | 31 ---
.../client/core/op/impl/ODataWriterImpl.java | 6 +-
.../client/core/op/impl/v3/ODataBinderImpl.java | 42 ++++
.../core/op/impl/v3/ODataDeserializerImpl.java | 67 ++++++
.../client/core/op/impl/v3/ODataReaderImpl.java | 66 ++++++
.../core/op/impl/v3/ODataSerializerImpl.java | 32 +++
.../client/core/op/impl/v4/ODataBinderImpl.java | 59 +++++
.../core/op/impl/v4/ODataDeserializerImpl.java | 58 +++++
.../client/core/op/impl/v4/ODataReaderImpl.java | 49 ++++
.../core/op/impl/v4/ODataSerializerImpl.java | 32 +++
.../core/uri/AbstractComparingFilter.java | 45 ++++
.../core/uri/AbstractFilterArgFactory.java | 178 +++++++++++++++
.../client/core/uri/AbstractFilterFactory.java | 108 +++++++++
.../client/core/uri/AbstractURIBuilder.java | 8 +-
.../olingo/client/core/uri/AndFilter.java | 42 ++++
.../apache/olingo/client/core/uri/EqFilter.java | 33 +++
.../olingo/client/core/uri/FilterConst.java | 40 ++++
.../olingo/client/core/uri/FilterFunction.java | 48 ++++
.../olingo/client/core/uri/FilterLambda.java | 46 ++++
.../olingo/client/core/uri/FilterLiteral.java | 41 ++++
.../apache/olingo/client/core/uri/FilterOp.java | 45 ++++
.../olingo/client/core/uri/FilterProperty.java | 40 ++++
.../apache/olingo/client/core/uri/GeFilter.java | 33 +++
.../apache/olingo/client/core/uri/GtFilter.java | 33 +++
.../olingo/client/core/uri/HasFilter.java | 34 +++
.../apache/olingo/client/core/uri/LeFilter.java | 33 +++
.../apache/olingo/client/core/uri/LtFilter.java | 33 +++
.../olingo/client/core/uri/MatchFilter.java | 36 +++
.../apache/olingo/client/core/uri/NeFilter.java | 33 +++
.../olingo/client/core/uri/NotFilter.java | 35 +++
.../apache/olingo/client/core/uri/OrFilter.java | 42 ++++
.../client/core/uri/V3URIBuilderImpl.java | 95 --------
.../client/core/uri/V4URIBuilderImpl.java | 101 ---------
.../uri/filter/AbstractComparingFilter.java | 45 ----
.../uri/filter/AbstractFilterArgFactory.java | 178 ---------------
.../core/uri/filter/AbstractFilterFactory.java | 108 ---------
.../client/core/uri/filter/AndFilter.java | 42 ----
.../olingo/client/core/uri/filter/EqFilter.java | 33 ---
.../client/core/uri/filter/FilterConst.java | 40 ----
.../client/core/uri/filter/FilterFunction.java | 48 ----
.../client/core/uri/filter/FilterLambda.java | 46 ----
.../client/core/uri/filter/FilterLiteral.java | 41 ----
.../olingo/client/core/uri/filter/FilterOp.java | 45 ----
.../client/core/uri/filter/FilterProperty.java | 40 ----
.../olingo/client/core/uri/filter/GeFilter.java | 33 ---
.../olingo/client/core/uri/filter/GtFilter.java | 33 ---
.../client/core/uri/filter/HasFilter.java | 34 ---
.../olingo/client/core/uri/filter/LeFilter.java | 33 ---
.../olingo/client/core/uri/filter/LtFilter.java | 33 ---
.../client/core/uri/filter/MatchFilter.java | 36 ---
.../olingo/client/core/uri/filter/NeFilter.java | 33 ---
.../client/core/uri/filter/NotFilter.java | 35 ---
.../olingo/client/core/uri/filter/OrFilter.java | 42 ----
.../core/uri/filter/V3FilterArgFactoryImpl.java | 31 ---
.../core/uri/filter/V3FilterFactoryImpl.java | 33 ---
.../core/uri/filter/V4FilterArgFactoryImpl.java | 107 ---------
.../core/uri/filter/V4FilterFactoryImpl.java | 46 ----
.../core/uri/v3/FilterArgFactoryImpl.java | 33 +++
.../client/core/uri/v3/FilterFactoryImpl.java | 34 +++
.../client/core/uri/v3/URIBuilderImpl.java | 96 ++++++++
.../core/uri/v4/FilterArgFactoryImpl.java | 110 +++++++++
.../client/core/uri/v4/FilterFactoryImpl.java | 49 ++++
.../client/core/uri/v4/URIBuilderImpl.java | 102 +++++++++
.../client/core/v3/ConfigurationImpl.java | 58 +++++
.../olingo/client/core/v3/ODataClientImpl.java | 150 +++++++++++++
.../client/core/v4/ConfigurationImpl.java | 32 +++
.../olingo/client/core/v4/ODataClientImpl.java | 149 ++++++++++++
.../apache/olingo/client/core/AbstractTest.java | 10 +-
.../olingo/client/core/ODataClientTest.java | 4 +-
.../core/it/AbstractMetadataTestITCase.java | 4 +-
.../client/core/it/AbstractTestITCase.java | 11 +-
.../client/core/it/v3/AbstractTestITCase.java | 52 +++++
.../client/core/it/v3/AbstractV3TestITCase.java | 53 -----
.../core/it/v3/ActionOverloadingTestITCase.java | 2 +-
.../client/core/it/v3/AsyncTestITCase.java | 8 +-
.../client/core/it/v3/BatchTestITCase.java | 2 +-
.../client/core/it/v3/CountTestITCase.java | 8 +-
.../core/it/v3/EntityCreateTestITCase.java | 12 +-
.../core/it/v3/EntityRetrieveTestITCase.java | 16 +-
.../client/core/it/v3/EntitySetTestITCase.java | 10 +-
.../core/it/v3/EntityUpdateTestITCase.java | 2 +-
.../client/core/it/v3/ErrorTestITCase.java | 16 +-
.../core/it/v3/FilterFactoryTestITCase.java | 16 +-
.../client/core/it/v3/FilterTestITCase.java | 6 +-
.../client/core/it/v3/InvokeTestITCase.java | 2 +-
.../core/it/v3/KeyAsSegmentTestITCase.java | 6 +-
.../client/core/it/v3/LinkTestITCase.java | 16 +-
.../core/it/v3/MediaEntityTestITCase.java | 16 +-
.../client/core/it/v3/MetadataTestITCase.java | 4 +-
.../it/v3/NavigationLinkCreateTestITCase.java | 12 +-
.../client/core/it/v3/OpenTypeTestITCase.java | 6 +-
.../core/it/v3/PrimitiveKeysTestITCase.java | 2 +-
.../core/it/v3/PropertyRetrieveTestITCase.java | 12 +-
.../client/core/it/v3/PropertyTestITCase.java | 16 +-
.../core/it/v3/PropertyValueTestITCase.java | 24 +-
.../core/it/v3/QueryOptionsTestITCase.java | 18 +-
.../v3/ServiceDocumentRetrieveTestITCase.java | 2 +-
.../core/it/v3/ServiceDocumentTestITCase.java | 2 +-
.../client/core/it/v4/AbstractTestITCase.java | 52 +++++
.../client/core/it/v4/AbstractV4TestITCase.java | 53 -----
.../client/core/it/v4/MetadataTestITCase.java | 4 +-
.../apache/olingo/client/core/v3/AtomTest.java | 4 +-
.../olingo/client/core/v3/EntitySetTest.java | 4 +-
.../olingo/client/core/v3/EntityTest.java | 4 +-
.../apache/olingo/client/core/v3/ErrorTest.java | 4 +-
.../client/core/v3/FilterFactoryTest.java | 14 +-
.../olingo/client/core/v3/MetadataTest.java | 4 +-
.../client/core/v3/PrimitiveValueTest.java | 4 +-
.../client/core/v3/ServiceDocumentTest.java | 4 +-
.../olingo/client/core/v3/URIBuilderTest.java | 18 +-
.../client/core/v4/FilterFactoryTest.java | 14 +-
.../olingo/client/core/v4/MetadataTest.java | 4 +-
.../client/core/v4/PrimitiveValueTest.java | 4 +-
.../client/core/v4/ServiceDocumentTest.java | 4 +-
.../olingo/client/core/v4/URIBuilderTest.java | 22 +-
294 files changed, 5983 insertions(+), 5783 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonConfiguration.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonConfiguration.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonConfiguration.java
new file mode 100644
index 0000000..48f2614
--- /dev/null
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonConfiguration.java
@@ -0,0 +1,184 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.client.api;
+
+import org.apache.olingo.client.api.format.ODataFormat;
+import org.apache.olingo.client.api.format.ODataMediaFormat;
+import org.apache.olingo.client.api.format.ODataPubFormat;
+import org.apache.olingo.client.api.format.ODataValueFormat;
+import org.apache.olingo.client.api.http.HttpClientFactory;
+import org.apache.olingo.client.api.http.HttpUriRequestFactory;
+
+import java.io.Serializable;
+import java.util.concurrent.ExecutorService;
+
+/**
+ * Configuration wrapper.
+ */
+public interface CommonConfiguration extends Serializable {
+
+ /**
+ * Gets the configured OData format for AtomPub exchanges. If this configuration parameter doesn't exist the
+ * JSON_FULL_METADATA format will be used as default.
+ *
+ * @return configured OData format for AtomPub if specified; JSON_FULL_METADATA format otherwise.
+ * @see ODataPubFormat#JSON_FULL_METADATA
+ */
+ ODataPubFormat getDefaultPubFormat();
+
+ /**
+ * Sets the default OData format for AtomPub exchanges.
+ *
+ * @param format default format.
+ */
+ void setDefaultPubFormat(ODataPubFormat format);
+
+ /**
+ * Gets the configured OData format. This value depends on what is returned from <tt>getDefaultPubFormat()</tt>.
+ *
+ * @return configured OData format
+ * @see #getDefaultPubFormat()
+ */
+ ODataFormat getDefaultFormat();
+
+ /**
+ * Gets the configured OData value format. If this configuration parameter doesn't exist the TEXT format will be used
+ * as default.
+ *
+ * @return configured OData value format if specified; TEXT format otherwise.
+ * @see ODataValueFormat#TEXT
+ */
+ ODataValueFormat getDefaultValueFormat();
+
+ /**
+ * Sets the default OData value format.
+ *
+ * @param format default format.
+ */
+ void setDefaultValueFormat(ODataValueFormat format);
+
+ /**
+ * Gets the configured OData media format. If this configuration parameter doesn't exist the APPLICATION_OCTET_STREAM
+ * format will be used as default.
+ *
+ * @return configured OData media format if specified; APPLICATION_OCTET_STREAM format otherwise.
+ * @see ODataMediaFormat#WILDCARD
+ */
+ ODataMediaFormat getDefaultMediaFormat();
+
+ /**
+ * Sets the default OData media format.
+ *
+ * @param format default format.
+ */
+ void setDefaultMediaFormat(ODataMediaFormat format);
+
+ /**
+ * Gets the HttpClient factory to be used for executing requests.
+ *
+ * @return provided implementation (if configured via <tt>setHttpClientFactory</tt> or default.
+ * @see DefaultHttpClientFactory
+ */
+ HttpClientFactory getHttpClientFactory();
+
+ /**
+ * Sets the HttpClient factory to be used for executing requests.
+ *
+ * @param factory implementation of <tt>HttpClientFactory</tt>.
+ * @see HttpClientFactory
+ */
+ void setHttpClientFactory(HttpClientFactory factory);
+
+ /**
+ * Gets the HttpUriRequest factory for generating requests to be executed.
+ *
+ * @return provided implementation (if configured via <tt>setHttpUriRequestFactory</tt> or default.
+ * @see DefaultHttpUriRequestFactory
+ */
+ HttpUriRequestFactory getHttpUriRequestFactory();
+
+ /**
+ * Sets the HttpUriRequest factory generating requests to be executed.
+ *
+ * @param factory implementation of <tt>HttpUriRequestFactory</tt>.
+ * @see HttpUriRequestFactory
+ */
+ void setHttpUriRequestFactory(HttpUriRequestFactory factory);
+
+ /**
+ * Gets whether <tt>PUT</tt>, <tt>MERGE</tt>, <tt>PATCH</tt>, <tt>DELETE</tt> HTTP methods need to be translated to
+ * <tt>POST</tt> with additional <tt>X-HTTTP-Method</tt> header.
+ *
+ * @return whether <tt>X-HTTTP-Method</tt> header is to be used
+ */
+ boolean isUseXHTTPMethod();
+
+ /**
+ * Sets whether <tt>PUT</tt>, <tt>MERGE</tt>, <tt>PATCH</tt>, <tt>DELETE</tt> HTTP methods need to be translated to
+ * <tt>POST</tt> with additional <tt>X-HTTTP-Method</tt> header.
+ *
+ * @param value 'TRUE' to use tunneling.
+ */
+ void setUseXHTTPMethod(boolean value);
+
+ /**
+ * Checks whether Gzip compression (e.g. support for <tt>Accept-Encoding: gzip</tt> and
+ * <tt>Content-Encoding: gzip</tt> HTTP headers) is enabled.
+ *
+ * @return whether HTTP Gzip compression is enabled
+ */
+ boolean isGzipCompression();
+
+ /**
+ * Sets Gzip compression (e.g. support for <tt>Accept-Encoding: gzip</tt> and
+ * <tt>Content-Encoding: gzip</tt> HTTP headers) enabled or disabled.
+ *
+ * @param value whether to use Gzip compression.
+ */
+ void setGzipCompression(boolean value);
+
+ /**
+ * Checks whether chunk HTTP encoding is being used.
+ *
+ * @return whether chunk HTTP encoding is being used
+ */
+ boolean isUseChuncked();
+
+ /**
+ * Sets chunk HTTP encoding enabled or disabled.
+ *
+ * @param value whether to use chunk HTTP encoding.
+ */
+ void setUseChuncked(boolean value);
+
+ /**
+ * Retrieves request executor service.
+ *
+ * @return request executor service.
+ */
+ ExecutorService getExecutor();
+
+ /**
+ * Sets request executor service.
+ *
+ * @param executorService new executor services.
+ */
+ void setExecutor(ExecutorService executorService);
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonODataClient.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonODataClient.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonODataClient.java
new file mode 100644
index 0000000..d0aef17
--- /dev/null
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonODataClient.java
@@ -0,0 +1,76 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.client.api;
+
+import org.apache.olingo.client.api.communication.header.ODataHeaders;
+import org.apache.olingo.client.api.communication.request.batch.CommonBatchRequestFactory;
+import org.apache.olingo.client.api.communication.request.cud.CommonCUDRequestFactory;
+import org.apache.olingo.client.api.communication.request.invoke.CommonInvokeRequestFactory;
+import org.apache.olingo.client.api.communication.request.retrieve.CommonRetrieveRequestFactory;
+import org.apache.olingo.client.api.communication.request.streamed.CommonStreamedRequestFactory;
+import org.apache.olingo.client.api.domain.ODataGeospatialValue;
+import org.apache.olingo.client.api.domain.ODataObjectFactory;
+import org.apache.olingo.client.api.domain.ODataPrimitiveValue;
+import org.apache.olingo.client.api.op.CommonODataBinder;
+import org.apache.olingo.client.api.op.CommonODataDeserializer;
+import org.apache.olingo.client.api.op.CommonODataReader;
+import org.apache.olingo.client.api.op.ODataSerializer;
+import org.apache.olingo.client.api.op.ODataWriter;
+import org.apache.olingo.client.api.uri.CommonURIBuilder;
+import org.apache.olingo.client.api.uri.CommonFilterFactory;
+import org.apache.olingo.commons.api.edm.constants.ODataServiceVersion;
+
+public interface CommonODataClient {
+
+ ODataServiceVersion getServiceVersion();
+
+ ODataHeaders getVersionHeaders();
+
+ CommonConfiguration getConfiguration();
+
+ CommonURIBuilder<?> getURIBuilder(String serviceRoot);
+
+ CommonFilterFactory getFilterFactory();
+
+ ODataPrimitiveValue.Builder getPrimitiveValueBuilder();
+
+ ODataGeospatialValue.Builder getGeospatialValueBuilder();
+
+ ODataSerializer getSerializer();
+
+ CommonODataDeserializer getDeserializer();
+
+ CommonODataReader getReader();
+
+ ODataWriter getWriter();
+
+ CommonODataBinder getBinder();
+
+ ODataObjectFactory getObjectFactory();
+
+ CommonRetrieveRequestFactory getRetrieveRequestFactory();
+
+ CommonCUDRequestFactory getCUDRequestFactory();
+
+ CommonStreamedRequestFactory getStreamedRequestFactory();
+
+ CommonInvokeRequestFactory<?> getInvokeRequestFactory();
+
+ CommonBatchRequestFactory getBatchRequestFactory();
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/Configuration.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/Configuration.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/Configuration.java
deleted file mode 100644
index 20d1fa6..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/Configuration.java
+++ /dev/null
@@ -1,184 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api;
-
-import org.apache.olingo.client.api.format.ODataFormat;
-import org.apache.olingo.client.api.format.ODataMediaFormat;
-import org.apache.olingo.client.api.format.ODataPubFormat;
-import org.apache.olingo.client.api.format.ODataValueFormat;
-import org.apache.olingo.client.api.http.HttpClientFactory;
-import org.apache.olingo.client.api.http.HttpUriRequestFactory;
-
-import java.io.Serializable;
-import java.util.concurrent.ExecutorService;
-
-/**
- * Configuration wrapper.
- */
-public interface Configuration extends Serializable {
-
- /**
- * Gets the configured OData format for AtomPub exchanges. If this configuration parameter doesn't exist the
- * JSON_FULL_METADATA format will be used as default.
- *
- * @return configured OData format for AtomPub if specified; JSON_FULL_METADATA format otherwise.
- * @see ODataPubFormat#JSON_FULL_METADATA
- */
- ODataPubFormat getDefaultPubFormat();
-
- /**
- * Sets the default OData format for AtomPub exchanges.
- *
- * @param format default format.
- */
- void setDefaultPubFormat(ODataPubFormat format);
-
- /**
- * Gets the configured OData format. This value depends on what is returned from <tt>getDefaultPubFormat()</tt>.
- *
- * @return configured OData format
- * @see #getDefaultPubFormat()
- */
- ODataFormat getDefaultFormat();
-
- /**
- * Gets the configured OData value format. If this configuration parameter doesn't exist the TEXT format will be used
- * as default.
- *
- * @return configured OData value format if specified; TEXT format otherwise.
- * @see ODataValueFormat#TEXT
- */
- ODataValueFormat getDefaultValueFormat();
-
- /**
- * Sets the default OData value format.
- *
- * @param format default format.
- */
- void setDefaultValueFormat(ODataValueFormat format);
-
- /**
- * Gets the configured OData media format. If this configuration parameter doesn't exist the APPLICATION_OCTET_STREAM
- * format will be used as default.
- *
- * @return configured OData media format if specified; APPLICATION_OCTET_STREAM format otherwise.
- * @see ODataMediaFormat#WILDCARD
- */
- ODataMediaFormat getDefaultMediaFormat();
-
- /**
- * Sets the default OData media format.
- *
- * @param format default format.
- */
- void setDefaultMediaFormat(ODataMediaFormat format);
-
- /**
- * Gets the HttpClient factory to be used for executing requests.
- *
- * @return provided implementation (if configured via <tt>setHttpClientFactory</tt> or default.
- * @see DefaultHttpClientFactory
- */
- HttpClientFactory getHttpClientFactory();
-
- /**
- * Sets the HttpClient factory to be used for executing requests.
- *
- * @param factory implementation of <tt>HttpClientFactory</tt>.
- * @see HttpClientFactory
- */
- void setHttpClientFactory(HttpClientFactory factory);
-
- /**
- * Gets the HttpUriRequest factory for generating requests to be executed.
- *
- * @return provided implementation (if configured via <tt>setHttpUriRequestFactory</tt> or default.
- * @see DefaultHttpUriRequestFactory
- */
- HttpUriRequestFactory getHttpUriRequestFactory();
-
- /**
- * Sets the HttpUriRequest factory generating requests to be executed.
- *
- * @param factory implementation of <tt>HttpUriRequestFactory</tt>.
- * @see HttpUriRequestFactory
- */
- void setHttpUriRequestFactory(HttpUriRequestFactory factory);
-
- /**
- * Gets whether <tt>PUT</tt>, <tt>MERGE</tt>, <tt>PATCH</tt>, <tt>DELETE</tt> HTTP methods need to be translated to
- * <tt>POST</tt> with additional <tt>X-HTTTP-Method</tt> header.
- *
- * @return whether <tt>X-HTTTP-Method</tt> header is to be used
- */
- boolean isUseXHTTPMethod();
-
- /**
- * Sets whether <tt>PUT</tt>, <tt>MERGE</tt>, <tt>PATCH</tt>, <tt>DELETE</tt> HTTP methods need to be translated to
- * <tt>POST</tt> with additional <tt>X-HTTTP-Method</tt> header.
- *
- * @param value 'TRUE' to use tunneling.
- */
- void setUseXHTTPMethod(boolean value);
-
- /**
- * Checks whether Gzip compression (e.g. support for <tt>Accept-Encoding: gzip</tt> and
- * <tt>Content-Encoding: gzip</tt> HTTP headers) is enabled.
- *
- * @return whether HTTP Gzip compression is enabled
- */
- boolean isGzipCompression();
-
- /**
- * Sets Gzip compression (e.g. support for <tt>Accept-Encoding: gzip</tt> and
- * <tt>Content-Encoding: gzip</tt> HTTP headers) enabled or disabled.
- *
- * @param value whether to use Gzip compression.
- */
- void setGzipCompression(boolean value);
-
- /**
- * Checks whether chunk HTTP encoding is being used.
- *
- * @return whether chunk HTTP encoding is being used
- */
- boolean isUseChuncked();
-
- /**
- * Sets chunk HTTP encoding enabled or disabled.
- *
- * @param value whether to use chunk HTTP encoding.
- */
- void setUseChuncked(boolean value);
-
- /**
- * Retrieves request executor service.
- *
- * @return request executor service.
- */
- ExecutorService getExecutor();
-
- /**
- * Sets request executor service.
- *
- * @param executorService new executor services.
- */
- void setExecutor(ExecutorService executorService);
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataClient.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataClient.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataClient.java
deleted file mode 100644
index 459ee10..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataClient.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api;
-
-import org.apache.olingo.client.api.communication.header.ODataHeaders;
-import org.apache.olingo.client.api.communication.request.batch.BatchRequestFactory;
-import org.apache.olingo.client.api.communication.request.cud.CUDRequestFactory;
-import org.apache.olingo.client.api.communication.request.invoke.InvokeRequestFactory;
-import org.apache.olingo.client.api.communication.request.retrieve.RetrieveRequestFactory;
-import org.apache.olingo.client.api.communication.request.streamed.StreamedRequestFactory;
-import org.apache.olingo.client.api.domain.ODataGeospatialValue;
-import org.apache.olingo.client.api.domain.ODataObjectFactory;
-import org.apache.olingo.client.api.domain.ODataPrimitiveValue;
-import org.apache.olingo.client.api.op.ODataBinder;
-import org.apache.olingo.client.api.op.ODataDeserializer;
-import org.apache.olingo.client.api.op.ODataReader;
-import org.apache.olingo.client.api.op.ODataSerializer;
-import org.apache.olingo.client.api.op.ODataWriter;
-import org.apache.olingo.client.api.uri.URIBuilder;
-import org.apache.olingo.client.api.uri.filter.FilterFactory;
-import org.apache.olingo.commons.api.edm.constants.ODataServiceVersion;
-
-public interface ODataClient {
-
- ODataServiceVersion getServiceVersion();
-
- ODataHeaders getVersionHeaders();
-
- Configuration getConfiguration();
-
- URIBuilder<?> getURIBuilder(String serviceRoot);
-
- FilterFactory getFilterFactory();
-
- ODataPrimitiveValue.Builder getPrimitiveValueBuilder();
-
- ODataGeospatialValue.Builder getGeospatialValueBuilder();
-
- ODataSerializer getSerializer();
-
- ODataDeserializer getDeserializer();
-
- ODataReader getReader();
-
- ODataWriter getWriter();
-
- ODataBinder getBinder();
-
- ODataObjectFactory getObjectFactory();
-
- RetrieveRequestFactory getRetrieveRequestFactory();
-
- CUDRequestFactory getCUDRequestFactory();
-
- StreamedRequestFactory getStreamedRequestFactory();
-
- InvokeRequestFactory<?> getInvokeRequestFactory();
-
- BatchRequestFactory getBatchRequestFactory();
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataV3Client.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataV3Client.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataV3Client.java
deleted file mode 100644
index b63617d..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataV3Client.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api;
-
-import org.apache.olingo.client.api.communication.request.batch.V3BatchRequestFactory;
-import org.apache.olingo.client.api.communication.request.cud.V3CUDRequestFactory;
-import org.apache.olingo.client.api.communication.request.invoke.V3InvokeRequestFactory;
-import org.apache.olingo.client.api.communication.request.retrieve.V3RetrieveRequestFactory;
-import org.apache.olingo.client.api.communication.request.streamed.V3StreamedRequestFactory;
-import org.apache.olingo.client.api.op.ODataV3Deserializer;
-import org.apache.olingo.client.api.uri.V3URIBuilder;
-import org.apache.olingo.client.api.uri.filter.V3FilterFactory;
-
-public interface ODataV3Client extends ODataClient {
-
- @Override
- V3Configuration getConfiguration();
-
- @Override
- V3URIBuilder getURIBuilder(String serviceRoot);
-
- @Override
- V3FilterFactory getFilterFactory();
-
- @Override
- ODataV3Deserializer getDeserializer();
-
- @Override
- V3RetrieveRequestFactory getRetrieveRequestFactory();
-
- @Override
- V3CUDRequestFactory getCUDRequestFactory();
-
- @Override
- V3StreamedRequestFactory getStreamedRequestFactory();
-
- @Override
- V3InvokeRequestFactory getInvokeRequestFactory();
-
- @Override
- V3BatchRequestFactory getBatchRequestFactory();
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataV4Client.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataV4Client.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataV4Client.java
deleted file mode 100644
index fac0f00..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/ODataV4Client.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api;
-
-import org.apache.olingo.client.api.communication.request.batch.V4BatchRequestFactory;
-import org.apache.olingo.client.api.communication.request.cud.V4CUDRequestFactory;
-import org.apache.olingo.client.api.communication.request.invoke.V4InvokeRequestFactory;
-import org.apache.olingo.client.api.communication.request.retrieve.V4RetrieveRequestFactory;
-import org.apache.olingo.client.api.communication.request.streamed.V4StreamedRequestFactory;
-import org.apache.olingo.client.api.op.ODataV4Deserializer;
-import org.apache.olingo.client.api.uri.V4URIBuilder;
-import org.apache.olingo.client.api.uri.filter.V4FilterFactory;
-
-public interface ODataV4Client extends ODataClient {
-
- @Override
- V4Configuration getConfiguration();
-
- @Override
- V4URIBuilder getURIBuilder(String serviceRoot);
-
- @Override
- V4FilterFactory getFilterFactory();
-
- @Override
- ODataV4Deserializer getDeserializer();
-
- @Override
- V4RetrieveRequestFactory getRetrieveRequestFactory();
-
- @Override
- V4CUDRequestFactory getCUDRequestFactory();
-
- @Override
- V4StreamedRequestFactory getStreamedRequestFactory();
-
- @Override
- V4InvokeRequestFactory getInvokeRequestFactory();
-
- @Override
- V4BatchRequestFactory getBatchRequestFactory();
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/UnsupportedInV3Exception.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/UnsupportedInV3Exception.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/UnsupportedInV3Exception.java
deleted file mode 100644
index 8c29c2d..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/UnsupportedInV3Exception.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api;
-
-import org.apache.olingo.commons.api.edm.EdmException;
-
-public class UnsupportedInV3Exception extends EdmException {
-
- private static final long serialVersionUID = 4773734640262424651L;
-
- public UnsupportedInV3Exception() {
- super("Not supported in OData 3.0");
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/V3Configuration.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/V3Configuration.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/V3Configuration.java
deleted file mode 100644
index b7f1065..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/V3Configuration.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api;
-
-public interface V3Configuration extends Configuration {
-
- /**
- * Checks whether URIs contain entity key between parentheses (standard) or instead as additional segment.
- * <br/>
- * Example: http://services.odata.org/V4/OData/OData.svc/Products(0) or
- * http://services.odata.org/V4/OData/OData.svc/Products/0
- *
- * @return whether URIs shall be built with entity key between parentheses (standard) or instead as additional
- * segment.
- */
- boolean isKeyAsSegment();
-
- /**
- * Sets whether URIs shall be built with entity key between parentheses (standard) or instead as additional segment.
- * <br/>
- * Example: http://services.odata.org/V4/OData/OData.svc/Products(0) or
- * http://services.odata.org/V4/OData/OData.svc/Products/0
- *
- * @param value 'TRUE' to use this feature.
- */
- void setKeyAsSegment(boolean value);
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/V4Configuration.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/V4Configuration.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/V4Configuration.java
deleted file mode 100644
index ef6d4ab..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/V4Configuration.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.olingo.client.api;
-
-public interface V4Configuration extends Configuration {
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/BatchRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/BatchRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/BatchRequestFactory.java
deleted file mode 100644
index 065f3c8..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/BatchRequestFactory.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api.communication.request.batch;
-
-import java.io.Serializable;
-
-/**
- * OData batch request factory class.
- */
-public interface BatchRequestFactory extends Serializable {
-
- /**
- * Gets a batch request object instance.
- *
- * @param serviceRoot service root.
- * @return new ODataBatchRequest instance.
- */
- ODataBatchRequest getBatchRequest(String serviceRoot);
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/CommonBatchRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/CommonBatchRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/CommonBatchRequestFactory.java
new file mode 100644
index 0000000..4519264
--- /dev/null
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/CommonBatchRequestFactory.java
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.client.api.communication.request.batch;
+
+import java.io.Serializable;
+
+/**
+ * OData batch request factory class.
+ */
+public interface CommonBatchRequestFactory extends Serializable {
+
+ /**
+ * Gets a batch request object instance.
+ *
+ * @param serviceRoot service root.
+ * @return new ODataBatchRequest instance.
+ */
+ ODataBatchRequest getBatchRequest(String serviceRoot);
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/V3BatchRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/V3BatchRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/V3BatchRequestFactory.java
deleted file mode 100644
index a55e4fa..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/V3BatchRequestFactory.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api.communication.request.batch;
-
-public interface V3BatchRequestFactory extends BatchRequestFactory {
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/V4BatchRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/V4BatchRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/V4BatchRequestFactory.java
deleted file mode 100644
index 8ec13cf..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/V4BatchRequestFactory.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api.communication.request.batch;
-
-public interface V4BatchRequestFactory extends BatchRequestFactory {
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/v3/BatchRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/v3/BatchRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/v3/BatchRequestFactory.java
new file mode 100644
index 0000000..f5b5dd5
--- /dev/null
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/v3/BatchRequestFactory.java
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.client.api.communication.request.batch.v3;
+
+import org.apache.olingo.client.api.communication.request.batch.CommonBatchRequestFactory;
+
+public interface BatchRequestFactory extends CommonBatchRequestFactory {
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/v4/BatchRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/v4/BatchRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/v4/BatchRequestFactory.java
new file mode 100644
index 0000000..1ba0b06
--- /dev/null
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/batch/v4/BatchRequestFactory.java
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.client.api.communication.request.batch.v4;
+
+import org.apache.olingo.client.api.communication.request.batch.CommonBatchRequestFactory;
+
+public interface BatchRequestFactory extends CommonBatchRequestFactory {
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/CUDRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/CUDRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/CUDRequestFactory.java
deleted file mode 100644
index c7d6bc6..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/CUDRequestFactory.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api.communication.request.cud;
-
-import java.io.Serializable;
-import java.net.URI;
-import org.apache.olingo.client.api.communication.request.UpdateType;
-import org.apache.olingo.client.api.domain.ODataEntity;
-import org.apache.olingo.client.api.domain.ODataLink;
-import org.apache.olingo.client.api.domain.ODataPrimitiveValue;
-import org.apache.olingo.client.api.domain.ODataProperty;
-
-/**
- * OData request factory class.
- */
-public interface CUDRequestFactory extends Serializable {
-
- /**
- * Gets a create request object instance.
- * <br/>
- * Use this kind of request to create a new entity.
- *
- * @param targetURI entity set URI.
- * @param entity entity to be created.
- * @return new ODataEntityCreateRequest instance.
- */
- ODataEntityCreateRequest getEntityCreateRequest(URI targetURI, ODataEntity entity);
-
- /**
- * Gets an update request object instance.
- *
- * @param targetURI edit link of the object to be updated.
- * @param type type of update to be performed.
- * @param changes changes to be applied.
- * @return new ODataEntityUpdateRequest instance.
- */
- ODataEntityUpdateRequest getEntityUpdateRequest(URI targetURI, UpdateType type, ODataEntity changes);
-
- /**
- * Gets an update request object instance; uses entity's edit link as endpoint.
- *
- * @param type type of update to be performed.
- * @param entity changes to be applied.
- * @return new ODataEntityUpdateRequest instance.
- */
- ODataEntityUpdateRequest getEntityUpdateRequest(UpdateType type, ODataEntity entity);
-
- /**
- * Gets a create request object instance.
- * <br/>
- * Use this kind of request to create a new value (e.g. http://Northwind.svc/Customer(1)/Picture/$value).
- *
- * @param targetURI entity set or entity or entity property URI.
- * @param type type of update to be performed.
- * @param value value to be created.
- * @return new ODataValueUpdateRequest instance.
- */
- ODataValueUpdateRequest getValueUpdateRequest(URI targetURI, UpdateType type, ODataPrimitiveValue value);
-
- /**
- * Gets an update request object instance.
- * <br/>
- * Use this kind of request to update a primitive property value.
- *
- * @param targetURI entity set or entity or entity property URI.
- * @param property value to be update.
- * @return new ODataPropertyUpdateRequest instance.
- */
- ODataPropertyUpdateRequest getPropertyPrimitiveValueUpdateRequest(URI targetURI, ODataProperty property);
-
- /**
- * Gets an update request object instance.
- * <br/>
- * Use this kind of request to update a complex property value.
- *
- * @param targetURI entity set or entity or entity property URI.
- * @param type type of update to be performed.
- * @param property value to be update.
- * @return new ODataPropertyUpdateRequest instance.
- */
- ODataPropertyUpdateRequest getPropertyComplexValueUpdateRequest(
- URI targetURI, UpdateType type, ODataProperty property);
-
- /**
- * Gets an update request object instance.
- * <br/>
- * Use this kind of request to update a collection property value.
- *
- * @param targetURI entity set or entity or entity property URI.
- * @param property value to be update.
- * @return new ODataPropertyUpdateRequest instance.
- */
- ODataPropertyUpdateRequest getPropertyCollectionValueUpdateRequest(URI targetURI, ODataProperty property);
-
- /**
- * Gets an add link request object instance.
- * <br/>
- * Use this kind of request to create a navigation link between existing entities.
- *
- * @param targetURI navigation property's link collection.
- * @param link navigation link to be added.
- * @return new ODataLinkCreateRequest instance.
- */
- ODataLinkCreateRequest getLinkCreateRequest(URI targetURI, ODataLink link);
-
- /**
- * Gets a link update request object instance.
- * <br/>
- * Use this kind of request to update a navigation link between existing entities.
- * <br/>
- * In case of the old navigation link doesn't exist the new one will be added as well.
- *
- * @param targetURI navigation property's link collection.
- * @param type type of update to be performed.
- * @param link URL that identifies the entity to be linked.
- * @return new ODataLinkUpdateRequest instance.
- */
- ODataLinkUpdateRequest getLinkUpdateRequest(URI targetURI, UpdateType type, ODataLink link);
-
- /**
- * Gets a delete request object instance.
- * <br/>
- * Use this kind of request to delete an entity and media entity as well.
- *
- * @param targetURI edit link of the object to be removed.
- * @return new ODataDeleteRequest instance.
- */
- ODataDeleteRequest getDeleteRequest(URI targetURI);
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/CommonCUDRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/CommonCUDRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/CommonCUDRequestFactory.java
new file mode 100644
index 0000000..c0f5b2e
--- /dev/null
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/CommonCUDRequestFactory.java
@@ -0,0 +1,145 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.client.api.communication.request.cud;
+
+import java.io.Serializable;
+import java.net.URI;
+import org.apache.olingo.client.api.communication.request.UpdateType;
+import org.apache.olingo.client.api.domain.ODataEntity;
+import org.apache.olingo.client.api.domain.ODataLink;
+import org.apache.olingo.client.api.domain.ODataPrimitiveValue;
+import org.apache.olingo.client.api.domain.ODataProperty;
+
+/**
+ * OData request factory class.
+ */
+public interface CommonCUDRequestFactory extends Serializable {
+
+ /**
+ * Gets a create request object instance.
+ * <br/>
+ * Use this kind of request to create a new entity.
+ *
+ * @param targetURI entity set URI.
+ * @param entity entity to be created.
+ * @return new ODataEntityCreateRequest instance.
+ */
+ ODataEntityCreateRequest getEntityCreateRequest(URI targetURI, ODataEntity entity);
+
+ /**
+ * Gets an update request object instance.
+ *
+ * @param targetURI edit link of the object to be updated.
+ * @param type type of update to be performed.
+ * @param changes changes to be applied.
+ * @return new ODataEntityUpdateRequest instance.
+ */
+ ODataEntityUpdateRequest getEntityUpdateRequest(URI targetURI, UpdateType type, ODataEntity changes);
+
+ /**
+ * Gets an update request object instance; uses entity's edit link as endpoint.
+ *
+ * @param type type of update to be performed.
+ * @param entity changes to be applied.
+ * @return new ODataEntityUpdateRequest instance.
+ */
+ ODataEntityUpdateRequest getEntityUpdateRequest(UpdateType type, ODataEntity entity);
+
+ /**
+ * Gets a create request object instance.
+ * <br/>
+ * Use this kind of request to create a new value (e.g. http://Northwind.svc/Customer(1)/Picture/$value).
+ *
+ * @param targetURI entity set or entity or entity property URI.
+ * @param type type of update to be performed.
+ * @param value value to be created.
+ * @return new ODataValueUpdateRequest instance.
+ */
+ ODataValueUpdateRequest getValueUpdateRequest(URI targetURI, UpdateType type, ODataPrimitiveValue value);
+
+ /**
+ * Gets an update request object instance.
+ * <br/>
+ * Use this kind of request to update a primitive property value.
+ *
+ * @param targetURI entity set or entity or entity property URI.
+ * @param property value to be update.
+ * @return new ODataPropertyUpdateRequest instance.
+ */
+ ODataPropertyUpdateRequest getPropertyPrimitiveValueUpdateRequest(URI targetURI, ODataProperty property);
+
+ /**
+ * Gets an update request object instance.
+ * <br/>
+ * Use this kind of request to update a complex property value.
+ *
+ * @param targetURI entity set or entity or entity property URI.
+ * @param type type of update to be performed.
+ * @param property value to be update.
+ * @return new ODataPropertyUpdateRequest instance.
+ */
+ ODataPropertyUpdateRequest getPropertyComplexValueUpdateRequest(
+ URI targetURI, UpdateType type, ODataProperty property);
+
+ /**
+ * Gets an update request object instance.
+ * <br/>
+ * Use this kind of request to update a collection property value.
+ *
+ * @param targetURI entity set or entity or entity property URI.
+ * @param property value to be update.
+ * @return new ODataPropertyUpdateRequest instance.
+ */
+ ODataPropertyUpdateRequest getPropertyCollectionValueUpdateRequest(URI targetURI, ODataProperty property);
+
+ /**
+ * Gets an add link request object instance.
+ * <br/>
+ * Use this kind of request to create a navigation link between existing entities.
+ *
+ * @param targetURI navigation property's link collection.
+ * @param link navigation link to be added.
+ * @return new ODataLinkCreateRequest instance.
+ */
+ ODataLinkCreateRequest getLinkCreateRequest(URI targetURI, ODataLink link);
+
+ /**
+ * Gets a link update request object instance.
+ * <br/>
+ * Use this kind of request to update a navigation link between existing entities.
+ * <br/>
+ * In case of the old navigation link doesn't exist the new one will be added as well.
+ *
+ * @param targetURI navigation property's link collection.
+ * @param type type of update to be performed.
+ * @param link URL that identifies the entity to be linked.
+ * @return new ODataLinkUpdateRequest instance.
+ */
+ ODataLinkUpdateRequest getLinkUpdateRequest(URI targetURI, UpdateType type, ODataLink link);
+
+ /**
+ * Gets a delete request object instance.
+ * <br/>
+ * Use this kind of request to delete an entity and media entity as well.
+ *
+ * @param targetURI edit link of the object to be removed.
+ * @return new ODataDeleteRequest instance.
+ */
+ ODataDeleteRequest getDeleteRequest(URI targetURI);
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/V3CUDRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/V3CUDRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/V3CUDRequestFactory.java
deleted file mode 100644
index 85e5dbf..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/V3CUDRequestFactory.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api.communication.request.cud;
-
-public interface V3CUDRequestFactory extends CUDRequestFactory {
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/V4CUDRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/V4CUDRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/V4CUDRequestFactory.java
deleted file mode 100644
index 5896c59..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/V4CUDRequestFactory.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api.communication.request.cud;
-
-public interface V4CUDRequestFactory extends CUDRequestFactory {
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/v3/CUDRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/v3/CUDRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/v3/CUDRequestFactory.java
new file mode 100644
index 0000000..4250728
--- /dev/null
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/v3/CUDRequestFactory.java
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.client.api.communication.request.cud.v3;
+
+import org.apache.olingo.client.api.communication.request.cud.CommonCUDRequestFactory;
+
+public interface CUDRequestFactory extends CommonCUDRequestFactory {
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/v4/CUDRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/v4/CUDRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/v4/CUDRequestFactory.java
new file mode 100644
index 0000000..5d68983
--- /dev/null
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/cud/v4/CUDRequestFactory.java
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.client.api.communication.request.cud.v4;
+
+import org.apache.olingo.client.api.communication.request.cud.CommonCUDRequestFactory;
+
+public interface CUDRequestFactory extends CommonCUDRequestFactory {
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/CommonInvokeRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/CommonInvokeRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/CommonInvokeRequestFactory.java
new file mode 100644
index 0000000..8449798
--- /dev/null
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/CommonInvokeRequestFactory.java
@@ -0,0 +1,58 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.olingo.client.api.communication.request.invoke;
+
+import java.io.Serializable;
+import java.net.URI;
+import java.util.Map;
+import org.apache.olingo.client.api.domain.ODataInvokeResult;
+import org.apache.olingo.client.api.domain.ODataValue;
+import org.apache.olingo.client.api.edm.xml.CommonFunctionImport;
+import org.apache.olingo.client.api.edm.xml.XMLMetadata;
+
+/**
+ * OData request factory class.
+ */
+public interface CommonInvokeRequestFactory<FI extends CommonFunctionImport> extends Serializable {
+
+ /**
+ * Gets an invoke request instance.
+ *
+ * @param <RES> OData domain object result, derived from return type defined in the function import
+ * @param uri URI that identifies the function import
+ * @param metadata Edm metadata
+ * @param functionImport function import to be invoked
+ * @return new ODataInvokeRequest instance.
+ */
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
+ URI uri, XMLMetadata metadata, FI functionImport);
+
+ /**
+ * Gets an invoke request instance.
+ *
+ * @param <RES> OData domain object result, derived from return type defined in the function import
+ * @param uri URI that identifies the function import
+ * @param metadata Edm metadata
+ * @param functionImport function import to be invoked
+ * @param parameters parameters to pass to function import invocation
+ * @return new ODataInvokeRequest instance.
+ */
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
+ URI uri, XMLMetadata metadata, FI functionImport, Map<String, ODataValue> parameters);
+}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/InvokeRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/InvokeRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/InvokeRequestFactory.java
deleted file mode 100644
index f786602..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/InvokeRequestFactory.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api.communication.request.invoke;
-
-import java.io.Serializable;
-import java.net.URI;
-import java.util.Map;
-import org.apache.olingo.client.api.domain.ODataInvokeResult;
-import org.apache.olingo.client.api.domain.ODataValue;
-import org.apache.olingo.client.api.edm.xml.CommonFunctionImport;
-import org.apache.olingo.client.api.edm.xml.XMLMetadata;
-
-/**
- * OData request factory class.
- */
-public interface InvokeRequestFactory<FI extends CommonFunctionImport> extends Serializable {
-
- /**
- * Gets an invoke request instance.
- *
- * @param <RES> OData domain object result, derived from return type defined in the function import
- * @param uri URI that identifies the function import
- * @param metadata Edm metadata
- * @param functionImport function import to be invoked
- * @return new ODataInvokeRequest instance.
- */
- <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
- URI uri, XMLMetadata metadata, FI functionImport);
-
- /**
- * Gets an invoke request instance.
- *
- * @param <RES> OData domain object result, derived from return type defined in the function import
- * @param uri URI that identifies the function import
- * @param metadata Edm metadata
- * @param functionImport function import to be invoked
- * @param parameters parameters to pass to function import invocation
- * @return new ODataInvokeRequest instance.
- */
- <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
- URI uri, XMLMetadata metadata, FI functionImport, Map<String, ODataValue> parameters);
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/V3InvokeRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/V3InvokeRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/V3InvokeRequestFactory.java
deleted file mode 100644
index cfa8aca..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/V3InvokeRequestFactory.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api.communication.request.invoke;
-
-import org.apache.olingo.client.api.edm.xml.v3.FunctionImport;
-
-public interface V3InvokeRequestFactory extends InvokeRequestFactory<FunctionImport> {
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata4/blob/bab03624/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/V4InvokeRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/V4InvokeRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/V4InvokeRequestFactory.java
deleted file mode 100644
index 3740a1e..0000000
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/V4InvokeRequestFactory.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.olingo.client.api.communication.request.invoke;
-
-import org.apache.olingo.client.api.edm.xml.v4.FunctionImport;
-
-public interface V4InvokeRequestFactory extends InvokeRequestFactory<FunctionImport> {
-}