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/05/21 13:41:07 UTC
[1/4] Invoke request factory re-factoring
Repository: olingo-odata4
Updated Branches:
refs/heads/master 377ddb959 -> 35e89699e
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/EdmEnabledInvokeRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/EdmEnabledInvokeRequestFactory.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/EdmEnabledInvokeRequestFactory.java
index d8d2538..8429b51 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/EdmEnabledInvokeRequestFactory.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/request/invoke/EdmEnabledInvokeRequestFactory.java
@@ -18,9 +18,11 @@
*/
package org.apache.olingo.client.api.communication.request.invoke;
+import java.net.URI;
import java.util.Map;
import org.apache.olingo.commons.api.domain.ODataInvokeResult;
import org.apache.olingo.commons.api.domain.ODataValue;
+import org.apache.olingo.commons.api.edm.FullQualifiedName;
public interface EdmEnabledInvokeRequestFactory extends InvokeRequestFactory {
@@ -48,7 +50,7 @@ public interface EdmEnabledInvokeRequestFactory extends InvokeRequestFactory {
/**
* Gets an invoke request instance for the action import with the given name.
*
- * @param <RES> OData domain object result, derived from return type defined in the function import
+ * @param <RES> OData domain object result, derived from return type defined in the action import
* @param actionImportName operation to be invoked
* @return new {@link ODataInvokeRequest} instance.
*/
@@ -58,11 +60,70 @@ public interface EdmEnabledInvokeRequestFactory extends InvokeRequestFactory {
/**
* Gets an invoke request instance for the action import with the given name.
*
- * @param <RES> OData domain object result, derived from return type defined in the function import
+ * @param <RES> OData domain object result, derived from return type defined in the action import
* @param actionImportName operation to be invoked
* @param parameters parameters to pass to operation import invocation
* @return new {@link ODataInvokeRequest} instance.
*/
<RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionImportInvokeRequest(
String actionImportName, Map<String, ODataValue> parameters);
+
+ /**
+ * Gets an invoke request instance for the function bound to given URI (no parameters).
+ *
+ * @param <RES> OData domain object result
+ * @param bindingParameterURI binding parameter URI
+ * @param functionName operation to be invoked
+ * @param bindingParameterTypeName binding parameter type full qualified name
+ * @param isBindingParameterCollection whether binding parameter is collection
+ * @return new {@link ODataInvokeRequest} instance.
+ */
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getBoundFunctionInvokeRequest(
+ URI bindingParameterURI, FullQualifiedName functionName, FullQualifiedName bindingParameterTypeName,
+ Boolean isBindingParameterCollection);
+
+ /**
+ * Gets an invoke request instance for the function bound to given URI (with parameters).
+ *
+ * @param <RES> OData domain object result
+ * @param bindingParameterURI binding parameter URI
+ * @param functionName operation to be invoked
+ * @param bindingParameterTypeName binding parameter type full qualified name
+ * @param isBindingParameterCollection whether binding parameter is collection
+ * @param parameters parameters to pass to function invocation
+ * @return new {@link ODataInvokeRequest} instance.
+ */
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getBoundFunctionInvokeRequest(
+ URI bindingParameterURI, FullQualifiedName functionName, FullQualifiedName bindingParameterTypeName,
+ Boolean isBindingParameterCollection, Map<String, ODataValue> parameters);
+
+ /**
+ * Gets an invoke request instance for the action bound to given URI (no parameters).
+ *
+ * @param <RES> OData domain object result
+ * @param bindingParameterURI binding parameter URI
+ * @param actionName operation to be invoked
+ * @param bindingParameterTypeName binding parameter type full qualified name
+ * @param isBindingParameterCollection whether binding parameter is collection
+ * @return new {@link ODataInvokeRequest} instance.
+ */
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getBoundActionInvokeRequest(
+ URI bindingParameterURI, FullQualifiedName actionName, FullQualifiedName bindingParameterTypeName,
+ Boolean isBindingParameterCollection);
+
+ /**
+ * Gets an invoke request instance for the action bound to given URI (with parameters).
+ *
+ * @param <RES> OData domain object result
+ * @param bindingParameterURI binding parameter URI
+ * @param actionName operation to be invoked
+ * @param bindingParameterTypeName binding parameter type full qualified name
+ * @param isBindingParameterCollection whether binding parameter is collection
+ * @param parameters parameters to pass to function invocation
+ * @return new {@link ODataInvokeRequest} instance.
+ */
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getBoundActionInvokeRequest(
+ URI bindingParameterURI, FullQualifiedName actionName, FullQualifiedName bindingParameterTypeName,
+ Boolean isBindingParameterCollection, Map<String, ODataValue> parameters);
+
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/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
index 1eeaf1c..e869ed6 100644
--- 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
@@ -21,9 +21,9 @@ 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.http.HttpMethod;
import org.apache.olingo.commons.api.domain.ODataInvokeResult;
import org.apache.olingo.commons.api.domain.ODataValue;
-import org.apache.olingo.commons.api.edm.EdmOperation;
/**
* OData request factory class.
@@ -31,24 +31,62 @@ import org.apache.olingo.commons.api.edm.EdmOperation;
public interface InvokeRequestFactory extends Serializable {
/**
- * Gets an invoke request instance.
+ * Gets an invoke request instance for the operation bound to given URI.
+ * <br/>
+ * This method is mainly meant for internal usage, but defined for generic calls from proxy; normally, one of other
+ * methods should be used instead.
*
- * @param <RES> OData domain object result, derived from return type defined in the function import
- * @param uri URI that identifies the function import
- * @param operation operation to be invoked
+ * @param <RES> OData domain object result
+ * @param method HTTP invocation method
+ * @param uri invocation URI
+ * @param resultRef reference Class for result
+ * @param parameters parameters to pass to function invocation
* @return new {@link ODataInvokeRequest} instance.
*/
- <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(URI uri, EdmOperation operation);
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
+ HttpMethod method, URI uri, Class<RES> resultRef, Map<String, ODataValue> parameters);
/**
- * Gets an invoke request instance.
+ * Gets an invoke request instance for the function bound to given URI (no parameters).
*
- * @param <RES> OData domain object result, derived from return type defined in the function import
- * @param uri URI that identifies the function import
- * @param operation operation to be invoked
- * @param parameters parameters to pass to operation invocation
+ * @param <RES> OData domain object result
+ * @param uri invocation URI
+ * @param resultRef reference Class for result
* @return new {@link ODataInvokeRequest} instance.
*/
- <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
- URI uri, EdmOperation operation, Map<String, ODataValue> parameters);
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getFunctionInvokeRequest(URI uri, Class<RES> resultRef);
+
+ /**
+ * Gets an invoke request instance for the function bound to given URI (with parameters).
+ *
+ * @param <RES> OData domain object result
+ * @param uri invocation URI
+ * @param resultRef reference Class for result
+ * @param parameters parameters to pass to function invocation
+ * @return new {@link ODataInvokeRequest} instance.
+ */
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getFunctionInvokeRequest(
+ URI uri, Class<RES> resultRef, Map<String, ODataValue> parameters);
+
+ /**
+ * Gets an invoke request instance for the action bound to given URI (no parameters).
+ *
+ * @param <RES> OData domain object result
+ * @param uri invocation URI
+ * @param resultRef reference Class for result
+ * @return new {@link ODataInvokeRequest} instance.
+ */
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionInvokeRequest(URI uri, Class<RES> resultRef);
+
+ /**
+ * Gets an invoke request instance for the action bound to given URI (with parameters).
+ *
+ * @param <RES> OData domain object result
+ * @param uri invocation URI
+ * @param resultRef reference Class for result
+ * @param parameters parameters to pass to action invocation
+ * @return new {@link ODataInvokeRequest} instance.
+ */
+ <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionInvokeRequest(
+ URI uri, Class<RES> resultRef, Map<String, ODataValue> parameters);
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-api/src/main/java/org/apache/olingo/client/api/v3/EdmEnabledODataClient.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/v3/EdmEnabledODataClient.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/v3/EdmEnabledODataClient.java
index 6f525aa..764be15 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/v3/EdmEnabledODataClient.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/v3/EdmEnabledODataClient.java
@@ -26,7 +26,7 @@ import org.apache.olingo.client.api.uri.v3.URIBuilder;
public interface EdmEnabledODataClient extends CommonEdmEnabledODataClient<UpdateType>, ODataClient {
@Override
- URIBuilder getURIBuilder();
+ URIBuilder newURIBuilder();
@Override
EdmEnabledInvokeRequestFactory getInvokeRequestFactory();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-api/src/main/java/org/apache/olingo/client/api/v3/ODataClient.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/v3/ODataClient.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/v3/ODataClient.java
index bca42cc..7606313 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/v3/ODataClient.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/v3/ODataClient.java
@@ -45,7 +45,7 @@ public interface ODataClient extends CommonODataClient<UpdateType> {
ODataBinder getBinder();
@Override
- URIBuilder getURIBuilder(String serviceRoot);
+ URIBuilder newURIBuilder(String serviceRoot);
@Override
FilterFactory getFilterFactory();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-api/src/main/java/org/apache/olingo/client/api/v4/EdmEnabledODataClient.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/v4/EdmEnabledODataClient.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/v4/EdmEnabledODataClient.java
index 3f6a49c..2e9e8c2 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/v4/EdmEnabledODataClient.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/v4/EdmEnabledODataClient.java
@@ -26,7 +26,7 @@ import org.apache.olingo.client.api.uri.v4.URIBuilder;
public interface EdmEnabledODataClient extends CommonEdmEnabledODataClient<UpdateType>, ODataClient {
@Override
- URIBuilder getURIBuilder();
+ URIBuilder newURIBuilder();
@Override
EdmEnabledInvokeRequestFactory getInvokeRequestFactory();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-api/src/main/java/org/apache/olingo/client/api/v4/ODataClient.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/v4/ODataClient.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/v4/ODataClient.java
index 0aefdc7..eff7ce7 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/v4/ODataClient.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/v4/ODataClient.java
@@ -47,7 +47,7 @@ public interface ODataClient extends CommonODataClient<UpdateType> {
ODataBinder getBinder();
@Override
- URIBuilder getURIBuilder(String serviceRoot);
+ URIBuilder newURIBuilder(String serviceRoot);
@Override
FilterFactory getFilterFactory();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/AbstractODataClient.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/AbstractODataClient.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/AbstractODataClient.java
index fd9eae5..203f624 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/AbstractODataClient.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/AbstractODataClient.java
@@ -29,11 +29,10 @@ public abstract class AbstractODataClient<UT extends CommonUpdateType> implement
private static final long serialVersionUID = 7269096702397630265L;
private final ODataWriter writer = new ODataWriterImpl(this);
-
+
@Override
public ODataPreferences newPreferences() {
return new ODataPreferences(getServiceVersion());
-
}
@Override
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/header/ODataHeadersImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/header/ODataHeadersImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/header/ODataHeadersImpl.java
index ace190e..25f9981 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/header/ODataHeadersImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/header/ODataHeadersImpl.java
@@ -24,12 +24,6 @@ import java.util.TreeMap;
import org.apache.olingo.client.api.communication.header.HeaderName;
import org.apache.olingo.client.api.communication.header.ODataHeaders;
-/**
- * ODataHeaders wraps OData request/response headers.
- *
- * @see org.apache.olingo.client.core.communication.request.ODataRequest
- * @see org.apache.olingo.client.core.communication.response.ODataResponse
- */
public class ODataHeadersImpl implements ODataHeaders {
/**
@@ -37,73 +31,38 @@ public class ODataHeadersImpl implements ODataHeaders {
*/
private final Map<String, String> headers = new TreeMap<String, String>(String.CASE_INSENSITIVE_ORDER);
- /**
- * Add the specified (custom) header (header name is case-insensitive).
- *
- * @param name header key.
- * @param value header value.
- * @return the current updated header instance.
- */
+ @Override
public ODataHeaders setHeader(final String name, final String value) {
headers.put(name, value);
return this;
}
- /**
- * Add the specified header.
- *
- * @param name header key.
- * @param value header value.
- * @return the current updated header instance.
- */
+ @Override
public ODataHeaders setHeader(final HeaderName name, final String value) {
headers.put(name.toString(), value);
return this;
}
- /**
- * {@inheritDoc }
- */
@Override
public String getHeader(final HeaderName name) {
return headers.get(name.toString());
}
- /**
- * {@inheritDoc }
- */
@Override
public String getHeader(final String name) {
return headers.get(name);
}
- /**
- * Removes the header identified by the given name.
- * <br/>
- * Please note that header name is case-insensitive.
- *
- * @param name name of the header to be retrieved.
- * @return header name (if found).
- */
+ @Override
public String removeHeader(final HeaderName name) {
return headers.remove(name.toString());
}
- /**
- * Removes the header identified by the given name.
- * <br/>
- * Please note that header name is case-insensitive.
- *
- * @param name name of the header to be retrieved.
- * @return header name (if found).
- */
+ @Override
public String removeHeader(final String name) {
return headers.remove(name);
}
- /**
- * {@inheritDoc }
- */
@Override
public Collection<String> getHeaderNames() {
return headers.keySet();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataRequest.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataRequest.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataRequest.java
index c8185d4..6b2bcf7 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataRequest.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/AbstractODataRequest.java
@@ -41,7 +41,6 @@ import org.apache.olingo.client.api.communication.response.ODataResponse;
import org.apache.olingo.commons.api.format.Format;
import org.apache.olingo.client.api.http.HttpClientException;
import org.apache.olingo.client.api.http.HttpMethod;
-import org.apache.olingo.client.core.communication.header.ODataHeadersImpl;
import org.apache.olingo.commons.api.format.ODataMediaFormat;
import org.apache.olingo.commons.api.format.ODataPubFormat;
import org.apache.olingo.commons.api.format.ODataValueFormat;
@@ -74,7 +73,7 @@ public abstract class AbstractODataRequest<T extends Format> extends AbstractReq
/**
* OData request header.
*/
- protected final ODataHeadersImpl odataHeaders;
+ protected final ODataHeaders odataHeaders;
/**
* Target URI.
@@ -108,7 +107,7 @@ public abstract class AbstractODataRequest<T extends Format> extends AbstractReq
this.method = method;
// initialize default headers
- this.odataHeaders = (ODataHeadersImpl) odataClient.getVersionHeaders();
+ this.odataHeaders = odataClient.newVersionHeaders();
// target uri
this.uri = uri;
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/v3/BatchRequestFactoryImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/v3/BatchRequestFactoryImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/v3/BatchRequestFactoryImpl.java
index d796532..d68a83d 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/v3/BatchRequestFactoryImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/v3/BatchRequestFactoryImpl.java
@@ -35,6 +35,6 @@ public class BatchRequestFactoryImpl extends AbstractBatchRequestFactory
@Override
public ODataBatchRequest getBatchRequest(final String serviceRoot) {
return new ODataBatchRequestImpl(
- (ODataClient) client, client.getURIBuilder(serviceRoot).appendBatchSegment().build());
+ (ODataClient) client, client.newURIBuilder(serviceRoot).appendBatchSegment().build());
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/v4/BatchRequestFactoryImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/v4/BatchRequestFactoryImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/v4/BatchRequestFactoryImpl.java
index bb44812..159db1d 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/v4/BatchRequestFactoryImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/batch/v4/BatchRequestFactoryImpl.java
@@ -35,6 +35,6 @@ public class BatchRequestFactoryImpl extends AbstractBatchRequestFactory
@Override
public ODataBatchRequest getBatchRequest(final String serviceRoot) {
return new ODataBatchRequestImpl(
- (ODataClient) client, client.getURIBuilder(serviceRoot).appendBatchSegment().build());
+ (ODataClient) client, client.newURIBuilder(serviceRoot).appendBatchSegment().build());
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractEdmEnabledInvokeRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractEdmEnabledInvokeRequestFactory.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractEdmEnabledInvokeRequestFactory.java
new file mode 100644
index 0000000..a9ed3f4
--- /dev/null
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractEdmEnabledInvokeRequestFactory.java
@@ -0,0 +1,172 @@
+/*
+ * 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.core.communication.request.invoke;
+
+import java.net.URI;
+import java.util.ArrayList;
+import java.util.Map;
+import org.apache.olingo.client.api.CommonEdmEnabledODataClient;
+import org.apache.olingo.client.api.communication.request.invoke.EdmEnabledInvokeRequestFactory;
+import org.apache.olingo.client.api.communication.request.invoke.ODataInvokeRequest;
+import org.apache.olingo.client.api.http.HttpMethod;
+import org.apache.olingo.commons.api.domain.ODataInvokeResult;
+import org.apache.olingo.commons.api.domain.ODataValue;
+import org.apache.olingo.commons.api.edm.EdmAction;
+import org.apache.olingo.commons.api.edm.EdmActionImport;
+import org.apache.olingo.commons.api.edm.EdmEntityContainer;
+import org.apache.olingo.commons.api.edm.EdmFunction;
+import org.apache.olingo.commons.api.edm.EdmFunctionImport;
+import org.apache.olingo.commons.api.edm.EdmSchema;
+import org.apache.olingo.commons.api.edm.FullQualifiedName;
+
+public abstract class AbstractEdmEnabledInvokeRequestFactory extends AbstractInvokeRequestFactory
+ implements EdmEnabledInvokeRequestFactory {
+
+ private static final long serialVersionUID = -3637346544674184337L;
+
+ private final CommonEdmEnabledODataClient<?> edmClient;
+
+ public AbstractEdmEnabledInvokeRequestFactory(final CommonEdmEnabledODataClient<?> edmClient) {
+ this.edmClient = edmClient;
+ }
+
+ @Override
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getFunctionImportInvokeRequest(
+ final String functionImportName) {
+
+ return getFunctionImportInvokeRequest(functionImportName, null);
+ }
+
+ @Override
+ @SuppressWarnings("unchecked")
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getFunctionImportInvokeRequest(
+ final String functionImportName, final Map<String, ODataValue> parameters) {
+
+ EdmFunctionImport efi = null;
+ for (EdmSchema schema : edmClient.getCachedEdm().getSchemas()) {
+ final EdmEntityContainer container = schema.getEntityContainer();
+ if (container != null) {
+ efi = container.getFunctionImport(functionImportName);
+ }
+ }
+ if (efi == null) {
+ throw new IllegalArgumentException("Could not find FunctionImport for name " + functionImportName);
+ }
+
+ final EdmFunction function = edmClient.getCachedEdm().
+ getUnboundFunction(efi.getFunctionFqn(),
+ parameters == null ? null : new ArrayList<String>(parameters.keySet()));
+ if (function == null) {
+ throw new IllegalArgumentException("Could not find Function " + efi.getFunctionFqn());
+ }
+
+ return (ODataInvokeRequest<RES>) getInvokeRequest(HttpMethod.GET,
+ edmClient.newURIBuilder().appendOperationCallSegment(functionImportName).build(),
+ getResultReference(function.getReturnType()),
+ parameters);
+ }
+
+ @Override
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionImportInvokeRequest(
+ final String actionImportName) {
+
+ return getActionImportInvokeRequest(actionImportName, null);
+ }
+
+ @Override
+ @SuppressWarnings("unchecked")
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionImportInvokeRequest(
+ final String actionImportName, final Map<String, ODataValue> parameters) {
+
+ EdmActionImport eai = null;
+ for (EdmSchema schema : edmClient.getCachedEdm().getSchemas()) {
+ final EdmEntityContainer container = schema.getEntityContainer();
+ if (container != null) {
+ eai = container.getActionImport(actionImportName);
+ }
+ }
+ if (eai == null) {
+ throw new IllegalArgumentException("Could not find ActionImport for name " + actionImportName);
+ }
+
+ return (ODataInvokeRequest<RES>) getInvokeRequest(HttpMethod.POST,
+ edmClient.newURIBuilder().appendOperationCallSegment(actionImportName).build(),
+ getResultReference(eai.getUnboundAction().getReturnType()),
+ parameters);
+ }
+
+ @Override
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getBoundFunctionInvokeRequest(
+ final URI bindingParameterURI, final FullQualifiedName functionName,
+ final FullQualifiedName bindingParameterTypeName, final Boolean isBindingParameterCollection) {
+
+ return getBoundFunctionInvokeRequest(
+ bindingParameterURI, functionName, bindingParameterTypeName, isBindingParameterCollection, null);
+ }
+
+ @Override
+ @SuppressWarnings("unchecked")
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getBoundFunctionInvokeRequest(
+ final URI bindingParameterURI, final FullQualifiedName functionName,
+ final FullQualifiedName bindingParameterTypeName, final Boolean isBindingParameterCollection,
+ final Map<String, ODataValue> parameters) {
+
+ final EdmFunction function = edmClient.getCachedEdm().getBoundFunction(
+ functionName, bindingParameterTypeName, isBindingParameterCollection,
+ parameters == null ? null : new ArrayList<String>(parameters.keySet()));
+ if (function == null) {
+ throw new IllegalArgumentException("Could not find Function for name " + functionName);
+ }
+
+ return (ODataInvokeRequest<RES>) getInvokeRequest(HttpMethod.GET,
+ edmClient.newURIBuilder(bindingParameterURI.toASCIIString()).
+ appendOperationCallSegment(function.getFullQualifiedName().toString()).build(),
+ getResultReference(function.getReturnType()),
+ parameters);
+ }
+
+ @Override
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getBoundActionInvokeRequest(
+ final URI bindingParameterURI, final FullQualifiedName actionName,
+ final FullQualifiedName bindingParameterTypeName, final Boolean isBindingParameterCollection) {
+
+ return getBoundActionInvokeRequest(
+ bindingParameterURI, actionName, bindingParameterTypeName, isBindingParameterCollection, null);
+ }
+
+ @Override
+ @SuppressWarnings("unchecked")
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getBoundActionInvokeRequest(
+ final URI bindingParameterURI, final FullQualifiedName actionName,
+ final FullQualifiedName bindingParameterTypeName, final Boolean isBindingParameterCollection,
+ final Map<String, ODataValue> parameters) {
+
+ final EdmAction action = edmClient.getCachedEdm().getBoundAction(
+ actionName, bindingParameterTypeName, isBindingParameterCollection);
+ if (action == null) {
+ throw new IllegalArgumentException("Could not find Action for name " + actionName);
+ }
+
+ return (ODataInvokeRequest<RES>) getInvokeRequest(HttpMethod.POST,
+ edmClient.newURIBuilder(bindingParameterURI.toASCIIString()).
+ appendOperationCallSegment(action.getFullQualifiedName().toString()).build(),
+ getResultReference(action.getReturnType()),
+ parameters);
+ }
+}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractInvokeRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractInvokeRequestFactory.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractInvokeRequestFactory.java
index 08fc6f2..536088e 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractInvokeRequestFactory.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/AbstractInvokeRequestFactory.java
@@ -19,20 +19,67 @@
package org.apache.olingo.client.core.communication.request.invoke;
import java.net.URI;
+import java.util.Map;
import org.apache.olingo.client.api.communication.request.invoke.InvokeRequestFactory;
import org.apache.olingo.client.api.communication.request.invoke.ODataInvokeRequest;
+import org.apache.olingo.client.api.communication.request.invoke.ODataNoContent;
+import org.apache.olingo.client.api.http.HttpMethod;
+import org.apache.olingo.commons.api.domain.CommonODataEntity;
+import org.apache.olingo.commons.api.domain.CommonODataEntitySet;
+import org.apache.olingo.commons.api.domain.CommonODataProperty;
import org.apache.olingo.commons.api.domain.ODataInvokeResult;
-import org.apache.olingo.commons.api.edm.EdmOperation;
+import org.apache.olingo.commons.api.domain.ODataValue;
+import org.apache.olingo.commons.api.edm.EdmReturnType;
+import org.apache.olingo.commons.api.edm.constants.EdmTypeKind;
public abstract class AbstractInvokeRequestFactory implements InvokeRequestFactory {
private static final long serialVersionUID = -906760270085197249L;
@Override
- public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
- final URI uri, final EdmOperation operation) {
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getFunctionInvokeRequest(
+ final URI uri, final Class<RES> resultRef) {
- return getInvokeRequest(uri, operation, null);
+ return getFunctionInvokeRequest(uri, resultRef, null);
}
+ @Override
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getFunctionInvokeRequest(
+ final URI uri, final Class<RES> resultRef, final Map<String, ODataValue> parameters) {
+
+ return getInvokeRequest(HttpMethod.GET, uri, resultRef, parameters);
+ }
+
+ @Override
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionInvokeRequest(
+ final URI uri, final Class<RES> resultRef) {
+
+ return getActionInvokeRequest(uri, resultRef, null);
+ }
+
+ @Override
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionInvokeRequest(
+ final URI uri, final Class<RES> resultRef, final Map<String, ODataValue> parameters) {
+
+ return getInvokeRequest(HttpMethod.POST, uri, resultRef, parameters);
+ }
+
+ @SuppressWarnings("unchecked")
+ protected <RES extends ODataInvokeResult> Class<RES> getResultReference(final EdmReturnType returnType) {
+ Class<RES> result;
+
+ if (returnType == null) {
+ result = (Class<RES>) ODataNoContent.class;
+ } else {
+ if (returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) {
+ result = (Class<RES>) CommonODataEntitySet.class;
+ } else if (!returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) {
+ result = (Class<RES>) CommonODataEntity.class;
+ } else {
+ result = (Class<RES>) CommonODataProperty.class;
+ }
+ }
+
+ return result;
+ }
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v3/EdmEnabledInvokeRequestFactoryImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v3/EdmEnabledInvokeRequestFactoryImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v3/EdmEnabledInvokeRequestFactoryImpl.java
index de22c30..b9eeeb1 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v3/EdmEnabledInvokeRequestFactoryImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v3/EdmEnabledInvokeRequestFactoryImpl.java
@@ -18,21 +18,16 @@
*/
package org.apache.olingo.client.core.communication.request.invoke.v3;
-import java.util.ArrayList;
+import java.net.URI;
import java.util.Map;
-import org.apache.olingo.client.api.communication.request.invoke.EdmEnabledInvokeRequestFactory;
import org.apache.olingo.client.api.communication.request.invoke.ODataInvokeRequest;
+import org.apache.olingo.client.api.http.HttpMethod;
import org.apache.olingo.client.api.v3.EdmEnabledODataClient;
+import org.apache.olingo.client.core.communication.request.invoke.AbstractEdmEnabledInvokeRequestFactory;
import org.apache.olingo.commons.api.domain.ODataInvokeResult;
import org.apache.olingo.commons.api.domain.ODataValue;
-import org.apache.olingo.commons.api.edm.EdmActionImport;
-import org.apache.olingo.commons.api.edm.EdmEntityContainer;
-import org.apache.olingo.commons.api.edm.EdmFunction;
-import org.apache.olingo.commons.api.edm.EdmFunctionImport;
-import org.apache.olingo.commons.api.edm.EdmSchema;
-public class EdmEnabledInvokeRequestFactoryImpl
- extends InvokeRequestFactoryImpl implements EdmEnabledInvokeRequestFactory {
+public class EdmEnabledInvokeRequestFactoryImpl extends AbstractEdmEnabledInvokeRequestFactory {
private static final long serialVersionUID = 5854571629835831697L;
@@ -44,66 +39,15 @@ public class EdmEnabledInvokeRequestFactoryImpl
}
@Override
- public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getFunctionImportInvokeRequest(
- final String functionImportName) {
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
+ final HttpMethod method, final URI uri, final Class<RES> resultRef,
+ final Map<String, ODataValue> parameters) {
- return getFunctionImportInvokeRequest(functionImportName, null);
- }
-
- @Override
- public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getFunctionImportInvokeRequest(
- final String functionImportName, final Map<String, ODataValue> parameters) {
-
- EdmFunctionImport efi = null;
- for (EdmSchema schema : edmClient.getCachedEdm().getSchemas()) {
- final EdmEntityContainer container = schema.getEntityContainer();
- if (container != null) {
- efi = container.getFunctionImport(functionImportName);
- }
- }
- if (efi == null) {
- throw new IllegalArgumentException("Could not find FunctionImport for name " + functionImportName);
+ final ODataInvokeRequest<RES> request = new ODataInvokeRequestImpl<RES>(edmClient, resultRef, method, uri);
+ if (parameters != null) {
+ request.setParameters(parameters);
}
- final EdmFunction function = edmClient.getCachedEdm().
- getUnboundFunction(efi.getFunctionFqn(),
- parameters == null ? null : new ArrayList<String>(parameters.keySet()));
- if (function == null) {
- throw new IllegalArgumentException("Could not find Function " + efi.getFunctionFqn());
- }
-
- return getInvokeRequest(
- edmClient.getURIBuilder().appendOperationCallSegment(functionImportName).build(),
- function,
- parameters);
+ return request;
}
-
- @Override
- public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionImportInvokeRequest(
- final String actionImportName) {
-
- return getActionImportInvokeRequest(actionImportName, null);
- }
-
- @Override
- public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionImportInvokeRequest(
- final String actionImportName, final Map<String, ODataValue> parameters) {
-
- EdmActionImport eai = null;
- for (EdmSchema schema : edmClient.getCachedEdm().getSchemas()) {
- final EdmEntityContainer container = schema.getEntityContainer();
- if (container != null) {
- eai = container.getActionImport(actionImportName);
- }
- }
- if (eai == null) {
- throw new IllegalArgumentException("Could not find ActionImport for name " + actionImportName);
- }
-
- return getInvokeRequest(
- edmClient.getURIBuilder().appendOperationCallSegment(actionImportName).build(),
- eai.getUnboundAction(),
- parameters);
- }
-
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v3/InvokeRequestFactoryImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v3/InvokeRequestFactoryImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v3/InvokeRequestFactoryImpl.java
index 0d71a4a..e6ff223 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v3/InvokeRequestFactoryImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v3/InvokeRequestFactoryImpl.java
@@ -22,55 +22,27 @@ import java.net.URI;
import java.util.Map;
import org.apache.olingo.client.api.v3.ODataClient;
import org.apache.olingo.client.api.communication.request.invoke.ODataInvokeRequest;
-import org.apache.olingo.client.api.communication.request.invoke.ODataNoContent;
import org.apache.olingo.commons.api.domain.ODataInvokeResult;
import org.apache.olingo.commons.api.domain.ODataValue;
import org.apache.olingo.client.api.http.HttpMethod;
import org.apache.olingo.client.core.communication.request.invoke.AbstractInvokeRequestFactory;
-import org.apache.olingo.commons.api.domain.v3.ODataEntity;
-import org.apache.olingo.commons.api.domain.v3.ODataEntitySet;
-import org.apache.olingo.commons.api.domain.v3.ODataProperty;
-import org.apache.olingo.commons.api.edm.EdmAction;
-import org.apache.olingo.commons.api.edm.EdmOperation;
-import org.apache.olingo.commons.api.edm.EdmReturnType;
-import org.apache.olingo.commons.api.edm.constants.EdmTypeKind;
public class InvokeRequestFactoryImpl extends AbstractInvokeRequestFactory {
private static final long serialVersionUID = -659256862901915496L;
private final ODataClient client;
-
+
public InvokeRequestFactoryImpl(final ODataClient client) {
this.client = client;
}
@Override
- @SuppressWarnings("unchecked")
public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
- final URI uri, final EdmOperation operation, final Map<String, ODataValue> parameters) {
-
- final HttpMethod method = operation instanceof EdmAction
- ? HttpMethod.POST
- : HttpMethod.GET;
- final EdmReturnType returnType = operation.getReturnType();
+ final HttpMethod method, final URI uri, final Class<RES> resultRef,
+ final Map<String, ODataValue> parameters) {
- ODataInvokeRequest<RES> request;
- if (returnType == null) {
- request = (ODataInvokeRequest<RES>) new ODataInvokeRequestImpl<ODataNoContent>(
- client, ODataNoContent.class, method, uri);
- } else {
- if (returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) {
- request = (ODataInvokeRequest<RES>) new ODataInvokeRequestImpl<ODataEntitySet>(
- client, ODataEntitySet.class, method, uri);
- } else if (!returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) {
- request = (ODataInvokeRequest<RES>) new ODataInvokeRequestImpl<ODataEntity>(
- client, ODataEntity.class, method, uri);
- } else {
- request = (ODataInvokeRequest<RES>) new ODataInvokeRequestImpl<ODataProperty>(
- client, ODataProperty.class, method, uri);
- }
- }
+ final ODataInvokeRequest<RES> request = new ODataInvokeRequestImpl<RES>(client, resultRef, method, uri);
if (parameters != null) {
request.setParameters(parameters);
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v4/EdmEnabledInvokeRequestFactoryImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v4/EdmEnabledInvokeRequestFactoryImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v4/EdmEnabledInvokeRequestFactoryImpl.java
index 4df6c3f..2579108 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v4/EdmEnabledInvokeRequestFactoryImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v4/EdmEnabledInvokeRequestFactoryImpl.java
@@ -18,21 +18,16 @@
*/
package org.apache.olingo.client.core.communication.request.invoke.v4;
-import java.util.ArrayList;
+import java.net.URI;
import java.util.Map;
-import org.apache.olingo.client.api.communication.request.invoke.EdmEnabledInvokeRequestFactory;
import org.apache.olingo.client.api.communication.request.invoke.ODataInvokeRequest;
+import org.apache.olingo.client.api.http.HttpMethod;
import org.apache.olingo.client.api.v4.EdmEnabledODataClient;
+import org.apache.olingo.client.core.communication.request.invoke.AbstractEdmEnabledInvokeRequestFactory;
import org.apache.olingo.commons.api.domain.ODataInvokeResult;
import org.apache.olingo.commons.api.domain.ODataValue;
-import org.apache.olingo.commons.api.edm.EdmActionImport;
-import org.apache.olingo.commons.api.edm.EdmEntityContainer;
-import org.apache.olingo.commons.api.edm.EdmFunction;
-import org.apache.olingo.commons.api.edm.EdmFunctionImport;
-import org.apache.olingo.commons.api.edm.EdmSchema;
-public class EdmEnabledInvokeRequestFactoryImpl
- extends InvokeRequestFactoryImpl implements EdmEnabledInvokeRequestFactory {
+public class EdmEnabledInvokeRequestFactoryImpl extends AbstractEdmEnabledInvokeRequestFactory {
private static final long serialVersionUID = 5854571629835831697L;
@@ -44,66 +39,15 @@ public class EdmEnabledInvokeRequestFactoryImpl
}
@Override
- public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getFunctionImportInvokeRequest(
- final String functionImportName) {
+ public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
+ final HttpMethod method, final URI uri, final Class<RES> resultRef,
+ final Map<String, ODataValue> parameters) {
- return getFunctionImportInvokeRequest(functionImportName, null);
- }
-
- @Override
- public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getFunctionImportInvokeRequest(
- final String functionImportName, final Map<String, ODataValue> parameters) {
-
- EdmFunctionImport efi = null;
- for (EdmSchema schema : edmClient.getCachedEdm().getSchemas()) {
- final EdmEntityContainer container = schema.getEntityContainer();
- if (container != null) {
- efi = container.getFunctionImport(functionImportName);
- }
- }
- if (efi == null) {
- throw new IllegalArgumentException("Could not find FunctionImport for name " + functionImportName);
+ final ODataInvokeRequest<RES> request = new ODataInvokeRequestImpl<RES>(edmClient, resultRef, method, uri);
+ if (parameters != null) {
+ request.setParameters(parameters);
}
- final EdmFunction function = edmClient.getCachedEdm().
- getUnboundFunction(efi.getFunctionFqn(),
- parameters == null ? null : new ArrayList<String>(parameters.keySet()));
- if (function == null) {
- throw new IllegalArgumentException("Could not find Function " + efi.getFunctionFqn());
- }
-
- return getInvokeRequest(
- edmClient.getURIBuilder().appendOperationCallSegment(functionImportName).build(),
- function,
- parameters);
+ return request;
}
-
- @Override
- public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionImportInvokeRequest(
- final String actionImportName) {
-
- return getActionImportInvokeRequest(actionImportName, null);
- }
-
- @Override
- public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getActionImportInvokeRequest(
- final String actionImportName, final Map<String, ODataValue> parameters) {
-
- EdmActionImport eai = null;
- for (EdmSchema schema : edmClient.getCachedEdm().getSchemas()) {
- final EdmEntityContainer container = schema.getEntityContainer();
- if (container != null) {
- eai = container.getActionImport(actionImportName);
- }
- }
- if (eai == null) {
- throw new IllegalArgumentException("Could not find ActionImport for name " + actionImportName);
- }
-
- return getInvokeRequest(
- edmClient.getURIBuilder().appendOperationCallSegment(actionImportName).build(),
- eai.getUnboundAction(),
- parameters);
- }
-
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v4/InvokeRequestFactoryImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v4/InvokeRequestFactoryImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v4/InvokeRequestFactoryImpl.java
index ded9992..15035b5 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v4/InvokeRequestFactoryImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/invoke/v4/InvokeRequestFactoryImpl.java
@@ -22,18 +22,10 @@ import java.net.URI;
import java.util.Map;
import org.apache.olingo.client.api.v4.ODataClient;
import org.apache.olingo.client.api.communication.request.invoke.ODataInvokeRequest;
-import org.apache.olingo.client.api.communication.request.invoke.ODataNoContent;
import org.apache.olingo.client.api.http.HttpMethod;
+import org.apache.olingo.client.core.communication.request.invoke.AbstractInvokeRequestFactory;
import org.apache.olingo.commons.api.domain.ODataInvokeResult;
import org.apache.olingo.commons.api.domain.ODataValue;
-import org.apache.olingo.client.core.communication.request.invoke.AbstractInvokeRequestFactory;
-import org.apache.olingo.commons.api.domain.v4.ODataEntity;
-import org.apache.olingo.commons.api.domain.v4.ODataEntitySet;
-import org.apache.olingo.commons.api.domain.v4.ODataProperty;
-import org.apache.olingo.commons.api.edm.EdmAction;
-import org.apache.olingo.commons.api.edm.EdmOperation;
-import org.apache.olingo.commons.api.edm.EdmReturnType;
-import org.apache.olingo.commons.api.edm.constants.EdmTypeKind;
public class InvokeRequestFactoryImpl extends AbstractInvokeRequestFactory {
@@ -45,32 +37,12 @@ public class InvokeRequestFactoryImpl extends AbstractInvokeRequestFactory {
this.client = client;
}
- @SuppressWarnings("unchecked")
@Override
public <RES extends ODataInvokeResult> ODataInvokeRequest<RES> getInvokeRequest(
- final URI uri, final EdmOperation operation, final Map<String, ODataValue> parameters) {
+ final HttpMethod method, final URI uri, final Class<RES> resultRef,
+ final Map<String, ODataValue> parameters) {
- final HttpMethod method = operation instanceof EdmAction
- ? HttpMethod.POST
- : HttpMethod.GET;
- final EdmReturnType returnType = operation.getReturnType();
-
- ODataInvokeRequest<RES> request;
- if (returnType == null) {
- request = (ODataInvokeRequest<RES>) new ODataInvokeRequestImpl<ODataNoContent>(
- client, ODataNoContent.class, method, uri);
- } else {
- if (returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) {
- request = (ODataInvokeRequest<RES>) new ODataInvokeRequestImpl<ODataEntitySet>(
- client, ODataEntitySet.class, method, uri);
- } else if (!returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) {
- request = (ODataInvokeRequest<RES>) new ODataInvokeRequestImpl<ODataEntity>(
- client, ODataEntity.class, method, uri);
- } else {
- request = (ODataInvokeRequest<RES>) new ODataInvokeRequestImpl<ODataProperty>(
- client, ODataProperty.class, method, uri);
- }
- }
+ final ODataInvokeRequest<RES> request = new ODataInvokeRequestImpl<RES>(client, resultRef, method, uri);
if (parameters != null) {
request.setParameters(parameters);
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractRetrieveRequestFactory.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractRetrieveRequestFactory.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractRetrieveRequestFactory.java
index abf2a8c..8ac4dc1 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractRetrieveRequestFactory.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/AbstractRetrieveRequestFactory.java
@@ -67,14 +67,14 @@ public abstract class AbstractRetrieveRequestFactory implements CommonRetrieveRe
@Override
public EdmMetadataRequest getMetadataRequest(final String serviceRoot) {
return new EdmMetadataRequestImpl(client, serviceRoot,
- client.getURIBuilder(serviceRoot).appendMetadataSegment().build());
+ client.newURIBuilder(serviceRoot).appendMetadataSegment().build());
}
@Override
public ODataServiceDocumentRequest getServiceDocumentRequest(final String serviceRoot) {
return new ODataServiceDocumentRequestImpl(client,
StringUtils.isNotBlank(serviceRoot) && serviceRoot.endsWith("/")
- ? client.getURIBuilder(serviceRoot).build()
- : client.getURIBuilder(serviceRoot + "/").build());
+ ? client.newURIBuilder(serviceRoot).build()
+ : client.newURIBuilder(serviceRoot + "/").build());
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/ODataLinkCollectionRequestImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/ODataLinkCollectionRequestImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/ODataLinkCollectionRequestImpl.java
index b11088e..e64a764 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/ODataLinkCollectionRequestImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/ODataLinkCollectionRequestImpl.java
@@ -45,7 +45,7 @@ public class ODataLinkCollectionRequestImpl extends AbstractODataRetrieveRequest
*/
ODataLinkCollectionRequestImpl(final ODataClient odataClient, final URI targetURI, final String linkName) {
super(odataClient, ODataFormat.class,
- odataClient.getURIBuilder(targetURI.toASCIIString()).appendLinksSegment(linkName).build());
+ odataClient.newURIBuilder(targetURI.toASCIIString()).appendLinksSegment(linkName).build());
}
/**
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/RetrieveRequestFactoryImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/RetrieveRequestFactoryImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/RetrieveRequestFactoryImpl.java
index 0e8db34..359ddb8 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/RetrieveRequestFactoryImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v3/RetrieveRequestFactoryImpl.java
@@ -49,7 +49,7 @@ public class RetrieveRequestFactoryImpl extends AbstractRetrieveRequestFactory
@Override
public XMLMetadataRequest getXMLMetadataRequest(final String serviceRoot) {
return new XMLMetadataRequestImpl(((ODataClient) client),
- client.getURIBuilder(serviceRoot).appendMetadataSegment().build());
+ client.newURIBuilder(serviceRoot).appendMetadataSegment().build());
}
@Override
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/RetrieveRequestFactoryImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/RetrieveRequestFactoryImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/RetrieveRequestFactoryImpl.java
index 804d2de..5006e1a 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/RetrieveRequestFactoryImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/RetrieveRequestFactoryImpl.java
@@ -50,7 +50,7 @@ public class RetrieveRequestFactoryImpl extends AbstractRetrieveRequestFactory
@Override
public XMLMetadataRequest getXMLMetadataRequest(final String serviceRoot) {
return new XMLMetadataRequestImpl(((ODataClient) client),
- client.getURIBuilder(serviceRoot).appendMetadataSegment().build());
+ client.newURIBuilder(serviceRoot).appendMetadataSegment().build());
}
@Override
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/XMLMetadataRequestImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/XMLMetadataRequestImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/XMLMetadataRequestImpl.java
index 0a1d48e..865b95c 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/XMLMetadataRequestImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/communication/request/retrieve/v4/XMLMetadataRequestImpl.java
@@ -61,7 +61,7 @@ public class XMLMetadataRequestImpl extends AbstractMetadataRequestImpl<Map<Stri
// process external references
for (Reference reference : rootMetadata.getReferences()) {
final SingleXMLMetadatRequestImpl includeReq = new SingleXMLMetadatRequestImpl(
- (ODataClient) odataClient, odataClient.getURIBuilder(reference.getUri().toASCIIString()).build());
+ (ODataClient) odataClient, odataClient.newURIBuilder(reference.getUri().toASCIIString()).build());
final XMLMetadata includeMetadata = includeReq.execute().getBody();
// edmx:Include
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/uri/URIUtils.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/uri/URIUtils.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/uri/URIUtils.java
index 4ecced4..c97e6fd 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/uri/URIUtils.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/uri/URIUtils.java
@@ -50,7 +50,6 @@ import org.apache.olingo.client.api.uri.SegmentType;
import org.apache.olingo.client.core.http.BasicAuthHttpClientFactory;
import org.apache.olingo.client.core.http.ProxyWrapperHttpClientFactory;
import org.apache.olingo.commons.api.Constants;
-import org.apache.olingo.commons.api.edm.EdmEntityContainer;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
import org.apache.olingo.commons.api.edm.constants.ODataServiceVersion;
@@ -148,25 +147,6 @@ public final class URIUtils {
return uri.normalize();
}
- /**
- * Gets operation import URI segment.
- *
- * @param entityContainer entity container.
- * @param operationImportName action / function import name.
- * @return URI segment.
- */
- public static String operationImportURISegment(
- final EdmEntityContainer entityContainer, final String operationImportName) {
-
- final StringBuilder result = new StringBuilder();
- if (!entityContainer.isDefault()) {
- result.append(entityContainer.getName()).append('.');
- }
- result.append(operationImportName);
-
- return result.toString();
- }
-
private static String prefix(final ODataServiceVersion version, final EdmPrimitiveTypeKind typeKind) {
String result = StringUtils.EMPTY;
if (version.compareTo(ODataServiceVersion.V40) < 0) {
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/v3/EdmEnabledODataClientImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/v3/EdmEnabledODataClientImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/v3/EdmEnabledODataClientImpl.java
index 60f753d..a2e92d0 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/v3/EdmEnabledODataClientImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/v3/EdmEnabledODataClientImpl.java
@@ -65,7 +65,7 @@ public class EdmEnabledODataClientImpl extends ODataClientImpl implements EdmEna
}
@Override
- public URIBuilder getURIBuilder() {
+ public URIBuilder newURIBuilder() {
return new URIBuilderImpl(getServiceVersion(), configuration, serviceRoot);
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/v3/ODataClientImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/v3/ODataClientImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/v3/ODataClientImpl.java
index 323f30b..8d696ec 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/v3/ODataClientImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/v3/ODataClientImpl.java
@@ -81,7 +81,7 @@ public class ODataClientImpl extends AbstractODataClient<UpdateType> implements
}
@Override
- public ODataHeaders getVersionHeaders() {
+ public ODataHeaders newVersionHeaders() {
final ODataHeadersImpl odataHeaders = new ODataHeadersImpl();
odataHeaders.setHeader(HeaderName.minDataServiceVersion, ODataServiceVersion.V30.toString());
odataHeaders.setHeader(HeaderName.maxDataServiceVersion, ODataServiceVersion.V30.toString());
@@ -95,7 +95,7 @@ public class ODataClientImpl extends AbstractODataClient<UpdateType> implements
}
@Override
- public URIBuilder getURIBuilder(final String serviceRoot) {
+ public URIBuilder newURIBuilder(final String serviceRoot) {
return new URIBuilderImpl(getServiceVersion(), configuration, serviceRoot);
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/v4/EdmEnabledODataClientImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/v4/EdmEnabledODataClientImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/v4/EdmEnabledODataClientImpl.java
index a9eb352..1cd6059 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/v4/EdmEnabledODataClientImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/v4/EdmEnabledODataClientImpl.java
@@ -72,7 +72,7 @@ public class EdmEnabledODataClientImpl extends ODataClientImpl implements EdmEna
}
@Override
- public URIBuilder getURIBuilder() {
+ public URIBuilder newURIBuilder() {
return new URIBuilderImpl(getServiceVersion(), configuration, serviceRoot);
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/main/java/org/apache/olingo/client/core/v4/ODataClientImpl.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/main/java/org/apache/olingo/client/core/v4/ODataClientImpl.java b/lib/client-core/src/main/java/org/apache/olingo/client/core/v4/ODataClientImpl.java
index b36d061..4b4efd4 100644
--- a/lib/client-core/src/main/java/org/apache/olingo/client/core/v4/ODataClientImpl.java
+++ b/lib/client-core/src/main/java/org/apache/olingo/client/core/v4/ODataClientImpl.java
@@ -88,7 +88,7 @@ public class ODataClientImpl extends AbstractODataClient<UpdateType> implements
}
@Override
- public ODataHeaders getVersionHeaders() {
+ public ODataHeaders newVersionHeaders() {
final ODataHeadersImpl odataHeaders = new ODataHeadersImpl();
odataHeaders.setHeader(HeaderName.odataMaxVersion, ODataServiceVersion.V40.toString());
odataHeaders.setHeader(HeaderName.odataVersion, ODataServiceVersion.V40.toString());
@@ -101,7 +101,7 @@ public class ODataClientImpl extends AbstractODataClient<UpdateType> implements
}
@Override
- public URIBuilder getURIBuilder(final String serviceRoot) {
+ public URIBuilder newURIBuilder(final String serviceRoot) {
return new URIBuilderImpl(getServiceVersion(), getConfiguration(), serviceRoot);
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/test/java/org/apache/olingo/client/core/uri/v3/URIBuilderTest.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/test/java/org/apache/olingo/client/core/uri/v3/URIBuilderTest.java b/lib/client-core/src/test/java/org/apache/olingo/client/core/uri/v3/URIBuilderTest.java
index a0bb04c..11227f3 100644
--- a/lib/client-core/src/test/java/org/apache/olingo/client/core/uri/v3/URIBuilderTest.java
+++ b/lib/client-core/src/test/java/org/apache/olingo/client/core/uri/v3/URIBuilderTest.java
@@ -42,14 +42,14 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void metadata() throws URISyntaxException {
- final URI uri = getClient().getURIBuilder(SERVICE_ROOT).appendMetadataSegment().build();
+ final URI uri = getClient().newURIBuilder(SERVICE_ROOT).appendMetadataSegment().build();
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/$metadata").build(), uri);
}
@Test
public void entity() throws URISyntaxException {
- final URI uri = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("AnEntitySet").
+ final URI uri = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("AnEntitySet").
appendKeySegment(11).build();
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/AnEntitySet(11)").build(), uri);
@@ -57,21 +57,21 @@ public class URIBuilderTest extends AbstractTest {
final Map<String, Object> multiKey = new HashMap<String, Object>();
multiKey.put("OrderId", -10);
multiKey.put("ProductId", -10);
- URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntitySetSegment("OrderLine").appendKeySegment(multiKey).
appendPropertySegment("Quantity").appendValueSegment();
assertEquals(new org.apache.http.client.utils.URIBuilder(
SERVICE_ROOT + "/OrderLine(OrderId=-10,ProductId=-10)/Quantity/$value").build(), uriBuilder.build());
- uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntitySetSegment("Customer").appendKeySegment(-10).
select("CustomerId", "Name", "Orders").expand("Orders");
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/Customer(-10)").
addParameter("$select", "CustomerId,Name,Orders").addParameter("$expand", "Orders").build(),
uriBuilder.build());
- uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntitySetSegment("Customer").appendKeySegment(-10).appendLinksSegment("Orders");
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/Customer(-10)/$links/Orders").build(),
uriBuilder.build());
@@ -79,11 +79,11 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void count() throws URISyntaxException {
- URI uri = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").count().build();
+ URI uri = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").count().build();
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/Products/$count").build(), uri);
- uri = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").
+ uri = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").
inlineCount(URIBuilder.InlineCount.allpages).build();
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/Products").
@@ -92,7 +92,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void filter() throws URISyntaxException {
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("AnEntitySet").
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("AnEntitySet").
filter(getClient().getFilterFactory().lt("VIN", 16));
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/AnEntitySet").
@@ -103,7 +103,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void filterWithParameter() throws URISyntaxException {
// http://host/service.svc/Employees?$filter=Region eq @p1&@p1='WA'
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Employees").
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Employees").
filter(getClient().getFilterFactory().eq("Region", new ParameterAlias("p1"))).
addParameterAlias("p1", "'WA'");
@@ -114,7 +114,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void boundAction() throws URISyntaxException {
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntitySetSegment("Products").appendOperationCallSegment("MostExpensive");
assertEquals(new org.apache.http.client.utils.URIBuilder(
@@ -123,7 +123,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void derived() throws URISyntaxException {
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntitySetSegment("Customers").appendNavigationSegment("Model").
appendDerivedEntityTypeSegment("Namespace.VipCustomer").appendKeySegment(1);
@@ -133,7 +133,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void expandMoreThenOnce() throws URISyntaxException {
- URI uri = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").appendKeySegment(5).
+ URI uri = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").appendKeySegment(5).
expand("Orders", "Customers").expand("Info").build();
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/Products(5)").
@@ -142,7 +142,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void selectMoreThenOnce() throws URISyntaxException {
- URI uri = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Customers").appendKeySegment(5).
+ URI uri = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Customers").appendKeySegment(5).
select("Name", "Surname").expand("Info").select("Gender").build();
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/Customers(5)").
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-core/src/test/java/org/apache/olingo/client/core/uri/v4/URIBuilderTest.java
----------------------------------------------------------------------
diff --git a/lib/client-core/src/test/java/org/apache/olingo/client/core/uri/v4/URIBuilderTest.java b/lib/client-core/src/test/java/org/apache/olingo/client/core/uri/v4/URIBuilderTest.java
index 777236d..9b8ea75 100644
--- a/lib/client-core/src/test/java/org/apache/olingo/client/core/uri/v4/URIBuilderTest.java
+++ b/lib/client-core/src/test/java/org/apache/olingo/client/core/uri/v4/URIBuilderTest.java
@@ -41,7 +41,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void expandWithOptions() throws URISyntaxException {
- final URI uri = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").appendKeySegment(5).
+ final URI uri = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").appendKeySegment(5).
expandWithOptions("ProductDetails", new LinkedHashMap<QueryOption, Object>() {
private static final long serialVersionUID = 3109256773218160485L;
@@ -57,7 +57,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void expandWithLevels() throws URISyntaxException {
- final URI uri = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").appendKeySegment(1).
+ final URI uri = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").appendKeySegment(1).
expandWithOptions("Customer", Collections.<QueryOption, Object>singletonMap(QueryOption.LEVELS, 4)).
build();
@@ -67,11 +67,11 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void count() throws URISyntaxException {
- URI uri = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").count().build();
+ URI uri = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").count().build();
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/Products/$count").build(), uri);
- uri = getClient().getURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").count(true).build();
+ uri = getClient().newURIBuilder(SERVICE_ROOT).appendEntitySetSegment("Products").count(true).build();
assertEquals(new org.apache.http.client.utils.URIBuilder(SERVICE_ROOT + "/Products").
addParameter("$count", "true").build(), uri);
@@ -79,7 +79,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void singleton() throws URISyntaxException {
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendSingletonSegment("BestProductEverCreated");
assertEquals(new org.apache.http.client.utils.URIBuilder(
@@ -88,7 +88,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void entityId() throws URISyntaxException {
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntityIdSegment("Products(0)");
assertEquals(new org.apache.http.client.utils.URIBuilder(
@@ -97,7 +97,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void boundAction() throws URISyntaxException {
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntitySetSegment("Categories").appendKeySegment(1).
appendNavigationSegment("Products").appendNavigationSegment("Model").
appendOperationCallSegment("AllOrders");
@@ -108,14 +108,14 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void ref() throws URISyntaxException {
- URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntitySetSegment("Categories").appendKeySegment(1).
appendNavigationSegment("Products").appendRefSegment();
assertEquals(new org.apache.http.client.utils.URIBuilder(
SERVICE_ROOT + "/Categories(1)/Products/$ref").build(), uriBuilder.build());
- uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntitySetSegment("Categories").appendKeySegment(1).
appendNavigationSegment("Products").appendRefSegment().id("../../Products(0)");
@@ -126,7 +126,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void derived() throws URISyntaxException {
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntitySetSegment("Customers").appendDerivedEntityTypeSegment("Model.VipCustomer").appendKeySegment(1);
assertEquals(new org.apache.http.client.utils.URIBuilder(
@@ -135,7 +135,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void crossjoin() throws URISyntaxException {
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendCrossjoinSegment("Products", "Sales");
assertEquals(new org.apache.http.client.utils.URIBuilder(
@@ -144,7 +144,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void all() throws URISyntaxException {
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).appendAllSegment();
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).appendAllSegment();
assertEquals(new org.apache.http.client.utils.URIBuilder(
SERVICE_ROOT + "/$all").build(), uriBuilder.build());
@@ -152,7 +152,7 @@ public class URIBuilderTest extends AbstractTest {
@Test
public void search() throws URISyntaxException {
- final URIBuilder uriBuilder = getClient().getURIBuilder(SERVICE_ROOT).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(SERVICE_ROOT).
appendEntitySetSegment("Products").search("blue OR green");
assertEquals(new org.apache.http.client.utils.URIBuilder(
[2/4] Invoke request factory re-factoring
Posted by il...@apache.org.
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/BoundOperationInvokeTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/BoundOperationInvokeTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/BoundOperationInvokeTestITCase.java
index da05c7b..4a13943 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/BoundOperationInvokeTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/BoundOperationInvokeTestITCase.java
@@ -23,6 +23,7 @@ import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import java.util.Collections;
+import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import org.apache.olingo.client.api.communication.request.invoke.ODataInvokeRequest;
@@ -38,10 +39,6 @@ import org.apache.olingo.commons.api.domain.v4.ODataEntitySet;
import org.apache.olingo.commons.api.domain.v4.ODataEnumValue;
import org.apache.olingo.commons.api.domain.v4.ODataProperty;
import org.apache.olingo.commons.api.domain.v4.Singleton;
-import org.apache.olingo.commons.api.edm.Edm;
-import org.apache.olingo.commons.api.edm.EdmAction;
-import org.apache.olingo.commons.api.edm.EdmEntityContainer;
-import org.apache.olingo.commons.api.edm.EdmFunction;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeKind;
import org.apache.olingo.commons.api.edm.FullQualifiedName;
@@ -50,20 +47,9 @@ import org.junit.Test;
public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
- private Edm getEdm() {
- final Edm edm = client.getRetrieveRequestFactory().getMetadataRequest(testStaticServiceRootURL).execute().getBody();
- assertNotNull(edm);
-
- return edm;
- }
-
private void functions(final ODataPubFormat format) throws EdmPrimitiveTypeException {
- final Edm edm = getEdm();
- final EdmEntityContainer container = edm.getSchemas().get(0).getEntityContainer();
- assertNotNull(container);
-
// GetEmployeesCount
- URIBuilder builder = client.getURIBuilder(testStaticServiceRootURL).appendSingletonSegment("Company");
+ URIBuilder builder = client.newURIBuilder(testStaticServiceRootURL).appendSingletonSegment("Company");
final ODataEntityRequest<Singleton> singletonReq =
client.getRetrieveRequestFactory().getSingletonRequest(builder.build());
singletonReq.setFormat(format);
@@ -73,19 +59,15 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
ODataOperation boundOp = company.getOperation("Microsoft.Test.OData.Services.ODataWCFService.GetEmployeesCount");
assertNotNull(boundOp);
- EdmFunction func = edm.getBoundFunction(new FullQualifiedName(boundOp.getTitle()), company.getTypeName(),
- false, null);
- assertNotNull(func);
-
final ODataInvokeRequest<ODataProperty> getEmployeesCountReq =
- client.getInvokeRequestFactory().getInvokeRequest(boundOp.getTarget(), func);
+ client.getInvokeRequestFactory().getFunctionInvokeRequest(boundOp.getTarget(), ODataProperty.class);
getEmployeesCountReq.setFormat(format);
final ODataProperty getEmployeesCountRes = getEmployeesCountReq.execute().getBody();
assertNotNull(getEmployeesCountRes);
assertTrue(getEmployeesCountRes.hasPrimitiveValue());
// GetProductDetails
- builder = client.getURIBuilder(testStaticServiceRootURL).
+ builder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Products").appendKeySegment(5);
ODataEntityRequest<ODataEntity> entityReq = client.getRetrieveRequestFactory().
getEntityRequest(builder.build());
@@ -96,12 +78,9 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
boundOp = entity.getOperation("Microsoft.Test.OData.Services.ODataWCFService.GetProductDetails");
assertNotNull(boundOp);
- func = edm.getBoundFunction(new FullQualifiedName(boundOp.getTitle()), entity.getTypeName(), false, null);
- assertNotNull(func);
-
final ODataPrimitiveValue count = client.getObjectFactory().newPrimitiveValueBuilder().buildInt32(1);
final ODataInvokeRequest<ODataEntitySet> getProductDetailsReq =
- client.getInvokeRequestFactory().getInvokeRequest(boundOp.getTarget(), func,
+ client.getInvokeRequestFactory().getFunctionInvokeRequest(boundOp.getTarget(), ODataEntitySet.class,
Collections.<String, ODataValue>singletonMap("count", count));
getProductDetailsReq.setFormat(format);
final ODataEntitySet getProductDetailsRes = getProductDetailsReq.execute().getBody();
@@ -112,7 +91,7 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
final Map<String, Object> keyMap = new LinkedHashMap<String, Object>();
keyMap.put("ProductID", 6);
keyMap.put("ProductDetailID", 1);
- builder = client.getURIBuilder(testStaticServiceRootURL).
+ builder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("ProductDetails").appendKeySegment(keyMap);
entityReq = client.getRetrieveRequestFactory().getEntityRequest(builder.build());
entityReq.setFormat(format);
@@ -122,11 +101,8 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
boundOp = entity.getOperation("Microsoft.Test.OData.Services.ODataWCFService.GetRelatedProduct");
assertNotNull(boundOp);
- func = edm.getBoundFunction(new FullQualifiedName(boundOp.getTitle()), entity.getTypeName(), false, null);
- assertNotNull(func);
-
final ODataInvokeRequest<ODataEntity> getRelatedProductReq =
- client.getInvokeRequestFactory().getInvokeRequest(boundOp.getTarget(), func);
+ client.getInvokeRequestFactory().getFunctionInvokeRequest(boundOp.getTarget(), ODataEntity.class);
getRelatedProductReq.setFormat(format);
final ODataEntity getRelatedProductRes = getRelatedProductReq.execute().getBody();
assertNotNull(getRelatedProductRes);
@@ -135,8 +111,8 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
assertEquals(6, getRelatedProductRes.getProperty("ProductID").getPrimitiveValue().toCastValue(Integer.class), 0);
// GetDefaultPI
- builder = client.getURIBuilder(testStaticServiceRootURL).
- appendEntitySetSegment("Accounts").appendKeySegment(101);
+ builder = client.newURIBuilder(testStaticServiceRootURL).
+ appendEntitySetSegment("Accounts").appendKeySegment(102);
entityReq = client.getRetrieveRequestFactory().getEntityRequest(builder.build());
entityReq.setFormat(format);
entity = entityReq.execute().getBody();
@@ -145,28 +121,22 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
boundOp = entity.getOperation("Microsoft.Test.OData.Services.ODataWCFService.GetDefaultPI");
assertNotNull(boundOp);
- func = edm.getBoundFunction(new FullQualifiedName(boundOp.getTitle()), entity.getTypeName(), false, null);
- assertNotNull(func);
-
final ODataInvokeRequest<ODataEntity> getDefaultPIReq =
- client.getInvokeRequestFactory().getInvokeRequest(boundOp.getTarget(), func);
+ client.getInvokeRequestFactory().getFunctionInvokeRequest(boundOp.getTarget(), ODataEntity.class);
getDefaultPIReq.setFormat(format);
final ODataEntity getDefaultPIRes = getDefaultPIReq.execute().getBody();
assertNotNull(getDefaultPIRes);
assertEquals("Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument",
getDefaultPIRes.getTypeName().toString());
- assertEquals(101901,
+ assertEquals(102901,
getDefaultPIRes.getProperty("PaymentInstrumentID").getPrimitiveValue().toCastValue(Integer.class), 0);
// GetAccountInfo
boundOp = entity.getOperation("Microsoft.Test.OData.Services.ODataWCFService.GetAccountInfo");
assertNotNull(boundOp);
- func = edm.getBoundFunction(new FullQualifiedName(boundOp.getTitle()), entity.getTypeName(), false, null);
- assertNotNull(func);
-
final ODataInvokeRequest<ODataProperty> getAccountInfoReq =
- client.getInvokeRequestFactory().getInvokeRequest(boundOp.getTarget(), func);
+ client.getInvokeRequestFactory().getFunctionInvokeRequest(boundOp.getTarget(), ODataProperty.class);
getAccountInfoReq.setFormat(format);
final ODataProperty getAccountInfoRes = getAccountInfoReq.execute().getBody();
assertNotNull(getAccountInfoRes);
@@ -185,12 +155,9 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
boundOp = entity.getOperation("Microsoft.Test.OData.Services.ODataWCFService.GetActualAmount");
assertNotNull(boundOp);
- func = edm.getBoundFunction(new FullQualifiedName(boundOp.getTitle()), entity.getTypeName(), false, null);
- assertNotNull(func);
-
final ODataPrimitiveValue bonusRate = client.getObjectFactory().newPrimitiveValueBuilder().buildDouble(1.1);
final ODataInvokeRequest<ODataProperty> getActualAmountReq =
- client.getInvokeRequestFactory().getInvokeRequest(boundOp.getTarget(), func,
+ client.getInvokeRequestFactory().getFunctionInvokeRequest(boundOp.getTarget(), ODataProperty.class,
Collections.<String, ODataValue>singletonMap("bonusRate", bonusRate));
getActualAmountReq.setFormat(format);
final ODataProperty getActualAmountRes = getActualAmountReq.execute().getBody();
@@ -208,13 +175,95 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
functions(ODataPubFormat.JSON_FULL_METADATA);
}
- private void actions(final ODataPubFormat format) throws EdmPrimitiveTypeException {
- final Edm edm = getEdm();
- final EdmEntityContainer container = edm.getSchemas().get(0).getEntityContainer();
- assertNotNull(container);
+ @Test
+ public void edmEnabledFunctions() throws EdmPrimitiveTypeException {
+ // GetEmployeesCount
+ final ODataInvokeRequest<ODataProperty> getEmployeesCountReq =
+ edmClient.getInvokeRequestFactory().getBoundFunctionInvokeRequest(
+ edmClient.newURIBuilder().appendSingletonSegment("Company").build(),
+ new FullQualifiedName(("Microsoft.Test.OData.Services.ODataWCFService.GetEmployeesCount")),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.Company"),
+ false);
+ final ODataProperty getEmployeesCountRes = getEmployeesCountReq.execute().getBody();
+ assertNotNull(getEmployeesCountRes);
+ assertTrue(getEmployeesCountRes.hasPrimitiveValue());
+
+ // GetProductDetails
+ final ODataPrimitiveValue count = edmClient.getObjectFactory().newPrimitiveValueBuilder().buildInt32(1);
+ final ODataInvokeRequest<ODataEntitySet> getProductDetailsReq =
+ edmClient.getInvokeRequestFactory().getBoundFunctionInvokeRequest(
+ edmClient.newURIBuilder().appendEntitySetSegment("Products").appendKeySegment(5).build(),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.GetProductDetails"),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.Product"),
+ false,
+ Collections.<String, ODataValue>singletonMap("count", count));
+ final ODataEntitySet getProductDetailsRes = getProductDetailsReq.execute().getBody();
+ assertNotNull(getProductDetailsRes);
+ assertEquals(1, getProductDetailsRes.getCount());
+
+ // GetRelatedProduct
+ final Map<String, Object> keyMap = new LinkedHashMap<String, Object>();
+ keyMap.put("ProductID", 6);
+ keyMap.put("ProductDetailID", 1);
+ URIBuilder builder = edmClient.newURIBuilder().appendEntitySetSegment("ProductDetails").appendKeySegment(keyMap);
+
+ final ODataInvokeRequest<ODataEntity> getRelatedProductReq =
+ edmClient.getInvokeRequestFactory().getBoundFunctionInvokeRequest(
+ builder.build(),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.GetRelatedProduct"),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.ProductDetail"),
+ false);
+ final ODataEntity getRelatedProductRes = getRelatedProductReq.execute().getBody();
+ assertNotNull(getRelatedProductRes);
+ assertEquals("Microsoft.Test.OData.Services.ODataWCFService.Product",
+ getRelatedProductRes.getTypeName().toString());
+ assertEquals(6, getRelatedProductRes.getProperty("ProductID").getPrimitiveValue().toCastValue(Integer.class), 0);
+
+ // GetDefaultPI
+ final ODataInvokeRequest<ODataEntity> getDefaultPIReq =
+ edmClient.getInvokeRequestFactory().getBoundFunctionInvokeRequest(
+ edmClient.newURIBuilder().appendEntitySetSegment("Accounts").appendKeySegment(102).build(),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.GetDefaultPI"),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.Account"),
+ false);
+ final ODataEntity getDefaultPIRes = getDefaultPIReq.execute().getBody();
+ assertNotNull(getDefaultPIRes);
+ assertEquals("Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument",
+ getDefaultPIRes.getTypeName().toString());
+ assertEquals(102901,
+ getDefaultPIRes.getProperty("PaymentInstrumentID").getPrimitiveValue().toCastValue(Integer.class), 0);
+
+ // GetAccountInfo
+ final ODataInvokeRequest<ODataProperty> getAccountInfoReq =
+ edmClient.getInvokeRequestFactory().getBoundFunctionInvokeRequest(
+ edmClient.newURIBuilder().appendEntitySetSegment("Accounts").appendKeySegment(102).build(),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.GetAccountInfo"),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.Account"),
+ false);
+ final ODataProperty getAccountInfoRes = getAccountInfoReq.execute().getBody();
+ assertNotNull(getAccountInfoRes);
+ assertTrue(getAccountInfoRes.hasComplexValue());
+ assertEquals("Microsoft.Test.OData.Services.ODataWCFService.AccountInfo",
+ getAccountInfoRes.getComplexValue().getTypeName());
+ // GetActualAmount
+ final ODataPrimitiveValue bonusRate = edmClient.getObjectFactory().newPrimitiveValueBuilder().buildDouble(1.1);
+ final ODataInvokeRequest<ODataProperty> getActualAmountReq =
+ edmClient.getInvokeRequestFactory().getBoundFunctionInvokeRequest(
+ edmClient.newURIBuilder().appendEntitySetSegment("Accounts").appendKeySegment(102).
+ appendNavigationSegment("MyGiftCard").build(),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.GetActualAmount"),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.GiftCard"),
+ false,
+ Collections.<String, ODataValue>singletonMap("bonusRate", bonusRate));
+ final ODataProperty getActualAmountRes = getActualAmountReq.execute().getBody();
+ assertNotNull(getActualAmountRes);
+ assertEquals(41.79, getActualAmountRes.getPrimitiveValue().toCastValue(Double.class), 0);
+ }
+
+ private void actions(final ODataPubFormat format) throws EdmPrimitiveTypeException {
// IncreaseRevenue
- URIBuilder builder = client.getURIBuilder(testStaticServiceRootURL).appendSingletonSegment("Company");
+ URIBuilder builder = client.newURIBuilder(testStaticServiceRootURL).appendSingletonSegment("Company");
ODataEntityRequest<ODataEntity> entityReq =
client.getRetrieveRequestFactory().getEntityRequest(builder.build());
entityReq.setFormat(format);
@@ -224,13 +273,10 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
ODataOperation boundOp = entity.getOperation("Microsoft.Test.OData.Services.ODataWCFService.IncreaseRevenue");
assertNotNull(boundOp);
- EdmAction act = edm.getBoundAction(new FullQualifiedName(boundOp.getTitle()), entity.getTypeName(), false);
- assertNotNull(act);
-
final ODataPrimitiveValue increaseValue =
client.getObjectFactory().newPrimitiveValueBuilder().buildInt64(12L);
final ODataInvokeRequest<ODataProperty> increaseRevenueReq =
- client.getInvokeRequestFactory().getInvokeRequest(boundOp.getTarget(), act,
+ client.getInvokeRequestFactory().getActionInvokeRequest(boundOp.getTarget(), ODataProperty.class,
Collections.<String, ODataValue>singletonMap("IncreaseValue", increaseValue));
increaseRevenueReq.setFormat(format);
final ODataProperty increaseRevenueRes = increaseRevenueReq.execute().getBody();
@@ -238,7 +284,7 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
assertTrue(increaseRevenueRes.hasPrimitiveValue());
// AddAccessRight
- builder = client.getURIBuilder(testStaticServiceRootURL).
+ builder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Products").appendKeySegment(5);
entityReq = client.getRetrieveRequestFactory().getEntityRequest(builder.build());
entityReq.setFormat(format);
@@ -248,13 +294,10 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
boundOp = entity.getOperation("Microsoft.Test.OData.Services.ODataWCFService.AddAccessRight");
assertNotNull(boundOp);
- act = edm.getBoundAction(new FullQualifiedName(boundOp.getTitle()), entity.getTypeName(), false);
- assertNotNull(act);
-
final ODataEnumValue accessRight = client.getObjectFactory().
newEnumValue("Microsoft.Test.OData.Services.ODataWCFService.AccessLevel", "Execute");
final ODataInvokeRequest<ODataProperty> getProductDetailsReq =
- client.getInvokeRequestFactory().getInvokeRequest(boundOp.getTarget(), act,
+ client.getInvokeRequestFactory().getActionInvokeRequest(boundOp.getTarget(), ODataProperty.class,
Collections.<String, ODataValue>singletonMap("accessRight", accessRight));
getProductDetailsReq.setFormat(format);
final ODataProperty getProductDetailsRes = getProductDetailsReq.execute().getBody();
@@ -262,7 +305,7 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
assertTrue(getProductDetailsRes.hasEnumValue());
// ResetAddress
- builder = client.getURIBuilder(testStaticServiceRootURL).
+ builder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(2);
entityReq = client.getRetrieveRequestFactory().getEntityRequest(builder.build());
entityReq.setFormat(format);
@@ -272,10 +315,6 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
boundOp = entity.getOperation("Microsoft.Test.OData.Services.ODataWCFService.ResetAddress");
assertNotNull(boundOp);
- act = edm.getBoundAction(new FullQualifiedName(boundOp.getTitle()),
- edm.getEntityType(entity.getTypeName()).getBaseType().getFullQualifiedName(), false);
- assertNotNull(act);
-
final ODataCollectionValue<org.apache.olingo.commons.api.domain.v4.ODataValue> addresses =
client.getObjectFactory().
newCollectionValue("Collection(Microsoft.Test.OData.Services.ODataWCFService.Address)");
@@ -293,15 +332,15 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
params.put("addresses", addresses);
params.put("index", index);
final ODataInvokeRequest<ODataEntity> resetAddressReq =
- client.getInvokeRequestFactory().getInvokeRequest(boundOp.getTarget(), act, params);
+ client.getInvokeRequestFactory().getActionInvokeRequest(boundOp.getTarget(), ODataEntity.class, params);
resetAddressReq.setFormat(format);
final ODataEntity resetAddressRes = resetAddressReq.execute().getBody();
assertNotNull(resetAddressRes);
assertEquals(2, resetAddressRes.getProperty("PersonID").getPrimitiveValue().toCastValue(Integer.class), 0);
// RefreshDefaultPI
- builder = client.getURIBuilder(testStaticServiceRootURL).
- appendEntitySetSegment("Accounts").appendKeySegment(101);
+ builder = client.newURIBuilder(testStaticServiceRootURL).
+ appendEntitySetSegment("Accounts").appendKeySegment(102);
entityReq = client.getRetrieveRequestFactory().getEntityRequest(builder.build());
entityReq.setFormat(format);
entity = entityReq.execute().getBody();
@@ -310,20 +349,17 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
boundOp = entity.getOperation("Microsoft.Test.OData.Services.ODataWCFService.RefreshDefaultPI");
assertNotNull(boundOp);
- act = edm.getBoundAction(new FullQualifiedName(boundOp.getTitle()), entity.getTypeName(), false);
- assertNotNull(act);
-
final ODataPrimitiveValue newDate = client.getObjectFactory().newPrimitiveValueBuilder().
setType(EdmPrimitiveTypeKind.DateTimeOffset).setText("2014-04-09T00:00:00Z").build();
final ODataInvokeRequest<ODataEntity> getDefaultPIReq =
- client.getInvokeRequestFactory().getInvokeRequest(boundOp.getTarget(), act,
+ client.getInvokeRequestFactory().getActionInvokeRequest(boundOp.getTarget(), ODataEntity.class,
Collections.<String, ODataValue>singletonMap("newDate", newDate));
getDefaultPIReq.setFormat(format);
final ODataEntity getDefaultPIRes = getDefaultPIReq.execute().getBody();
assertNotNull(getDefaultPIRes);
assertEquals("Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument",
getDefaultPIRes.getTypeName().toString());
- assertEquals(101901,
+ assertEquals(102901,
getDefaultPIRes.getProperty("PaymentInstrumentID").getPrimitiveValue().toCastValue(Integer.class), 0);
}
@@ -337,4 +373,80 @@ public class BoundOperationInvokeTestITCase extends AbstractTestITCase {
actions(ODataPubFormat.JSON_FULL_METADATA);
}
+ @Test
+ public void edmEnabledActions() throws EdmPrimitiveTypeException {
+ // IncreaseRevenue
+ final ODataPrimitiveValue increaseValue = edmClient.getObjectFactory().newPrimitiveValueBuilder().buildInt64(12L);
+ final ODataInvokeRequest<ODataProperty> increaseRevenueReq =
+ edmClient.getInvokeRequestFactory().getBoundActionInvokeRequest(
+ edmClient.newURIBuilder().appendSingletonSegment("Company").build(),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.IncreaseRevenue"),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.Company"),
+ false,
+ Collections.<String, ODataValue>singletonMap("IncreaseValue", increaseValue));
+ final ODataProperty increaseRevenueRes = increaseRevenueReq.execute().getBody();
+ assertNotNull(increaseRevenueRes);
+ assertTrue(increaseRevenueRes.hasPrimitiveValue());
+
+ // AddAccessRight
+ final ODataEnumValue accessRight = edmClient.getObjectFactory().
+ newEnumValue("Microsoft.Test.OData.Services.ODataWCFService.AccessLevel", "Execute");
+ final ODataInvokeRequest<ODataProperty> getProductDetailsReq =
+ edmClient.getInvokeRequestFactory().getBoundActionInvokeRequest(
+ edmClient.newURIBuilder().appendEntitySetSegment("Products").appendKeySegment(5).build(),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.AddAccessRight"),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.Product"),
+ false,
+ Collections.<String, ODataValue>singletonMap("accessRight", accessRight));
+ final ODataProperty getProductDetailsRes = getProductDetailsReq.execute().getBody();
+ assertNotNull(getProductDetailsRes);
+ assertTrue(getProductDetailsRes.hasEnumValue());
+
+ // ResetAddress
+ final ODataCollectionValue<org.apache.olingo.commons.api.domain.v4.ODataValue> addresses =
+ edmClient.getObjectFactory().
+ newCollectionValue("Collection(Microsoft.Test.OData.Services.ODataWCFService.Address)");
+ final ODataComplexValue<ODataProperty> address = edmClient.getObjectFactory().
+ newLinkedComplexValue("Microsoft.Test.OData.Services.ODataWCFService.Address");
+ address.add(edmClient.getObjectFactory().newPrimitiveProperty("Street",
+ edmClient.getObjectFactory().newPrimitiveValueBuilder().buildString("Piazza La Bomba E Scappa")));
+ address.add(edmClient.getObjectFactory().newPrimitiveProperty("City",
+ edmClient.getObjectFactory().newPrimitiveValueBuilder().buildString("Tollo")));
+ address.add(edmClient.getObjectFactory().newPrimitiveProperty("PostalCode",
+ edmClient.getObjectFactory().newPrimitiveValueBuilder().buildString("66010")));
+ addresses.add(address);
+ final ODataPrimitiveValue index = edmClient.getObjectFactory().newPrimitiveValueBuilder().buildInt32(0);
+ final Map<String, ODataValue> params = new LinkedHashMap<String, ODataValue>(2);
+ params.put("addresses", addresses);
+ params.put("index", index);
+ final Map<String, Object> keys = new HashMap<String, Object>();
+ keys.put("PersonID", 2);
+ final ODataInvokeRequest<ODataEntity> resetAddressReq =
+ edmClient.getInvokeRequestFactory().getBoundActionInvokeRequest(
+ edmClient.newURIBuilder().appendEntitySetSegment("Customers").appendKeySegment(keys).build(),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.ResetAddress"),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.Person"),
+ false,
+ params);
+ final ODataEntity resetAddressRes = resetAddressReq.execute().getBody();
+ assertNotNull(resetAddressRes);
+ assertEquals(2, resetAddressRes.getProperty("PersonID").getPrimitiveValue().toCastValue(Integer.class), 0);
+
+ // RefreshDefaultPI
+ final ODataPrimitiveValue newDate = edmClient.getObjectFactory().newPrimitiveValueBuilder().
+ setType(EdmPrimitiveTypeKind.DateTimeOffset).setText("2014-04-09T00:00:00Z").build();
+ final ODataInvokeRequest<ODataEntity> getDefaultPIReq =
+ edmClient.getInvokeRequestFactory().getBoundActionInvokeRequest(
+ edmClient.newURIBuilder().appendEntitySetSegment("Accounts").appendKeySegment(102).build(),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.RefreshDefaultPI"),
+ new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.Account"),
+ false,
+ Collections.<String, ODataValue>singletonMap("newDate", newDate));
+ final ODataEntity getDefaultPIRes = getDefaultPIReq.execute().getBody();
+ assertNotNull(getDefaultPIRes);
+ assertEquals("Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument",
+ getDefaultPIRes.getTypeName().toString());
+ assertEquals(102901,
+ getDefaultPIRes.getProperty("PaymentInstrumentID").getPrimitiveValue().toCastValue(Integer.class), 0);
+ }
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/DeltaTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/DeltaTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/DeltaTestITCase.java
index 700ed98..77c55a0 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/DeltaTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/DeltaTestITCase.java
@@ -34,7 +34,7 @@ public class DeltaTestITCase extends AbstractTestITCase {
private void parse(final ODataPubFormat format) {
final ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().getEntitySetRequest(
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").build());
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").build());
req.setPrefer(client.newPreferences().trackChanges());
final ODataEntitySet customers = req.execute().getBody();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/DerivedTypeTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/DerivedTypeTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/DerivedTypeTestITCase.java
index 9063c9b..bb1bcff 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/DerivedTypeTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/DerivedTypeTestITCase.java
@@ -40,7 +40,7 @@ public class DerivedTypeTestITCase extends AbstractTestITCase {
private void read(final ODataPubFormat format) {
// 1. entity set
- URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").
appendDerivedEntityTypeSegment("Microsoft.Test.OData.Services.ODataWCFService.Customer");
ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().
@@ -52,7 +52,7 @@ public class DerivedTypeTestITCase extends AbstractTestITCase {
}
// 2. contained entity set
- uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Accounts").appendKeySegment(101).
appendNavigationSegment("MyPaymentInstruments").
appendDerivedEntityTypeSegment("Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI");
@@ -112,7 +112,7 @@ public class DerivedTypeTestITCase extends AbstractTestITCase {
final ODataEntityCreateRequest<ODataEntity> createReq = client.getCUDRequestFactory().
getEntityCreateRequest(
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People").build(),
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People").build(),
customer);
createReq.setFormat(format);
@@ -120,7 +120,7 @@ public class DerivedTypeTestITCase extends AbstractTestITCase {
assertEquals(201, createRes.getStatusCode());
final ODataEntityRequest<ODataEntity> fetchReq = client.getRetrieveRequestFactory().
- getEntityRequest(client.getURIBuilder(testStaticServiceRootURL).
+ getEntityRequest(client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(976).build());
fetchReq.setFormat(format);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/EntityCreateTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/EntityCreateTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/EntityCreateTestITCase.java
index 4c7f4b7..8203513 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/EntityCreateTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/EntityCreateTestITCase.java
@@ -50,7 +50,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
}
private void onContained(final ODataPubFormat format) {
- final URI uri = getClient().getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Accounts").
+ final URI uri = getClient().newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Accounts").
appendKeySegment(101).appendNavigationSegment("MyPaymentInstruments").build();
// 1. read contained collection before any operation
@@ -87,7 +87,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
// 5. remove the contained entity created above
final ODataDeleteResponse deleteRes = getClient().getCUDRequestFactory().
- getDeleteRequest(getClient().getURIBuilder(uri.toASCIIString()).appendKeySegment(id).build()).execute();
+ getDeleteRequest(getClient().newURIBuilder(uri.toASCIIString()).appendKeySegment(id).build()).execute();
assertEquals(204, deleteRes.getStatusCode());
// 6. verify that the contained collection effectively reduced
@@ -157,7 +157,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
product.addLink(inlineDetails);
final ODataEntityCreateRequest<ODataEntity> req = getClient().getCUDRequestFactory().getEntityCreateRequest(
- getClient().getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Products").build(), product);
+ getClient().newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Products").build(), product);
req.setFormat(format);
final ODataEntityCreateResponse<ODataEntity> res = req.execute();
assertEquals(201, res.getStatusCode());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/EntityRetrieveTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/EntityRetrieveTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/EntityRetrieveTestITCase.java
index dafe38c..fc3767a 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/EntityRetrieveTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/EntityRetrieveTestITCase.java
@@ -54,7 +54,7 @@ import org.junit.Test;
public class EntityRetrieveTestITCase extends AbstractTestITCase {
private void withInlineEntity(final ODataClient client, final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(1).expand("Company");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().
@@ -124,7 +124,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
}
private void withInlineEntitySet(final ODataClient client, final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(1).expand("Orders");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().
@@ -167,7 +167,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
}
private void rawRequest(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5);
final ODataRawRequest req = client.getRetrieveRequestFactory().getRawRequest(uriBuilder.build());
@@ -199,7 +199,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
multiKey.put("ProductID", "6");
multiKey.put("ProductDetailID", 1);
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("ProductDetails").appendKeySegment(multiKey);
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -224,7 +224,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
private void checkForETag(final ODataClient client, final ODataPubFormat format) {
final URIBuilder uriBuilder =
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders").appendKeySegment(8);
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders").appendKeySegment(8);
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
req.setFormat(format);
@@ -261,7 +261,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
@Test(expected = IllegalArgumentException.class)
public void issue99() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
req.setFormat(ODataPubFormat.JSON);
@@ -272,7 +272,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
}
private void reference(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Orders").appendKeySegment(8).appendNavigationSegment("CustomerForOrder").
appendRefSegment();
@@ -287,7 +287,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
assertTrue(entity.getReference().endsWith("/StaticService/V40/Static.svc/Customers(PersonID=1)"));
final URI referenceURI =
- client.getURIBuilder(testStaticServiceRootURL).appendEntityIdSegment(entity.getReference()).build();
+ client.newURIBuilder(testStaticServiceRootURL).appendEntityIdSegment(entity.getReference()).build();
req = client.getRetrieveRequestFactory().getEntityRequest(referenceURI);
req.setFormat(format);
@@ -308,7 +308,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
}
private void contained(final ODataClient client, final ODataPubFormat format) throws EdmPrimitiveTypeException {
- final URI uri = client.getURIBuilder(testStaticServiceRootURL).
+ final URI uri = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Accounts").appendKeySegment(101).
appendNavigationSegment("MyPaymentInstruments").appendKeySegment(101902).build();
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uri);
@@ -338,7 +338,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
}
private void entitySetNavigationLink(final ODataClient client, final ODataPubFormat format) {
- final URI uri = client.getURIBuilder(testStaticServiceRootURL).
+ final URI uri = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Accounts").appendKeySegment(101).build();
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uri);
req.setFormat(format);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/EntitySetTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/EntitySetTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/EntitySetTestITCase.java
index cca2b3b..e2a8bde 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/EntitySetTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/EntitySetTestITCase.java
@@ -45,7 +45,7 @@ import org.junit.Test;
public class EntitySetTestITCase extends AbstractTestITCase {
private void rawRequest(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People");
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People");
final ODataRawRequest req = client.getRetrieveRequestFactory().getRawRequest(uriBuilder.build());
req.setFormat(format.toString(client.getServiceVersion()));
@@ -69,7 +69,7 @@ public class EntitySetTestITCase extends AbstractTestITCase {
}
private void readWithInlineCount(final ODataClient client, final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").count(true);
final ODataRawRequest req = client.getRetrieveRequestFactory().getRawRequest(uriBuilder.build());
@@ -101,7 +101,7 @@ public class EntitySetTestITCase extends AbstractTestITCase {
}
private void readODataEntitySetIterator(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People");
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People");
final ODataEntitySetIteratorRequest<ODataEntitySet, ODataEntity> req =
client.getRetrieveRequestFactory().getEntitySetIteratorRequest(uriBuilder.build());
@@ -143,7 +143,7 @@ public class EntitySetTestITCase extends AbstractTestITCase {
}
private void readWithNext(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People");
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People");
final ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().
getEntitySetRequest(uriBuilder.build());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/EntityUpdateTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/EntityUpdateTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/EntityUpdateTestITCase.java
index 669c10c..a51dd62 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/EntityUpdateTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/EntityUpdateTestITCase.java
@@ -50,7 +50,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
getClient().getObjectFactory().newPrimitiveValueBuilder().
setType(EdmPrimitiveTypeKind.Duration).setText("PT0.0000002S").build()));
- final URI upsertURI = getClient().getURIBuilder(testStaticServiceRootURL).
+ final URI upsertURI = getClient().newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Orders").appendKeySegment(9).build();
final ODataEntityUpdateRequest<ODataEntity> req = getClient().getCUDRequestFactory().
getEntityUpdateRequest(upsertURI, updateType, order);
@@ -89,7 +89,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
changes.getProperties().add(getClient().getObjectFactory().newPrimitiveProperty("FriendlyName",
getClient().getObjectFactory().newPrimitiveValueBuilder().buildString(newName)));
- final URI uri = getClient().getURIBuilder(testStaticServiceRootURL).
+ final URI uri = getClient().newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Accounts").appendKeySegment(101).
appendNavigationSegment("MyPaymentInstruments").appendKeySegment(101901).build();
final ODataEntityUpdateRequest<ODataEntity> req = getClient().getCUDRequestFactory().
@@ -118,11 +118,11 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
final ODataEntity changes = getClient().getObjectFactory().newEntity(
new FullQualifiedName("Microsoft.Test.OData.Services.ODataWCFService.Customer"));
final ODataLink parent = getClient().getObjectFactory().newEntityNavigationLink("Parent",
- getClient().getURIBuilder(testStaticServiceRootURL).
+ getClient().newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(1).build());
changes.getNavigationLinks().add(parent);
- final URI uri = getClient().getURIBuilder(testStaticServiceRootURL).
+ final URI uri = getClient().newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).build();
final ODataEntityUpdateRequest<ODataEntity> req = getClient().getCUDRequestFactory().
getEntityUpdateRequest(uri, UpdateType.PATCH, changes);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/ErrorResponseTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/ErrorResponseTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/ErrorResponseTestITCase.java
index a9530cc..902e731 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/ErrorResponseTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/ErrorResponseTestITCase.java
@@ -35,7 +35,7 @@ public class ErrorResponseTestITCase extends AbstractTestITCase {
@Test
public void jsonError() {
- final URI readURI = getClient().getURIBuilder(testStaticServiceRootURL).
+ final URI readURI = getClient().newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(32).
build();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/FilterFactoryTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/FilterFactoryTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/FilterFactoryTestITCase.java
index a85891e..2bb3851 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/FilterFactoryTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/FilterFactoryTestITCase.java
@@ -47,7 +47,7 @@ public class FilterFactoryTestITCase extends AbstractTestITCase {
getFilterArgFactory().property("Orders/OrderID"), getFilterArgFactory().property("Customers/Order"));
final URIBuilder uriBuilder =
- client.getURIBuilder(testStaticServiceRootURL).appendCrossjoinSegment("Customers", "Orders").filter(filter);
+ client.newURIBuilder(testStaticServiceRootURL).appendCrossjoinSegment("Customers", "Orders").filter(filter);
final ODataEntitySetRequest<ODataEntitySet> req =
client.getRetrieveRequestFactory().getEntitySetRequest(uriBuilder.build());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/KeyAsSegmentTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/KeyAsSegmentTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/KeyAsSegmentTestITCase.java
index 56a6fd2..c6eca38 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/KeyAsSegmentTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/KeyAsSegmentTestITCase.java
@@ -50,7 +50,7 @@ public class KeyAsSegmentTestITCase extends AbstractTestITCase {
}
private void read(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testKeyAsSegmentServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testKeyAsSegmentServiceRootURL).
appendEntitySetSegment("Accounts").appendKeySegment(101);
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -94,7 +94,7 @@ public class KeyAsSegmentTestITCase extends AbstractTestITCase {
getClient().getObjectFactory().newPrimitiveValueBuilder().buildString("middle"));
changes.getProperties().add(middleName);
- final URI uri = getClient().getURIBuilder(testKeyAsSegmentServiceRootURL).
+ final URI uri = getClient().newURIBuilder(testKeyAsSegmentServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).build();
final ODataEntityUpdateRequest<ODataEntity> req = getClient().getCUDRequestFactory().
getEntityUpdateRequest(uri, UpdateType.PATCH, changes);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/MediaEntityTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/MediaEntityTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/MediaEntityTestITCase.java
index ecd8c52..5d0806b 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/MediaEntityTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/MediaEntityTestITCase.java
@@ -57,7 +57,7 @@ import org.junit.Test;
public class MediaEntityTestITCase extends AbstractTestITCase {
private void read(final ODataClient client, final ODataPubFormat format) throws IOException {
- final URIBuilder builder = client.getURIBuilder(testDemoServiceRootURL).
+ final URIBuilder builder = client.newURIBuilder(testDemoServiceRootURL).
appendEntitySetSegment("Advertisements").
appendKeySegment(UUID.fromString("f89dee73-af9f-4cd4-b330-db93c25ff3c7"));
final ODataEntityRequest<ODataEntity> entityReq =
@@ -99,7 +99,7 @@ public class MediaEntityTestITCase extends AbstractTestITCase {
final String random = RandomStringUtils.random(110);
final InputStream input = IOUtils.toInputStream(random);
- final URI uri = client.getURIBuilder(testDemoServiceRootURL).appendEntitySetSegment("Advertisements").build();
+ final URI uri = client.newURIBuilder(testDemoServiceRootURL).appendEntitySetSegment("Advertisements").build();
final ODataMediaEntityCreateRequest<ODataEntity> createReq =
client.getCUDRequestFactory().getMediaEntityCreateRequest(uri, input);
final MediaEntityCreateStreamManager<ODataEntity> streamManager = createReq.payloadManager();
@@ -125,7 +125,7 @@ public class MediaEntityTestITCase extends AbstractTestITCase {
assertEquals(204, updateRes.getStatusCode());
final ODataMediaRequest retrieveReq = client.getRetrieveRequestFactory().
- getMediaEntityRequest(client.getURIBuilder(createdLocation.toASCIIString()).build());
+ getMediaEntityRequest(client.newURIBuilder(createdLocation.toASCIIString()).build());
final ODataRetrieveResponse<InputStream> retrieveRes = retrieveReq.execute();
assertEquals(200, retrieveRes.getStatusCode());
@@ -145,7 +145,7 @@ public class MediaEntityTestITCase extends AbstractTestITCase {
}
private void update(final ODataPubFormat format) throws IOException, EdmPrimitiveTypeException {
- final URI uri = client.getURIBuilder(testDemoServiceRootURL).
+ final URI uri = client.newURIBuilder(testDemoServiceRootURL).
appendEntitySetSegment("Advertisements").
appendKeySegment(UUID.fromString("f89dee73-af9f-4cd4-b330-db93c25ff3c7")).build();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/OpenTypeTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/OpenTypeTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/OpenTypeTestITCase.java
index 08e671d..495b9d0 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/OpenTypeTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/OpenTypeTestITCase.java
@@ -53,7 +53,7 @@ public class OpenTypeTestITCase extends AbstractTestITCase {
}
private ODataEntity readRow(final ODataPubFormat format, final String uuid) {
- final URIBuilder builder = getClient().getURIBuilder(testOpenTypeServiceRootURL).
+ final URIBuilder builder = getClient().newURIBuilder(testOpenTypeServiceRootURL).
appendEntitySetSegment("Row").appendKeySegment(UUID.fromString(uuid));
return read(format, builder.build());
}
@@ -146,13 +146,13 @@ public class OpenTypeTestITCase extends AbstractTestITCase {
getClient().getObjectFactory().newComplexProperty("aContact", contactDetails));
final ODataEntityCreateRequest<ODataEntity> createReq = getClient().getCUDRequestFactory().
- getEntityCreateRequest(getClient().getURIBuilder(testOpenTypeServiceRootURL).
+ getEntityCreateRequest(getClient().newURIBuilder(testOpenTypeServiceRootURL).
appendEntitySetSegment("RowIndex").build(), rowIndex);
createReq.setFormat(format);
final ODataEntityCreateResponse<ODataEntity> createRes = createReq.execute();
assertEquals(201, createRes.getStatusCode());
- final URIBuilder builder = getClient().getURIBuilder(testOpenTypeServiceRootURL).
+ final URIBuilder builder = getClient().newURIBuilder(testOpenTypeServiceRootURL).
appendEntitySetSegment("RowIndex").appendKeySegment(id);
rowIndex = read(format, builder.build());
assertNotNull(rowIndex);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/OperationImportInvokeTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/OperationImportInvokeTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/OperationImportInvokeTestITCase.java
index 9c6defb..17b9921 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/OperationImportInvokeTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/OperationImportInvokeTestITCase.java
@@ -35,10 +35,6 @@ import org.apache.olingo.commons.api.domain.v4.ODataEntity;
import org.apache.olingo.commons.api.domain.v4.ODataEntitySet;
import org.apache.olingo.commons.api.domain.v4.ODataEnumValue;
import org.apache.olingo.commons.api.domain.v4.ODataProperty;
-import org.apache.olingo.commons.api.edm.Edm;
-import org.apache.olingo.commons.api.edm.EdmActionImport;
-import org.apache.olingo.commons.api.edm.EdmEntityContainer;
-import org.apache.olingo.commons.api.edm.EdmFunctionImport;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException;
import org.apache.olingo.commons.api.format.ODataPubFormat;
@@ -46,26 +42,11 @@ import org.junit.Test;
public class OperationImportInvokeTestITCase extends AbstractTestITCase {
- private Edm getEdm() {
- final Edm edm = getClient().getRetrieveRequestFactory().
- getMetadataRequest(testStaticServiceRootURL).execute().getBody();
- assertNotNull(edm);
-
- return edm;
- }
-
private void functionImports(final ODataPubFormat format) throws EdmPrimitiveTypeException {
- final Edm edm = getEdm();
- final EdmEntityContainer container = edm.getSchemas().get(0).getEntityContainer();
- assertNotNull(container);
-
// GetDefaultColor
- EdmFunctionImport funcImp = container.getFunctionImport("GetDefaultColor");
-
final ODataInvokeRequest<ODataProperty> defaultColorReq = getClient().getInvokeRequestFactory().
- getInvokeRequest(getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(funcImp.getName()).build(),
- funcImp.getUnboundFunctions().get(0));
+ getFunctionInvokeRequest(getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("GetDefaultColor").build(), ODataProperty.class);
defaultColorReq.setFormat(format);
final ODataProperty defaultColor = defaultColorReq.execute().getBody();
assertNotNull(defaultColor);
@@ -74,15 +55,11 @@ public class OperationImportInvokeTestITCase extends AbstractTestITCase {
assertEquals("Microsoft.Test.OData.Services.ODataWCFService.Color", defaultColor.getEnumValue().getTypeName());
// GetPerson2
- funcImp = container.getFunctionImport("GetPerson2");
-
- final ODataPrimitiveValue city =
- getClient().getObjectFactory().newPrimitiveValueBuilder().buildString("London");
+ final ODataPrimitiveValue city = getClient().getObjectFactory().newPrimitiveValueBuilder().buildString("London");
final ODataInvokeRequest<ODataEntity> person2Req = getClient().getInvokeRequestFactory().
- getInvokeRequest(getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(funcImp.getName()).build(),
- funcImp.getUnboundFunctions().get(0),
+ getFunctionInvokeRequest(getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("GetPerson2").build(), ODataEntity.class,
Collections.<String, ODataValue>singletonMap("city", city));
person2Req.setFormat(format);
final ODataEntity person2 = person2Req.execute().getBody();
@@ -91,8 +68,6 @@ public class OperationImportInvokeTestITCase extends AbstractTestITCase {
assertEquals(1, person2.getProperty("PersonID").getPrimitiveValue().toCastValue(Integer.class), 0);
// GetPerson
- funcImp = container.getFunctionImport("GetPerson");
-
final ODataComplexValue<ODataProperty> address = getClient().getObjectFactory().
newLinkedComplexValue("Microsoft.Test.OData.Services.ODataWCFService.Address");
address.add(client.getObjectFactory().newPrimitiveProperty("Street",
@@ -103,9 +78,8 @@ public class OperationImportInvokeTestITCase extends AbstractTestITCase {
client.getObjectFactory().newPrimitiveValueBuilder().buildString("98052")));
final ODataInvokeRequest<ODataEntity> personReq = getClient().getInvokeRequestFactory().
- getInvokeRequest(getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(funcImp.getName()).build(),
- funcImp.getUnboundFunctions().get(0),
+ getFunctionInvokeRequest(getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("GetPerson").build(), ODataEntity.class,
Collections.<String, ODataValue>singletonMap("address", address));
personReq.setFormat(format);
final ODataEntity person = personReq.execute().getBody();
@@ -113,27 +87,21 @@ public class OperationImportInvokeTestITCase extends AbstractTestITCase {
assertEquals(person2, person);
// GetAllProducts
- funcImp = container.getFunctionImport("GetAllProducts");
-
- final ODataInvokeRequest<ODataEntitySet> productsReq = getClient().getInvokeRequestFactory().
- getInvokeRequest(getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(funcImp.getName()).build(),
- funcImp.getUnboundFunctions().get(0));
+ final ODataInvokeRequest<ODataEntitySet> productsReq = getClient().getInvokeRequestFactory()
+ .getFunctionInvokeRequest(getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("GetAllProducts").build(), ODataEntitySet.class);
productsReq.setFormat(format);
final ODataEntitySet products = productsReq.execute().getBody();
assertNotNull(products);
assertEquals(5, products.getCount());
// GetProductsByAccessLevel
- funcImp = container.getFunctionImport("GetProductsByAccessLevel");
-
final ODataEnumValue accessLevel = getClient().getObjectFactory().
newEnumValue("Microsoft.Test.OData.Services.ODataWCFService.AccessLevel", "None");
final ODataInvokeRequest<ODataProperty> prodByALReq = getClient().getInvokeRequestFactory().
- getInvokeRequest(getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(funcImp.getName()).build(),
- funcImp.getUnboundFunctions().get(0),
+ getFunctionInvokeRequest(getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("GetProductsByAccessLevel").build(), ODataProperty.class,
Collections.<String, ODataValue>singletonMap("accessLevel", accessLevel));
prodByALReq.setFormat(format);
final ODataProperty prodByAL = prodByALReq.execute().getBody();
@@ -215,26 +183,17 @@ public class OperationImportInvokeTestITCase extends AbstractTestITCase {
}
private void actionImports(final ODataPubFormat format) {
- final Edm edm = getEdm();
- final EdmEntityContainer container = edm.getSchemas().get(0).getEntityContainer();
- assertNotNull(container);
-
// Discount
- EdmActionImport actImp = container.getActionImport("Discount");
-
final ODataPrimitiveValue percentage = getClient().getObjectFactory().newPrimitiveValueBuilder().buildInt32(22);
final ODataInvokeRequest<ODataNoContent> discountReq = getClient().getInvokeRequestFactory().
- getInvokeRequest(getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(actImp.getName()).build(),
- actImp.getUnboundAction(),
+ getActionInvokeRequest(getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("Discount").build(), ODataNoContent.class,
Collections.<String, ODataValue>singletonMap("percentage", percentage));
discountReq.setFormat(format);
final ODataNoContent discount = discountReq.execute().getBody();
assertNotNull(discount);
// ResetBossAddress
- actImp = container.getActionImport("ResetBossAddress");
-
final ODataComplexValue<ODataProperty> address = getClient().getObjectFactory().
newLinkedComplexValue("Microsoft.Test.OData.Services.ODataWCFService.Address");
address.add(client.getObjectFactory().newPrimitiveProperty("Street",
@@ -245,9 +204,8 @@ public class OperationImportInvokeTestITCase extends AbstractTestITCase {
client.getObjectFactory().newPrimitiveValueBuilder().buildString("66010")));
final ODataInvokeRequest<ODataProperty> resetBossAddressReq = getClient().getInvokeRequestFactory().
- getInvokeRequest(getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(actImp.getName()).build(),
- actImp.getUnboundAction(),
+ getActionInvokeRequest(getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("ResetBossAddress").build(), ODataProperty.class,
Collections.<String, ODataValue>singletonMap("address", address));
resetBossAddressReq.setFormat(format);
final ODataProperty resetBossAddress = resetBossAddressReq.execute().getBody();
@@ -294,21 +252,14 @@ public class OperationImportInvokeTestITCase extends AbstractTestITCase {
}
private void bossEmails(final ODataPubFormat format) {
- final Edm edm = getEdm();
- final EdmEntityContainer container = edm.getSchemas().get(0).getEntityContainer();
- assertNotNull(container);
-
// ResetBossEmail
- final EdmActionImport actImp = container.getActionImport("ResetBossEmail");
-
final ODataCollectionValue<org.apache.olingo.commons.api.domain.v4.ODataValue> emails =
getClient().getObjectFactory().newCollectionValue("Collection(Edm.String)");
emails.add(getClient().getObjectFactory().newPrimitiveValueBuilder().buildString("first@olingo.apache.org"));
emails.add(getClient().getObjectFactory().newPrimitiveValueBuilder().buildString("second@olingo.apache.org"));
ODataInvokeRequest<ODataProperty> bossEmailsReq = getClient().getInvokeRequestFactory().
- getInvokeRequest(getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(actImp.getName()).build(),
- actImp.getUnboundAction(),
+ getActionInvokeRequest(getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("ResetBossEmail").build(), ODataProperty.class,
Collections.<String, ODataValue>singletonMap("emails", emails));
bossEmailsReq.setFormat(format);
final ODataProperty bossEmails = bossEmailsReq.execute().getBody();
@@ -316,16 +267,12 @@ public class OperationImportInvokeTestITCase extends AbstractTestITCase {
assertTrue(bossEmails.hasCollectionValue());
assertEquals(2, bossEmails.getCollectionValue().size());
- final EdmFunctionImport funcImp = container.getFunctionImport("GetBossEmails");
-
final Map<String, ODataValue> params = new LinkedHashMap<String, ODataValue>(2);
params.put("start", getClient().getObjectFactory().newPrimitiveValueBuilder().buildInt32(0));
params.put("count", getClient().getObjectFactory().newPrimitiveValueBuilder().buildInt32(100));
- bossEmailsReq = getClient().getInvokeRequestFactory().
- getInvokeRequest(getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(funcImp.getName()).build(),
- funcImp.getUnboundFunctions().get(0),
- params);
+ bossEmailsReq = getClient().getInvokeRequestFactory().getFunctionInvokeRequest(
+ getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("GetBossEmails").build(), ODataProperty.class, params);
bossEmailsReq.setFormat(format);
final ODataProperty bossEmailsViaGET = bossEmailsReq.execute().getBody();
assertNotNull(bossEmailsViaGET);
@@ -344,5 +291,4 @@ public class OperationImportInvokeTestITCase extends AbstractTestITCase {
public void jsonBossEmails() throws EdmPrimitiveTypeException {
bossEmails(ODataPubFormat.JSON_FULL_METADATA);
}
-
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/PropertyTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/PropertyTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/PropertyTestITCase.java
index 4142e72..abd4cd0 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/PropertyTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/PropertyTestITCase.java
@@ -43,7 +43,7 @@ import org.junit.Test;
public class PropertyTestITCase extends AbstractTestITCase {
private void _enum(final ODataClient client, final ODataFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Products").appendKeySegment(5).appendPropertySegment("CoverColors");
final ODataPropertyRequest<ODataProperty> req = client.getRetrieveRequestFactory().
getPropertyRequest(uriBuilder.build());
@@ -72,7 +72,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
}
private void geospatial(final ODataClient client, final ODataFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).appendPropertySegment("Home");
final ODataPropertyRequest<ODataProperty> req = client.getRetrieveRequestFactory().
getPropertyRequest(uriBuilder.build());
@@ -100,7 +100,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
}
private void complex(final ODataClient client, final ODataFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(2).appendPropertySegment("HomeAddress");
final ODataPropertyRequest<ODataProperty> req = client.getRetrieveRequestFactory().
getPropertyRequest(uriBuilder.build());
@@ -129,7 +129,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
}
private void updateComplexProperty(final ODataFormat format, final UpdateType type) throws IOException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(1).appendPropertySegment("HomeAddress");
ODataPropertyRequest<ODataProperty> retrieveReq =
@@ -176,10 +176,10 @@ public class PropertyTestITCase extends AbstractTestITCase {
public void createAndDelete() {
// 1. create
final ODataEntity category = client.getObjectFactory().newEntity(null);
- category.setReference(client.getURIBuilder(testStaticServiceRootURL).
+ category.setReference(client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Categories").appendKeySegment(1).build().toASCIIString());
- final URIBuilder createBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder createBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Products").appendKeySegment(0).appendNavigationSegment("Categories").
appendRefSegment();
final ODataEntityCreateRequest<ODataEntity> createReq = client.getCUDRequestFactory().
@@ -189,7 +189,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
assertEquals(204, createRes.getStatusCode());
// 2. delete
- final URIBuilder deleteBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder deleteBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Products").appendKeySegment(0).appendNavigationSegment("Categories").
appendKeySegment(1).appendRefSegment();
final ODataDeleteRequest deleteReq = client.getCUDRequestFactory().
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/PropertyValueTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/PropertyValueTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/PropertyValueTestITCase.java
index 01834a4..1d99bb3 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/PropertyValueTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/PropertyValueTestITCase.java
@@ -41,7 +41,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveIntPropertyValueTest() throws EdmPrimitiveTypeException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).appendPropertySegment("PersonID");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -50,7 +50,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveBooleanPropertyValueTest() throws EdmPrimitiveTypeException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).appendPropertySegment("IsRegistered");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -59,7 +59,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveStringPropertyValueTest() throws EdmPrimitiveTypeException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).appendPropertySegment("FirstName");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -68,7 +68,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveDatePropertyValueTest() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Orders").appendKeySegment(8).appendPropertySegment("OrderDate");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -78,7 +78,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveDecimalPropertyValueTest() throws EdmPrimitiveTypeException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).appendPropertySegment("Height");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -88,7 +88,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveBinaryPropertyValueTest() throws IOException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).appendPropertySegment("PDC");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -99,7 +99,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test(expected = ODataClientErrorException.class)
public void retrieveBinaryPropertyValueTestWithAtom() throws IOException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).appendPropertySegment("PDC");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setAccept(ODataPubFormat.ATOM.toString(ODataServiceVersion.V40));
@@ -108,7 +108,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test(expected = ODataClientErrorException.class)
public void retrieveBinaryPropertyValueTestWithXML() throws IOException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).appendPropertySegment("PDC");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setAccept(ODataFormat.XML.toString(client.getServiceVersion()));
@@ -117,7 +117,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveCollectionPropertyValueTest() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).appendPropertySegment("Numbers");
final ODataPropertyRequest<ODataProperty> req = client.getRetrieveRequestFactory().
getPropertyRequest(uriBuilder.build());
@@ -130,7 +130,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveNullPropertyValueTest() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").appendKeySegment(5).appendPropertySegment("HomeAddress");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/QueryOptionsTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/QueryOptionsTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/QueryOptionsTestITCase.java
index 20684b5..207cbd0 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/QueryOptionsTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/QueryOptionsTestITCase.java
@@ -47,7 +47,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
* Test <tt>$expand</tt>.
*/
public void expand() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(1).expand("Orders");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -58,7 +58,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
@Test
public void expandWithFilter() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(1).
expandWithOptions("Orders", Collections.<QueryOption, Object>singletonMap(
QueryOption.FILTER, getClient().getFilterFactory().gt("OrderID", 7).build()));
@@ -76,7 +76,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
*/
@Test
public void filterOrderby() throws EdmPrimitiveTypeException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").filter("(PersonID lt 3)");
// 1. check that filtered entity set looks as expected
@@ -120,7 +120,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
*/
@Test
public void format() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(1).format("json");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -136,7 +136,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
* Test <tt>$skip</tt>.
*/
public void skip() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People");
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People");
// 1. check that filtered entity set looks as expected
final ODataEntitySetRequest<ODataEntitySet> req =
@@ -150,7 +150,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
* Test <tt>$top</tt>.
*/
public void top() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People");
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("People");
// 1. check that filtered entity set looks as expected
final ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().
@@ -165,7 +165,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
*/
@Test
public void skiptoken() throws EdmPrimitiveTypeException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL);
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL);
uriBuilder.appendEntitySetSegment("People").skipToken("5");
final ODataEntitySetRequest<ODataEntitySet> req =
@@ -186,7 +186,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
@Test
public void count() {
final URIBuilder uriBuilder =
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").count(true);
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").count(true);
final ODataEntitySetRequest<ODataEntitySet> req =
client.getRetrieveRequestFactory().getEntitySetRequest(uriBuilder.build());
@@ -201,7 +201,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
*/
@Test
public void select() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(1).select("PersonID,Orders").expand("Orders");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -214,7 +214,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
@Test
public void issue253() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("relatedEntitySelect").appendEntitySetSegment("Customers").appendKeySegment(1).
expandWithSelect("Orders", "OrderID", "OrderDetails");
@@ -226,7 +226,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
@Test
public void search() {
- final URIBuilder builder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder builder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("People").search(client.getSearchFactory().
or(client.getSearchFactory().literal("Bob"), client.getSearchFactory().literal("Jill")));
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/SingletonTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/SingletonTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/SingletonTestITCase.java
index 953640b..46429c6 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/SingletonTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/SingletonTestITCase.java
@@ -41,7 +41,7 @@ import org.junit.Test;
public class SingletonTestITCase extends AbstractTestITCase {
private void read(final ODataClient client, final ODataPubFormat format) throws EdmPrimitiveTypeException {
- final URIBuilder builder = client.getURIBuilder(testStaticServiceRootURL).appendSingletonSegment("Company");
+ final URIBuilder builder = client.newURIBuilder(testStaticServiceRootURL).appendSingletonSegment("Company");
final ODataEntityRequest<Singleton> singleton =
client.getRetrieveRequestFactory().getSingletonRequest(builder.build());
singleton.setFormat(format);
@@ -73,7 +73,7 @@ public class SingletonTestITCase extends AbstractTestITCase {
private void readWithAnnotations(final ODataClient client, final ODataPubFormat format)
throws EdmPrimitiveTypeException {
- final URIBuilder builder = client.getURIBuilder(testStaticServiceRootURL).appendSingletonSegment("Boss");
+ final URIBuilder builder = client.newURIBuilder(testStaticServiceRootURL).appendSingletonSegment("Boss");
final ODataEntityRequest<Singleton> singleton =
client.getRetrieveRequestFactory().getSingletonRequest(builder.build());
singleton.setFormat(format);
@@ -107,7 +107,7 @@ public class SingletonTestITCase extends AbstractTestITCase {
changes.getProperties().add(getClient().getObjectFactory().newPrimitiveProperty("Revenue",
getClient().getObjectFactory().newPrimitiveValueBuilder().buildInt64(132520L)));
- final URI uri = client.getURIBuilder(testStaticServiceRootURL).appendSingletonSegment("Company").build();
+ final URI uri = client.newURIBuilder(testStaticServiceRootURL).appendSingletonSegment("Company").build();
final ODataEntityUpdateRequest<Singleton> req = getClient().getCUDRequestFactory().
getSingletonUpdateRequest(uri, UpdateType.PATCH, changes);
req.setFormat(format);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonEdmEnabledODataClient.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonEdmEnabledODataClient.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonEdmEnabledODataClient.java
index ab5569e..196c6e9 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonEdmEnabledODataClient.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/CommonEdmEnabledODataClient.java
@@ -50,7 +50,7 @@ public interface CommonEdmEnabledODataClient<UT extends CommonUpdateType> extend
*/
Edm getCachedEdm();
- CommonURIBuilder<?> getURIBuilder();
+ CommonURIBuilder<?> newURIBuilder();
@Override
EdmEnabledInvokeRequestFactory getInvokeRequestFactory();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/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
index c69f541..1a83849 100644
--- 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
@@ -44,13 +44,13 @@ public interface CommonODataClient<UT extends CommonUpdateType> {
ODataServiceVersion getServiceVersion();
- ODataHeaders getVersionHeaders();
+ ODataHeaders newVersionHeaders();
CommonConfiguration getConfiguration();
ODataPreferences newPreferences();
- CommonURIBuilder<?> getURIBuilder(String serviceRoot);
+ CommonURIBuilder<?> newURIBuilder(String serviceRoot);
CommonFilterFactory getFilterFactory();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/header/ODataHeaders.java
----------------------------------------------------------------------
diff --git a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/header/ODataHeaders.java b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/header/ODataHeaders.java
index 51de80d..bc00459 100644
--- a/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/header/ODataHeaders.java
+++ b/lib/client-api/src/main/java/org/apache/olingo/client/api/communication/header/ODataHeaders.java
@@ -56,4 +56,35 @@ public interface ODataHeaders {
* @return header names.
*/
Collection<String> getHeaderNames();
+
+ /**
+ * Add the specified (custom) header (header name is case-insensitive).
+ *
+ * @param name header key.
+ * @param value header value.
+ * @return the current updated header instance.
+ */
+ ODataHeaders setHeader(String name, String value);
+
+ /**
+ * Add the specified header.
+ *
+ * @param name header key.
+ * @param value header value.
+ * @return the current updated header instance.
+ */
+ ODataHeaders setHeader(HeaderName name, String value);
+
+ /**
+ * Removes the header identified by the given name.
+ * <br/>
+ * Please note that header name is case-insensitive.
+ *
+ * @param name name of the header to be retrieved.
+ * @return header name (if found).
+ */
+ String removeHeader(HeaderName name);
+
+ String removeHeader(String name);
+
}
[4/4] git commit: Invoke request factory re-factoring
Posted by il...@apache.org.
Invoke request factory re-factoring
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/35e89699
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/35e89699
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/35e89699
Branch: refs/heads/master
Commit: 35e89699ea25b8d878fc312a837f7bc61ee0a67a
Parents: 377ddb9
Author: Francesco Chicchiriccò <--global>
Authored: Wed May 21 13:40:50 2014 +0200
Committer: Francesco Chicchiriccò <--global>
Committed: Wed May 21 13:40:50 2014 +0200
----------------------------------------------------------------------
.../commons/AbstractInvocationHandler.java | 30 ++-
.../AbstractStructuredInvocationHandler.java | 4 +-
.../commons/EntitySetInvocationHandler.java | 11 +-
.../olingo/ext/proxy/commons/FilterImpl.java | 2 +-
.../commons/OperationInvocationHandler.java | 5 +-
.../olingo/ext/proxy/commons/SearchImpl.java | 2 +-
.../java/org/apache/olingo/fit/V4Services.java | 31 ++-
.../resources/V40/Accounts/102/entity.full.json | 34 +++
.../main/resources/V40/Accounts/102/entity.xml | 55 ++++
.../V40/Accounts/102/links/MyGiftCard.full.json | 15 ++
.../V40/Accounts/102/links/MyGiftCard.xml | 41 +++
.../MyPaymentInstruments(102901).full.json | 16 ++
.../102/links/MyPaymentInstruments(102901).xml | 40 +++
.../MyPaymentInstruments(102902).full.json | 16 ++
.../102/links/MyPaymentInstruments(102902).xml | 40 +++
.../102/links/MyPaymentInstruments.full.json | 62 +++++
.../Accounts/102/links/MyPaymentInstruments.xml | 95 +++++++
.../olingo/fit/v3/AbstractTestITCase.java | 4 +-
.../fit/v3/ActionOverloadingTestITCase.java | 155 ++++-------
.../apache/olingo/fit/v3/AsyncTestITCase.java | 8 +-
.../apache/olingo/fit/v3/BatchTestITCase.java | 26 +-
.../apache/olingo/fit/v3/CountTestITCase.java | 4 +-
.../olingo/fit/v3/EntityCreateTestITCase.java | 16 +-
.../olingo/fit/v3/EntityRetrieveTestITCase.java | 14 +-
.../olingo/fit/v3/EntitySetTestITCase.java | 8 +-
.../olingo/fit/v3/EntityUpdateTestITCase.java | 26 +-
.../apache/olingo/fit/v3/ErrorTestITCase.java | 20 +-
.../olingo/fit/v3/FilterFactoryTestITCase.java | 2 +-
.../apache/olingo/fit/v3/FilterTestITCase.java | 2 +-
.../apache/olingo/fit/v3/InvokeTestITCase.java | 120 ++-------
.../olingo/fit/v3/KeyAsSegmentTestITCase.java | 6 +-
.../apache/olingo/fit/v3/LinkTestITCase.java | 8 +-
.../olingo/fit/v3/MediaEntityTestITCase.java | 12 +-
.../olingo/fit/v3/OpenTypeTestITCase.java | 6 +-
.../olingo/fit/v3/PrimitiveKeysTestITCase.java | 2 +-
.../fit/v3/PropertyRetrieveTestITCase.java | 8 +-
.../olingo/fit/v3/PropertyTestITCase.java | 16 +-
.../olingo/fit/v3/PropertyValueTestITCase.java | 20 +-
.../olingo/fit/v3/QueryOptionsTestITCase.java | 12 +-
.../olingo/fit/v4/AbstractTestITCase.java | 4 +-
.../apache/olingo/fit/v4/AsyncTestITCase.java | 6 +-
.../apache/olingo/fit/v4/BatchTestITCase.java | 30 +--
.../fit/v4/BoundOperationInvokeTestITCase.java | 258 +++++++++++++------
.../apache/olingo/fit/v4/DeltaTestITCase.java | 2 +-
.../olingo/fit/v4/DerivedTypeTestITCase.java | 8 +-
.../olingo/fit/v4/EntityCreateTestITCase.java | 6 +-
.../olingo/fit/v4/EntityRetrieveTestITCase.java | 20 +-
.../olingo/fit/v4/EntitySetTestITCase.java | 8 +-
.../olingo/fit/v4/EntityUpdateTestITCase.java | 8 +-
.../olingo/fit/v4/ErrorResponseTestITCase.java | 2 +-
.../olingo/fit/v4/FilterFactoryTestITCase.java | 2 +-
.../olingo/fit/v4/KeyAsSegmentTestITCase.java | 4 +-
.../olingo/fit/v4/MediaEntityTestITCase.java | 8 +-
.../olingo/fit/v4/OpenTypeTestITCase.java | 6 +-
.../fit/v4/OperationImportInvokeTestITCase.java | 96 ++-----
.../olingo/fit/v4/PropertyTestITCase.java | 14 +-
.../olingo/fit/v4/PropertyValueTestITCase.java | 20 +-
.../olingo/fit/v4/QueryOptionsTestITCase.java | 22 +-
.../olingo/fit/v4/SingletonTestITCase.java | 6 +-
.../client/api/CommonEdmEnabledODataClient.java | 2 +-
.../olingo/client/api/CommonODataClient.java | 4 +-
.../api/communication/header/ODataHeaders.java | 31 +++
.../invoke/EdmEnabledInvokeRequestFactory.java | 65 ++++-
.../request/invoke/InvokeRequestFactory.java | 64 ++++-
.../client/api/v3/EdmEnabledODataClient.java | 2 +-
.../olingo/client/api/v3/ODataClient.java | 2 +-
.../client/api/v4/EdmEnabledODataClient.java | 2 +-
.../olingo/client/api/v4/ODataClient.java | 2 +-
.../olingo/client/core/AbstractODataClient.java | 3 +-
.../communication/header/ODataHeadersImpl.java | 49 +---
.../request/AbstractODataRequest.java | 5 +-
.../batch/v3/BatchRequestFactoryImpl.java | 2 +-
.../batch/v4/BatchRequestFactoryImpl.java | 2 +-
.../AbstractEdmEnabledInvokeRequestFactory.java | 172 +++++++++++++
.../invoke/AbstractInvokeRequestFactory.java | 55 +++-
.../v3/EdmEnabledInvokeRequestFactoryImpl.java | 78 +-----
.../invoke/v3/InvokeRequestFactoryImpl.java | 36 +--
.../v4/EdmEnabledInvokeRequestFactoryImpl.java | 78 +-----
.../invoke/v4/InvokeRequestFactoryImpl.java | 36 +--
.../AbstractRetrieveRequestFactory.java | 6 +-
.../v3/ODataLinkCollectionRequestImpl.java | 2 +-
.../retrieve/v3/RetrieveRequestFactoryImpl.java | 2 +-
.../retrieve/v4/RetrieveRequestFactoryImpl.java | 2 +-
.../retrieve/v4/XMLMetadataRequestImpl.java | 2 +-
.../apache/olingo/client/core/uri/URIUtils.java | 20 --
.../core/v3/EdmEnabledODataClientImpl.java | 2 +-
.../olingo/client/core/v3/ODataClientImpl.java | 4 +-
.../core/v4/EdmEnabledODataClientImpl.java | 2 +-
.../olingo/client/core/v4/ODataClientImpl.java | 4 +-
.../client/core/uri/v3/URIBuilderTest.java | 26 +-
.../client/core/uri/v4/URIBuilderTest.java | 26 +-
91 files changed, 1399 insertions(+), 913 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/AbstractInvocationHandler.java
----------------------------------------------------------------------
diff --git a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/AbstractInvocationHandler.java b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/AbstractInvocationHandler.java
index 2ce424a..09b443b 100644
--- a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/AbstractInvocationHandler.java
+++ b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/AbstractInvocationHandler.java
@@ -35,12 +35,17 @@ import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.apache.olingo.client.api.CommonEdmEnabledODataClient;
+import org.apache.olingo.client.api.communication.request.invoke.ODataNoContent;
+import org.apache.olingo.client.api.http.HttpMethod;
import org.apache.olingo.commons.api.domain.CommonODataEntity;
import org.apache.olingo.commons.api.domain.CommonODataEntitySet;
import org.apache.olingo.commons.api.domain.CommonODataProperty;
import org.apache.olingo.commons.api.domain.ODataInvokeResult;
import org.apache.olingo.commons.api.domain.ODataValue;
+import org.apache.olingo.commons.api.edm.EdmFunction;
import org.apache.olingo.commons.api.edm.EdmOperation;
+import org.apache.olingo.commons.api.edm.EdmReturnType;
+import org.apache.olingo.commons.api.edm.constants.EdmTypeKind;
import org.apache.olingo.commons.core.edm.EdmTypeInfo;
import org.apache.olingo.ext.proxy.EntityContainerFactory;
import org.apache.olingo.ext.proxy.api.OperationType;
@@ -156,6 +161,25 @@ abstract class AbstractInvocationHandler implements InvocationHandler {
handler);
}
+ @SuppressWarnings("unchecked")
+ private <RES extends ODataInvokeResult> Class<RES> getResultReference(final EdmReturnType returnType) {
+ Class<RES> result;
+
+ if (returnType == null) {
+ result = (Class<RES>) ODataNoContent.class;
+ } else {
+ if (returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) {
+ result = (Class<RES>) CommonODataEntitySet.class;
+ } else if (!returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) {
+ result = (Class<RES>) CommonODataEntity.class;
+ } else {
+ result = (Class<RES>) CommonODataProperty.class;
+ }
+ }
+
+ return result;
+ }
+
protected Object invokeOperation(
final Operation annotation,
final Method method,
@@ -193,7 +217,11 @@ abstract class AbstractInvocationHandler implements InvocationHandler {
// 3. invoke
final ODataInvokeResult result = client.getInvokeRequestFactory().getInvokeRequest(
- target, edmOperation, parameterValues).execute().getBody();
+ edmOperation instanceof EdmFunction ? HttpMethod.GET : HttpMethod.POST,
+ target,
+ getResultReference(edmOperation.getReturnType()),
+ parameterValues).
+ execute().getBody();
// 4. process invoke result
if (StringUtils.isBlank(annotation.returnType())) {
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/AbstractStructuredInvocationHandler.java
----------------------------------------------------------------------
diff --git a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/AbstractStructuredInvocationHandler.java b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/AbstractStructuredInvocationHandler.java
index 6f44c64..45befde 100644
--- a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/AbstractStructuredInvocationHandler.java
+++ b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/AbstractStructuredInvocationHandler.java
@@ -222,7 +222,7 @@ public abstract class AbstractStructuredInvocationHandler extends AbstractInvoca
null,
((ODataInlineEntity) link).getEntity(),
property.targetContainer(),
- client.getURIBuilder(serviceRoot).appendEntitySetSegment(property.targetEntitySet()).build(),
+ client.newURIBuilder(serviceRoot).appendEntitySetSegment(property.targetEntitySet()).build(),
type,
false);
} else if (link instanceof ODataInlineEntitySet) {
@@ -259,7 +259,7 @@ public abstract class AbstractStructuredInvocationHandler extends AbstractInvoca
uri,
res.getBody(),
property.targetContainer(),
- client.getURIBuilder(serviceRoot).appendEntitySetSegment(property.targetEntitySet()).build(),
+ client.newURIBuilder(serviceRoot).appendEntitySetSegment(property.targetEntitySet()).build(),
type,
res.getETag(),
true);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/EntitySetInvocationHandler.java
----------------------------------------------------------------------
diff --git a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/EntitySetInvocationHandler.java b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/EntitySetInvocationHandler.java
index 4f4e45a..7aa8c22 100644
--- a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/EntitySetInvocationHandler.java
+++ b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/EntitySetInvocationHandler.java
@@ -90,8 +90,7 @@ class EntitySetInvocationHandler<
static EntitySetInvocationHandler getInstance(
final Class<?> ref, final EntityContainerInvocationHandler containerHandler, final String entitySetName) {
- final CommonURIBuilder<?> uriBuilder = containerHandler.getClient().
- getURIBuilder(containerHandler.getFactory().getServiceRoot());
+ final CommonURIBuilder<?> uriBuilder = containerHandler.getClient().newURIBuilder();
final StringBuilder entitySetSegment = new StringBuilder();
if (!containerHandler.isDefaultEntityContainer()) {
@@ -184,7 +183,7 @@ class EntitySetInvocationHandler<
@Override
public Long count() {
final ODataValueRequest req = client.getRetrieveRequestFactory().
- getValueRequest(client.getURIBuilder(this.uri.toASCIIString()).count().build());
+ getValueRequest(client.newURIBuilder(this.uri.toASCIIString()).count().build());
req.setFormat(ODataValueFormat.TEXT);
return Long.valueOf(req.execute().getBody().asPrimitive().toString());
}
@@ -247,7 +246,7 @@ class EntitySetInvocationHandler<
// not yet attached: search against the service
try {
LOG.debug("Search for '{}({})' into the service", typeRef.getSimpleName(), key);
- final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(this.uri.toASCIIString());
+ final CommonURIBuilder<?> uriBuilder = client.newURIBuilder(this.uri.toASCIIString());
if (key.getClass().getAnnotation(CompoundKey.class) == null) {
LOG.debug("Append key segment '{}'", key);
@@ -376,7 +375,7 @@ class EntitySetInvocationHandler<
final Class<S> ref = (Class<S>) ClassUtils.extractTypeArg(collTypeRef);
final Class<S> oref = (Class<S>) ClassUtils.extractTypeArg(this.collTypeRef);
- final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(this.uri.toASCIIString());
+ final CommonURIBuilder<?> uriBuilder = client.newURIBuilder(this.uri.toASCIIString());
final URI entitySetURI;
if (oref.equals(ref)) {
@@ -463,6 +462,6 @@ class EntitySetInvocationHandler<
@Override
public EntitySetIterator<T, KEY, EC> iterator() {
- return new EntitySetIterator<T, KEY, EC>(client.getURIBuilder(this.uri.toASCIIString()).build(), this);
+ return new EntitySetIterator<T, KEY, EC>(client.newURIBuilder(this.uri.toASCIIString()).build(), this);
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/FilterImpl.java
----------------------------------------------------------------------
diff --git a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/FilterImpl.java b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/FilterImpl.java
index 4299dde..42ce646 100644
--- a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/FilterImpl.java
+++ b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/FilterImpl.java
@@ -150,7 +150,7 @@ public class FilterImpl<T extends Serializable, EC extends AbstractEntityCollect
@Override
public EC getResult() {
- final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(this.baseURI.toASCIIString()).
+ final CommonURIBuilder<?> uriBuilder = client.newURIBuilder(this.baseURI.toASCIIString()).
appendDerivedEntityTypeSegment(new FullQualifiedName(
ClassUtils.getNamespace(typeRef), ClassUtils.getEntityTypeName(typeRef)).toString());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/OperationInvocationHandler.java
----------------------------------------------------------------------
diff --git a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/OperationInvocationHandler.java b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/OperationInvocationHandler.java
index 69e1f9b..d2f5bfc 100644
--- a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/OperationInvocationHandler.java
+++ b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/OperationInvocationHandler.java
@@ -28,7 +28,6 @@ import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import org.apache.olingo.client.api.uri.CommonURIBuilder;
-import org.apache.olingo.client.core.uri.URIUtils;
import org.apache.olingo.commons.api.domain.CommonODataEntity;
import org.apache.olingo.commons.api.domain.ODataOperation;
import org.apache.olingo.commons.api.edm.EdmEntityContainer;
@@ -154,8 +153,8 @@ class OperationInvocationHandler extends AbstractInvocationHandler implements Op
edmOperation = container.getActionImport(operation.name()).getUnboundAction();
}
- final CommonURIBuilder<?> uriBuilder = getClient().getURIBuilder(this.serviceRoot).
- appendOperationCallSegment(URIUtils.operationImportURISegment(container, edmOperation.getName()));
+ final CommonURIBuilder<?> uriBuilder = getClient().newURIBuilder(this.serviceRoot).
+ appendOperationCallSegment(edmOperation.getName());
return new AbstractMap.SimpleEntry<URI, EdmOperation>(uriBuilder.build(), edmOperation);
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/SearchImpl.java
----------------------------------------------------------------------
diff --git a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/SearchImpl.java b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/SearchImpl.java
index 73a0585..fb65c6e 100644
--- a/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/SearchImpl.java
+++ b/ext/client-proxy/src/main/java/org/apache/olingo/ext/proxy/commons/SearchImpl.java
@@ -75,7 +75,7 @@ public class SearchImpl<T extends Serializable, EC extends AbstractEntityCollect
@Override
public EC getResult() {
- final URIBuilder uriBuilder = client.getURIBuilder(this.baseURI.toASCIIString()).
+ final URIBuilder uriBuilder = client.newURIBuilder(this.baseURI.toASCIIString()).
appendDerivedEntityTypeSegment(new FullQualifiedName(
ClassUtils.getNamespace(typeRef), ClassUtils.getEntityTypeName(typeRef)).toString());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/java/org/apache/olingo/fit/V4Services.java
----------------------------------------------------------------------
diff --git a/fit/src/main/java/org/apache/olingo/fit/V4Services.java b/fit/src/main/java/org/apache/olingo/fit/V4Services.java
index 52108a8..db88da0 100644
--- a/fit/src/main/java/org/apache/olingo/fit/V4Services.java
+++ b/fit/src/main/java/org/apache/olingo/fit/V4Services.java
@@ -457,7 +457,7 @@ public class V4Services extends AbstractServices {
}
@GET
- @Path("/Company/Microsoft.Test.OData.Services.ODataWCFService.GetEmployeesCount")
+ @Path("/Company/Microsoft.Test.OData.Services.ODataWCFService.GetEmployeesCount{paren:[\\(\\)]*}")
public Response functionGetEmployeesCount(
@HeaderParam("Accept") @DefaultValue(StringUtils.EMPTY) String accept,
@QueryParam("$format") @DefaultValue(StringUtils.EMPTY) String format) {
@@ -488,7 +488,7 @@ public class V4Services extends AbstractServices {
}
@POST
- @Path("/Company/Microsoft.Test.OData.Services.ODataWCFService.IncreaseRevenue")
+ @Path("/Company/Microsoft.Test.OData.Services.ODataWCFService.IncreaseRevenue{paren:[\\(\\)]*}")
public Response actionIncreaseRevenue(
@HeaderParam("Accept") @DefaultValue(StringUtils.EMPTY) String accept,
@HeaderParam("Content-Type") @DefaultValue(StringUtils.EMPTY) String contentType,
@@ -562,7 +562,7 @@ public class V4Services extends AbstractServices {
}
@POST
- @Path("/Products({entityId})/Microsoft.Test.OData.Services.ODataWCFService.AddAccessRight")
+ @Path("/Products({entityId})/Microsoft.Test.OData.Services.ODataWCFService.AddAccessRight{paren:[\\(\\)]*}")
public Response actionAddAccessRight(
@HeaderParam("Accept") @DefaultValue(StringUtils.EMPTY) String accept,
@HeaderParam("Content-Type") @DefaultValue(StringUtils.EMPTY) String contentType,
@@ -583,11 +583,16 @@ public class V4Services extends AbstractServices {
assert 1 == entry.getProperties().size();
assert entry.getProperty("accessRight") != null;
- entry.getProperty("accessRight").setType("Microsoft.Test.OData.Services.ODataWCFService.AccessLevel");
+ final Property property = entry.getProperty("accessRight");
+ property.setType("Microsoft.Test.OData.Services.ODataWCFService.AccessLevel");
+
+ final ResWrap<AtomPropertyImpl> result = new ResWrap<AtomPropertyImpl>(
+ URI.create(Constants.get(version, ConstantKey.ODATA_METADATA_PREFIX) + property.getType()),
+ null, (AtomPropertyImpl) property);
return xml.createResponse(
null,
- xml.writeProperty(acceptType, entry.getProperty("accessRight")),
+ xml.writeProperty(acceptType, result),
null,
acceptType);
} catch (Exception e) {
@@ -596,7 +601,7 @@ public class V4Services extends AbstractServices {
}
@POST
- @Path("/Customers(PersonID={personId})/Microsoft.Test.OData.Services.ODataWCFService.ResetAddress")
+ @Path("/Customers(PersonID={personId})/Microsoft.Test.OData.Services.ODataWCFService.ResetAddress{paren:[\\(\\)]*}")
public Response actionResetAddress(
@Context UriInfo uriInfo,
@HeaderParam("Accept") @DefaultValue(StringUtils.EMPTY) String accept,
@@ -622,7 +627,7 @@ public class V4Services extends AbstractServices {
@GET
@Path("/ProductDetails(ProductID={productId},ProductDetailID={productDetailId})"
- + "/Microsoft.Test.OData.Services.ODataWCFService.GetRelatedProduct")
+ + "/Microsoft.Test.OData.Services.ODataWCFService.GetRelatedProduct{paren:[\\(\\)]*}")
public Response functionGetRelatedProduct(
@Context UriInfo uriInfo,
@HeaderParam("Accept") @DefaultValue(StringUtils.EMPTY) String accept,
@@ -634,11 +639,12 @@ public class V4Services extends AbstractServices {
}
@POST
- @Path("/Accounts(101)/Microsoft.Test.OData.Services.ODataWCFService.RefreshDefaultPI")
+ @Path("/Accounts({entityId})/Microsoft.Test.OData.Services.ODataWCFService.RefreshDefaultPI{paren:[\\(\\)]*}")
public Response actionRefreshDefaultPI(
@Context UriInfo uriInfo,
@HeaderParam("Accept") @DefaultValue(StringUtils.EMPTY) String accept,
@HeaderParam("Content-Type") @DefaultValue(StringUtils.EMPTY) String contentType,
+ @PathParam("entityId") String entityId,
@QueryParam("$format") @DefaultValue(StringUtils.EMPTY) String format,
final String param) {
@@ -649,23 +655,24 @@ public class V4Services extends AbstractServices {
assert 1 == entry.getProperties().size();
assert entry.getProperty("newDate") != null;
- return functionGetDefaultPI(accept, format);
+ return functionGetDefaultPI(accept, entityId, format);
} catch (Exception e) {
return xml.createFaultResponse(accept, e);
}
}
@GET
- @Path("/Accounts(101)/Microsoft.Test.OData.Services.ODataWCFService.GetDefaultPI")
+ @Path("/Accounts({entityId})/Microsoft.Test.OData.Services.ODataWCFService.GetDefaultPI{paren:[\\(\\)]*}")
public Response functionGetDefaultPI(
@HeaderParam("Accept") @DefaultValue(StringUtils.EMPTY) String accept,
+ @PathParam("entityId") String entityId,
@QueryParam("$format") @DefaultValue(StringUtils.EMPTY) String format) {
- return getContainedEntity(accept, "101", "MyPaymentInstruments", "101901", format);
+ return getContainedEntity(accept, entityId, "MyPaymentInstruments", entityId+ "901", format);
}
@GET
- @Path("/Accounts({entityId})/Microsoft.Test.OData.Services.ODataWCFService.GetAccountInfo")
+ @Path("/Accounts({entityId})/Microsoft.Test.OData.Services.ODataWCFService.GetAccountInfo{paren:[\\(\\)]*}")
public Response functionGetAccountInfo(
@HeaderParam("Accept") @DefaultValue(StringUtils.EMPTY) String accept,
@PathParam("entityId") String entityId,
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/resources/V40/Accounts/102/entity.full.json
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/V40/Accounts/102/entity.full.json b/fit/src/main/resources/V40/Accounts/102/entity.full.json
new file mode 100644
index 0000000..1682135
--- /dev/null
+++ b/fit/src/main/resources/V40/Accounts/102/entity.full.json
@@ -0,0 +1,34 @@
+{
+ "@odata.context": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Accounts/$entity",
+ "@odata.type": "#Microsoft.Test.OData.Services.ODataWCFService.Account",
+ "@odata.id": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)",
+ "@odata.editLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)",
+ "AccountID": 102,
+ "Country": "US",
+ "AccountInfo": {
+ "@odata.type": "#Microsoft.Test.OData.Services.ODataWCFService.AccountInfo",
+ "FirstName": "Alex",
+ "LastName": "Green",
+ "MiddleName": "Hood"
+ },
+ "MyGiftCard@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyGiftCard/$ref",
+ "MyGiftCard@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyGiftCard",
+ "MyPaymentInstruments@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments/$ref",
+ "MyPaymentInstruments@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments",
+ "ActiveSubscriptions@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/ActiveSubscriptions/$ref",
+ "ActiveSubscriptions@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/ActiveSubscriptions",
+ "AvailableSubscriptionTemplatess@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/AvailableSubscriptionTemplatess/$ref",
+ "AvailableSubscriptionTemplatess@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/AvailableSubscriptionTemplatess",
+ "#Microsoft.Test.OData.Services.ODataWCFService.RefreshDefaultPI": {
+ "title": "Microsoft.Test.OData.Services.ODataWCFService.RefreshDefaultPI",
+ "target": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/Microsoft.Test.OData.Services.ODataWCFService.RefreshDefaultPI"
+ },
+ "#Microsoft.Test.OData.Services.ODataWCFService.GetDefaultPI": {
+ "title": "Microsoft.Test.OData.Services.ODataWCFService.GetDefaultPI",
+ "target": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/Microsoft.Test.OData.Services.ODataWCFService.GetDefaultPI"
+ },
+ "#Microsoft.Test.OData.Services.ODataWCFService.GetAccountInfo": {
+ "title": "Microsoft.Test.OData.Services.ODataWCFService.GetAccountInfo",
+ "target": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/Microsoft.Test.OData.Services.ODataWCFService.GetAccountInfo"
+ }
+}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/resources/V40/Accounts/102/entity.xml
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/V40/Accounts/102/entity.xml b/fit/src/main/resources/V40/Accounts/102/entity.xml
new file mode 100644
index 0000000..0b9cc63
--- /dev/null
+++ b/fit/src/main/resources/V40/Accounts/102/entity.xml
@@ -0,0 +1,55 @@
+<?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.
+
+-->
+<entry xml:base="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/" xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://docs.oasis-open.org/odata/ns/data" xmlns:m="http://docs.oasis-open.org/odata/ns/metadata" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml" m:context="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Accounts/$entity">
+ <id>http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)</id>
+ <category term="#Microsoft.Test.OData.Services.ODataWCFService.Account" scheme="http://docs.oasis-open.org/odata/ns/scheme"/>
+ <link rel="edit" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/MyGiftCard" type="application/atom+xml;type=entry" title="MyGiftCard" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyGiftCard"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/MyPaymentInstruments" type="application/atom+xml;type=feed" title="MyPaymentInstruments" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/ActiveSubscriptions" type="application/atom+xml;type=feed" title="ActiveSubscriptions" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/ActiveSubscriptions"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/AvailableSubscriptionTemplatess" type="application/atom+xml;type=feed" title="AvailableSubscriptionTemplatess" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/AvailableSubscriptionTemplatess"/>
+ <title/>
+ <updated>2014-04-14T12:45:00Z</updated>
+ <author>
+ <name/>
+ </author>
+ <m:action metadata="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Microsoft.Test.OData.Services.ODataWCFService.RefreshDefaultPI"
+ title="Microsoft.Test.OData.Services.ODataWCFService.RefreshDefaultPI"
+ target="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/Microsoft.Test.OData.Services.ODataWCFService.RefreshDefaultPI"/>
+ <m:action metadata="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Microsoft.Test.OData.Services.ODataWCFService.GetDefaultPI"
+ title="Microsoft.Test.OData.Services.ODataWCFService.GetDefaultPI"
+ target="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/Microsoft.Test.OData.Services.ODataWCFService.GetDefaultPI"/>
+ <m:action metadata="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Microsoft.Test.OData.Services.ODataWCFService.GetAccountInfo"
+ title="Microsoft.Test.OData.Services.ODataWCFService.GetAccountInfo"
+ target="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/Microsoft.Test.OData.Services.ODataWCFService.GetAccountInfo"/>
+ <content type="application/xml">
+ <m:properties>
+ <d:AccountID m:type="Int32">102</d:AccountID>
+ <d:Country>US</d:Country>
+ <d:AccountInfo m:type="#Microsoft.Test.OData.Services.ODataWCFService.AccountInfo">
+ <d:FirstName>Alex</d:FirstName>
+ <d:LastName>Green</d:LastName>
+ <d:MiddleName>Hood</d:MiddleName>
+ </d:AccountInfo>
+ </m:properties>
+ </content>
+</entry>
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/resources/V40/Accounts/102/links/MyGiftCard.full.json
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/V40/Accounts/102/links/MyGiftCard.full.json b/fit/src/main/resources/V40/Accounts/102/links/MyGiftCard.full.json
new file mode 100644
index 0000000..cf9d18a
--- /dev/null
+++ b/fit/src/main/resources/V40/Accounts/102/links/MyGiftCard.full.json
@@ -0,0 +1,15 @@
+{
+ "@odata.context": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Accounts(102)/MyGiftCard/$entity",
+ "@odata.type": "#Microsoft.Test.OData.Services.ODataWCFService.GiftCard",
+ "@odata.id": "Accounts(102)/MyGiftCard",
+ "@odata.editLink": "Accounts(102)/MyGiftCard",
+ "GiftCardID": 301,
+ "GiftCardNO": "AAA123A",
+ "Amount": 19.9,
+ "ExperationDate@odata.type": "#DateTimeOffset",
+ "ExperationDate": "2013-12-30T00:00:00Z",
+ "#Microsoft.Test.OData.Services.ODataWCFService.GetActualAmount": {
+ "title": "Microsoft.Test.OData.Services.ODataWCFService.GetActualAmount",
+ "target": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyGiftCard/Microsoft.Test.OData.Services.ODataWCFService.GetActualAmount"
+ }
+}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/resources/V40/Accounts/102/links/MyGiftCard.xml
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/V40/Accounts/102/links/MyGiftCard.xml b/fit/src/main/resources/V40/Accounts/102/links/MyGiftCard.xml
new file mode 100644
index 0000000..b1927b3
--- /dev/null
+++ b/fit/src/main/resources/V40/Accounts/102/links/MyGiftCard.xml
@@ -0,0 +1,41 @@
+<?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.
+
+-->
+<entry xml:base="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/" xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://docs.oasis-open.org/odata/ns/data" xmlns:m="http://docs.oasis-open.org/odata/ns/metadata" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml" m:context="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Accounts(102)/MyGiftCard/$entity">
+ <category term="#Microsoft.Test.OData.Services.ODataWCFService.GiftCard" scheme="http://docs.oasis-open.org/odata/ns/scheme" />
+ <id />
+ <title />
+ <updated>2014-04-23T13:48:48Z</updated>
+ <author>
+ <name />
+ </author>
+ <m:action metadata="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Microsoft.Test.OData.Services.ODataWCFService.GetActualAmount"
+ title="Microsoft.Test.OData.Services.ODataWCFService.GetActualAmount"
+ target="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyGiftCard/Microsoft.Test.OData.Services.ODataWCFService.GetActualAmount"/>
+ <content type="application/xml">
+ <m:properties>
+ <d:GiftCardID m:type="Int32">301</d:GiftCardID>
+ <d:GiftCardNO>AAA123A</d:GiftCardNO>
+ <d:Amount m:type="Double">19.9</d:Amount>
+ <d:ExperationDate m:type="DateTimeOffset">2013-12-30T00:00:00Z</d:ExperationDate>
+ </m:properties>
+ </content>
+</entry>
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102901).full.json
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102901).full.json b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102901).full.json
new file mode 100644
index 0000000..70c96de
--- /dev/null
+++ b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102901).full.json
@@ -0,0 +1,16 @@
+{
+ "@odata.context": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Accounts(102)/MyPaymentInstruments/$entity",
+ "@odata.type": "#Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument",
+ "@odata.id": "Accounts(102)/MyPaymentInstruments(102901)",
+ "@odata.editLink": "Accounts(102)/MyPaymentInstruments(102901)",
+ "PaymentInstrumentID": 102901,
+ "FriendlyName": "102 first PI",
+ "CreatedDate@odata.type": "#DateTimeOffset",
+ "CreatedDate": "2014-04-09T00:00:00Z",
+ "TheStoredPI@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/TheStoredPI/$ref",
+ "TheStoredPI@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/TheStoredPI",
+ "BillingStatements@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BillingStatements/$ref",
+ "BillingStatements@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BillingStatements",
+ "BackupStoredPI@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BackupStoredPI/$ref",
+ "BackupStoredPI@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BackupStoredPI"
+}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102901).xml
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102901).xml b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102901).xml
new file mode 100644
index 0000000..e519217
--- /dev/null
+++ b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102901).xml
@@ -0,0 +1,40 @@
+<?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.
+
+-->
+<entry xml:base="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/" xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://docs.oasis-open.org/odata/ns/data" xmlns:m="http://docs.oasis-open.org/odata/ns/metadata" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml" m:context="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Accounts(102)/MyPaymentInstruments/$entity">
+ <category term="#Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument" scheme="http://docs.oasis-open.org/odata/ns/scheme"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/TheStoredPI" type="application/atom+xml;type=entry" title="TheStoredPI" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/TheStoredPI"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/BillingStatements" type="application/atom+xml;type=feed" title="BillingStatements" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BillingStatements"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/BackupStoredPI" type="application/atom+xml;type=entry" title="BackupStoredPI" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BackupStoredPI"/>
+ <id/>
+ <title/>
+ <updated>2014-04-14T12:47:37Z</updated>
+ <author>
+ <name/>
+ </author>
+ <content type="application/xml">
+ <m:properties>
+ <d:PaymentInstrumentID m:type="Int32">102901</d:PaymentInstrumentID>
+ <d:FriendlyName>102 first PI</d:FriendlyName>
+ <d:CreatedDate m:type="DateTimeOffset">2014-04-09T00:00:00Z</d:CreatedDate>
+ </m:properties>
+ </content>
+</entry>
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102902).full.json
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102902).full.json b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102902).full.json
new file mode 100644
index 0000000..d6082db
--- /dev/null
+++ b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102902).full.json
@@ -0,0 +1,16 @@
+{
+ "@odata.context": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Accounts(102)/MyPaymentInstruments/$entity",
+ "@odata.type": "#Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument",
+ "@odata.id": "Accounts(102)/MyPaymentInstruments(102902)",
+ "@odata.editLink": "Accounts(102)/MyPaymentInstruments(102902)",
+ "PaymentInstrumentID": 102902,
+ "FriendlyName": "102 first PI",
+ "CreatedDate@odata.type": "#DateTimeOffset",
+ "CreatedDate": "2014-04-09T00:00:00Z",
+ "TheStoredPI@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/TheStoredPI/$ref",
+ "TheStoredPI@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/TheStoredPI",
+ "BillingStatements@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/BillingStatements/$ref",
+ "BillingStatements@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/BillingStatements",
+ "BackupStoredPI@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/BackupStoredPI/$ref",
+ "BackupStoredPI@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/BackupStoredPI"
+}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102902).xml
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102902).xml b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102902).xml
new file mode 100644
index 0000000..7a056c4
--- /dev/null
+++ b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments(102902).xml
@@ -0,0 +1,40 @@
+<?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.
+
+-->
+<entry xml:base="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/" xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://docs.oasis-open.org/odata/ns/data" xmlns:m="http://docs.oasis-open.org/odata/ns/metadata" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml" m:context="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Accounts(102)/MyPaymentInstruments/$entity">
+ <category term="#Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument" scheme="http://docs.oasis-open.org/odata/ns/scheme"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/TheStoredPI" type="application/atom+xml;type=entry" title="TheStoredPI" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/TheStoredPI"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/BillingStatements" type="application/atom+xml;type=feed" title="BillingStatements" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/BillingStatements"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/BackupStoredPI" type="application/atom+xml;type=entry" title="BackupStoredPI" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/BackupStoredPI"/>
+ <id/>
+ <title/>
+ <updated>2014-04-14T12:47:37Z</updated>
+ <author>
+ <name/>
+ </author>
+ <content type="application/xml">
+ <m:properties>
+ <d:PaymentInstrumentID m:type="Int32">102902</d:PaymentInstrumentID>
+ <d:FriendlyName>102 first PI</d:FriendlyName>
+ <d:CreatedDate m:type="DateTimeOffset">2014-04-09T00:00:00Z</d:CreatedDate>
+ </m:properties>
+ </content>
+</entry>
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments.full.json
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments.full.json b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments.full.json
new file mode 100644
index 0000000..d056b5e
--- /dev/null
+++ b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments.full.json
@@ -0,0 +1,62 @@
+{
+ "@odata.context": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Accounts(102)/MyPaymentInstruments",
+ "value": [{
+ "@odata.type": "#Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument",
+ "@odata.id": "Accounts(102)/MyPaymentInstruments(102901)",
+ "@odata.editLink": "Accounts(102)/MyPaymentInstruments(102901)",
+ "PaymentInstrumentID": 102901,
+ "FriendlyName": "102 first PI",
+ "CreatedDate@odata.type": "#DateTimeOffset",
+ "CreatedDate": "2014-04-09T00:00:00Z",
+ "TheStoredPI@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/TheStoredPI/$ref",
+ "TheStoredPI@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/TheStoredPI",
+ "BillingStatements@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BillingStatements/$ref",
+ "BillingStatements@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BillingStatements",
+ "BackupStoredPI@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BackupStoredPI/$ref",
+ "BackupStoredPI@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BackupStoredPI"
+ }, {
+ "@odata.type": "#Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI",
+ "@odata.id": "Accounts(102)/MyPaymentInstruments(102902)",
+ "@odata.editLink": "Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI",
+ "PaymentInstrumentID": 102902,
+ "FriendlyName": "102 frist credit PI",
+ "CreatedDate@odata.type": "#DateTimeOffset",
+ "CreatedDate": "2012-11-01T00:00:00Z",
+ "CardNumber": "6000000000000000",
+ "CVV": "234",
+ "HolderName": "Alex",
+ "Balance": 100.0,
+ "ExperationDate@odata.type": "#DateTimeOffset",
+ "ExperationDate": "2022-11-01T00:00:00Z",
+ "TheStoredPI@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/TheStoredPI/$ref",
+ "TheStoredPI@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/TheStoredPI",
+ "BillingStatements@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BillingStatements/$ref",
+ "BillingStatements@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BillingStatements",
+ "BackupStoredPI@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BackupStoredPI/$ref",
+ "BackupStoredPI@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BackupStoredPI",
+ "CreditRecords@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/CreditRecords/$ref",
+ "CreditRecords@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/CreditRecords"
+ }, {
+ "@odata.type": "#Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI",
+ "@odata.id": "Accounts(102)/MyPaymentInstruments(102903)",
+ "@odata.editLink": "Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI",
+ "PaymentInstrumentID": 102903,
+ "FriendlyName": "102 second credit PI",
+ "CreatedDate@odata.type": "#DateTimeOffset",
+ "CreatedDate": "2012-11-01T00:00:00Z",
+ "CardNumber": "8000000000000000",
+ "CVV": "012",
+ "HolderName": "James",
+ "Balance": 300.0,
+ "ExperationDate@odata.type": "#DateTimeOffset",
+ "ExperationDate": "2022-10-02T00:00:00Z",
+ "TheStoredPI@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/TheStoredPI/$ref",
+ "TheStoredPI@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/TheStoredPI",
+ "BillingStatements@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BillingStatements/$ref",
+ "BillingStatements@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BillingStatements",
+ "BackupStoredPI@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BackupStoredPI/$ref",
+ "BackupStoredPI@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BackupStoredPI",
+ "CreditRecords@odata.associationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/CreditRecords/$ref",
+ "CreditRecords@odata.navigationLink": "http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/CreditRecords"
+ }]
+}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments.xml
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments.xml b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments.xml
new file mode 100644
index 0000000..5defbc3
--- /dev/null
+++ b/fit/src/main/resources/V40/Accounts/102/links/MyPaymentInstruments.xml
@@ -0,0 +1,95 @@
+<?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.
+
+-->
+<feed xml:base="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/" xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://docs.oasis-open.org/odata/ns/data" xmlns:m="http://docs.oasis-open.org/odata/ns/metadata" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml" m:context="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/$metadata#Accounts(102)/MyPaymentInstruments">
+ <id>http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/MyPaymentInstruments</id>
+ <title/>
+ <updated>2014-04-14T12:45:33Z</updated>
+ <entry>
+ <category term="#Microsoft.Test.OData.Services.ODataWCFService.PaymentInstrument" scheme="http://docs.oasis-open.org/odata/ns/scheme"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/TheStoredPI" type="application/atom+xml;type=entry" title="TheStoredPI" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/TheStoredPI"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/BillingStatements" type="application/atom+xml;type=feed" title="BillingStatements" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BillingStatements"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/BackupStoredPI" type="application/atom+xml;type=entry" title="BackupStoredPI" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102901)/BackupStoredPI"/>
+ <id/>
+ <title/>
+ <updated>2014-04-14T12:45:33Z</updated>
+ <author>
+ <name/>
+ </author>
+ <content type="application/xml">
+ <m:properties>
+ <d:PaymentInstrumentID m:type="Int32">102901</d:PaymentInstrumentID>
+ <d:FriendlyName>102 first PI</d:FriendlyName>
+ <d:CreatedDate m:type="DateTimeOffset">2014-04-09T00:00:00Z</d:CreatedDate>
+ </m:properties>
+ </content>
+ </entry>
+ <entry>
+ <category term="#Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI" scheme="http://docs.oasis-open.org/odata/ns/scheme"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/TheStoredPI" type="application/atom+xml;type=entry" title="TheStoredPI" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/TheStoredPI"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/BillingStatements" type="application/atom+xml;type=feed" title="BillingStatements" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BillingStatements"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/BackupStoredPI" type="application/atom+xml;type=entry" title="BackupStoredPI" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BackupStoredPI"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/CreditRecords" type="application/atom+xml;type=feed" title="CreditRecords" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102902)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/CreditRecords"/>
+ <id/>
+ <title/>
+ <updated>2014-04-14T12:45:33Z</updated>
+ <author>
+ <name/>
+ </author>
+ <content type="application/xml">
+ <m:properties>
+ <d:PaymentInstrumentID m:type="Int32">102902</d:PaymentInstrumentID>
+ <d:FriendlyName>102 frist credit PI</d:FriendlyName>
+ <d:CreatedDate m:type="DateTimeOffset">2012-11-01T00:00:00Z</d:CreatedDate>
+ <d:CardNumber>6000000000000000</d:CardNumber>
+ <d:CVV>234</d:CVV>
+ <d:HolderName>Alex</d:HolderName>
+ <d:Balance m:type="Double">100</d:Balance>
+ <d:ExperationDate m:type="DateTimeOffset">2022-11-01T00:00:00Z</d:ExperationDate>
+ </m:properties>
+ </content>
+ </entry>
+ <entry>
+ <category term="#Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI" scheme="http://docs.oasis-open.org/odata/ns/scheme"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/TheStoredPI" type="application/atom+xml;type=entry" title="TheStoredPI" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/TheStoredPI"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/BillingStatements" type="application/atom+xml;type=feed" title="BillingStatements" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BillingStatements"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/BackupStoredPI" type="application/atom+xml;type=entry" title="BackupStoredPI" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/BackupStoredPI"/>
+ <link rel="http://docs.oasis-open.org/odata/ns/related/CreditRecords" type="application/atom+xml;type=feed" title="CreditRecords" href="http://localhost:${cargo.servlet.port}/stub/StaticService/V40/Static.svc/Accounts(102)/MyPaymentInstruments(102903)/Microsoft.Test.OData.Services.ODataWCFService.CreditCardPI/CreditRecords"/>
+ <id/>
+ <title/>
+ <updated>2014-04-14T12:45:33Z</updated>
+ <author>
+ <name/>
+ </author>
+ <content type="application/xml">
+ <m:properties>
+ <d:PaymentInstrumentID m:type="Int32">102903</d:PaymentInstrumentID>
+ <d:FriendlyName>102 second credit PI</d:FriendlyName>
+ <d:CreatedDate m:type="DateTimeOffset">2012-11-01T00:00:00Z</d:CreatedDate>
+ <d:CardNumber>8000000000000000</d:CardNumber>
+ <d:CVV>012</d:CVV>
+ <d:HolderName>James</d:HolderName>
+ <d:Balance m:type="Double">300</d:Balance>
+ <d:ExperationDate m:type="DateTimeOffset">2022-10-02T00:00:00Z</d:ExperationDate>
+ </m:properties>
+ </content>
+ </entry>
+</feed>
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/AbstractTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/AbstractTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/AbstractTestITCase.java
index fc2bbae..d9bf300 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/AbstractTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/AbstractTestITCase.java
@@ -329,7 +329,7 @@ public abstract class AbstractTestITCase extends AbstractBaseTestITCase {
final ODataEntity original,
final String entitySetName) {
- final URIBuilder uriBuilder = getClient().getURIBuilder(serviceRootURL).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(serviceRootURL).
appendEntitySetSegment(entitySetName);
debugODataEntity(original, "About to create");
@@ -356,7 +356,7 @@ public abstract class AbstractTestITCase extends AbstractBaseTestITCase {
final int actualObjectId,
final Collection<String> expands) {
- final URIBuilder uriBuilder = getClient().getURIBuilder(serviceRootURL).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(serviceRootURL).
appendEntitySetSegment("Customer").appendKeySegment(actualObjectId);
// search expanded
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/ActionOverloadingTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/ActionOverloadingTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/ActionOverloadingTestITCase.java
index de6d62d..d9e617b 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/ActionOverloadingTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/ActionOverloadingTestITCase.java
@@ -19,7 +19,6 @@
package org.apache.olingo.fit.v3;
import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertEquals;
import java.util.LinkedHashMap;
@@ -27,120 +26,69 @@ import java.util.Map;
import org.apache.olingo.client.api.communication.request.invoke.ODataNoContent;
import org.apache.olingo.client.api.communication.response.ODataInvokeResponse;
import org.apache.olingo.client.api.uri.v3.URIBuilder;
-import org.apache.olingo.client.core.uri.URIUtils;
import org.apache.olingo.commons.api.domain.ODataValue;
import org.apache.olingo.commons.api.domain.v3.ODataEntity;
import org.apache.olingo.commons.api.domain.v3.ODataEntitySet;
import org.apache.olingo.commons.api.domain.v3.ODataProperty;
-import org.apache.olingo.commons.api.edm.Edm;
-import org.apache.olingo.commons.api.edm.EdmAction;
-import org.apache.olingo.commons.api.edm.EdmActionImport;
-import org.apache.olingo.commons.api.edm.EdmEntityContainer;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException;
-import org.apache.olingo.commons.api.edm.EdmSchema;
-import org.apache.olingo.commons.api.edm.FullQualifiedName;
-import org.apache.olingo.commons.core.edm.primitivetype.EdmInt32;
import org.junit.Test;
public class ActionOverloadingTestITCase extends AbstractTestITCase {
@Test
public void retrieveProduct() throws EdmPrimitiveTypeException {
- final Edm edm = getClient().getRetrieveRequestFactory().
- getMetadataRequest(testActionOverloadingServiceRootURL).execute().getBody();
- assertNotNull(edm);
-
- final EdmEntityContainer container = edm.getSchemas().get(0).getEntityContainer();
- assertNotNull(container);
-
- int execs = 0;
- for (EdmActionImport actImp : container.getActionImports()) {
- if ("RetrieveProduct".equals(actImp.getName())) {
- // 1. unbound
- final EdmAction unbound = actImp.getUnboundAction();
- assertNotNull(unbound);
- assertEquals(EdmInt32.getInstance(), unbound.getReturnType().getType());
-
- final URIBuilder unboundBuilder = getClient().getURIBuilder(testActionOverloadingServiceRootURL).
- appendOperationCallSegment(URIUtils.operationImportURISegment(container, actImp.getName()));
- final ODataInvokeResponse<ODataProperty> unboundRes = getClient().getInvokeRequestFactory().
- <ODataProperty>getInvokeRequest(unboundBuilder.build(), unbound).execute();
- assertNotNull(unboundRes);
- assertEquals(200, unboundRes.getStatusCode());
- assertEquals(Integer.valueOf(-10), unboundRes.getBody().getPrimitiveValue().toCastValue(Integer.class));
- execs++;
-
- // 2. bound to Product
- final EdmAction productBound = edm.getBoundAction(
- new FullQualifiedName(container.getNamespace(), actImp.getName()),
- new FullQualifiedName(container.getNamespace(), "Product"), false);
- assertNotNull(productBound);
- assertEquals(EdmInt32.getInstance(), productBound.getReturnType().getType());
-
- final ODataEntity product = getClient().getRetrieveRequestFactory().getEntityRequest(
- getClient().getURIBuilder(testActionOverloadingServiceRootURL).
- appendEntitySetSegment("Product").appendKeySegment(-10).build()).
- execute().getBody();
- assertNotNull(product);
-
- final ODataInvokeResponse<ODataProperty> productBoundRes = getClient().getInvokeRequestFactory().
- <ODataProperty>getInvokeRequest(product.getOperation(actImp.getName()).getTarget(), unbound).
- execute();
- assertNotNull(productBoundRes);
- assertEquals(200, productBoundRes.getStatusCode());
- assertEquals(Integer.valueOf(-10), productBoundRes.getBody().getPrimitiveValue().toCastValue(Integer.class));
- execs++;
-
- // 3. bound to OrderLine
- final EdmAction orderLineBound = edm.getBoundAction(
- new FullQualifiedName(container.getNamespace(), actImp.getName()),
- new FullQualifiedName(container.getNamespace(), "OrderLine"), false);
- assertNotNull(orderLineBound);
- assertEquals(EdmInt32.getInstance(), orderLineBound.getReturnType().getType());
-
- final Map<String, Object> key = new LinkedHashMap<String, Object>(2);
- key.put("OrderId", -10);
- key.put("ProductId", -10);
- final ODataEntity orderLine = getClient().getRetrieveRequestFactory().getEntityRequest(
- getClient().getURIBuilder(testActionOverloadingServiceRootURL).
- appendEntitySetSegment("OrderLine").appendKeySegment(key).build()).
- execute().getBody();
- assertNotNull(orderLine);
-
- final ODataInvokeResponse<ODataProperty> orderLineBoundRes = getClient().getInvokeRequestFactory().
- <ODataProperty>getInvokeRequest(orderLine.getOperation(actImp.getName()).getTarget(), unbound).
- execute();
- assertNotNull(orderLineBoundRes);
- assertEquals(200, orderLineBoundRes.getStatusCode());
- assertEquals(Integer.valueOf(-10), orderLineBoundRes.getBody().getPrimitiveValue().toCastValue(Integer.class));
- execs++;
- }
- }
- assertEquals(3, execs);
+ final String actionImportName = "RetrieveProduct";
+
+ // 1. unbound
+ final URIBuilder builder = getClient().newURIBuilder(testActionOverloadingServiceRootURL).
+ appendOperationCallSegment(actionImportName);
+ final ODataInvokeResponse<ODataProperty> unboundRes = getClient().getInvokeRequestFactory().
+ getActionInvokeRequest(builder.build(), ODataProperty.class).execute();
+ assertNotNull(unboundRes);
+ assertEquals(200, unboundRes.getStatusCode());
+ assertEquals(Integer.valueOf(-10), unboundRes.getBody().getPrimitiveValue().toCastValue(Integer.class));
+
+ // 2. bound to Product
+ final ODataEntity product = getClient().getRetrieveRequestFactory().getEntityRequest(
+ getClient().newURIBuilder(testActionOverloadingServiceRootURL).
+ appendEntitySetSegment("Product").appendKeySegment(-10).build()).
+ execute().getBody();
+ assertNotNull(product);
+
+ final ODataInvokeResponse<ODataProperty> productBoundRes = getClient().getInvokeRequestFactory().
+ getActionInvokeRequest(product.getOperation(actionImportName).getTarget(), ODataProperty.class).
+ execute();
+ assertNotNull(productBoundRes);
+ assertEquals(200, productBoundRes.getStatusCode());
+ assertEquals(Integer.valueOf(-10), productBoundRes.getBody().getPrimitiveValue().toCastValue(Integer.class));
+
+ // 3. bound to OrderLine
+ final Map<String, Object> key = new LinkedHashMap<String, Object>(2);
+ key.put("OrderId", -10);
+ key.put("ProductId", -10);
+ final ODataEntity orderLine = getClient().getRetrieveRequestFactory().getEntityRequest(
+ getClient().newURIBuilder(testActionOverloadingServiceRootURL).
+ appendEntitySetSegment("OrderLine").appendKeySegment(key).build()).
+ execute().getBody();
+ assertNotNull(orderLine);
+
+ final ODataInvokeResponse<ODataProperty> orderLineBoundRes = getClient().getInvokeRequestFactory().
+ getActionInvokeRequest(orderLine.getOperation(actionImportName).getTarget(), ODataProperty.class).
+ execute();
+ assertNotNull(orderLineBoundRes);
+ assertEquals(200, orderLineBoundRes.getStatusCode());
+ assertEquals(Integer.valueOf(-10), orderLineBoundRes.getBody().getPrimitiveValue().toCastValue(Integer.class));
}
@Test
public void increaseSalaries() {
- final Edm edm = getClient().getRetrieveRequestFactory().
- getMetadataRequest(testActionOverloadingServiceRootURL).execute().getBody();
- assertNotNull(edm);
-
- final EdmSchema schema = edm.getSchemas().get(0);
- assertNotNull(schema);
-
- EdmAction actImp = edm.getBoundAction(
- new FullQualifiedName(schema.getNamespace(), "IncreaseSalaries"),
- new FullQualifiedName(schema.getNamespace(), "Employee"),
- true);
+ final String actionImportName = "IncreaseSalaries";
final Map<String, ODataValue> parameters = new LinkedHashMap<String, ODataValue>(1);
parameters.put("n", getClient().getObjectFactory().newPrimitiveValueBuilder().buildInt32(5));
// 1. bound to employees
- assertNotNull(actImp);
- assertNull(actImp.getReturnType());
-
- final URIBuilder employeeBuilder = getClient().getURIBuilder(testActionOverloadingServiceRootURL).
+ final URIBuilder employeeBuilder = getClient().newURIBuilder(testActionOverloadingServiceRootURL).
appendEntitySetSegment("Person").
appendDerivedEntityTypeSegment("Microsoft.Test.OData.Services.AstoriaDefaultService.Employee");
final ODataEntitySet employees = getClient().getRetrieveRequestFactory().getEntitySetRequest(
@@ -148,20 +96,13 @@ public class ActionOverloadingTestITCase extends AbstractTestITCase {
assertNotNull(employees);
final ODataInvokeResponse<ODataNoContent> employeeRes = getClient().getInvokeRequestFactory().
- <ODataNoContent>getInvokeRequest(employeeBuilder.appendOperationCallSegment(actImp.getName()).build(),
- actImp, parameters).execute();
+ getActionInvokeRequest(employeeBuilder.appendOperationCallSegment(actionImportName).build(),
+ ODataNoContent.class, parameters).execute();
assertNotNull(employeeRes);
assertEquals(204, employeeRes.getStatusCode());
// 2. bound to special employees
- actImp = edm.getBoundAction(
- new FullQualifiedName(schema.getNamespace(), "IncreaseSalaries"),
- new FullQualifiedName(schema.getNamespace(), "SpecialEmployee"),
- true);
- assertNotNull(actImp);
- assertNull(actImp.getReturnType());
-
- final URIBuilder specEmpBuilder = getClient().getURIBuilder(testActionOverloadingServiceRootURL).
+ final URIBuilder specEmpBuilder = getClient().newURIBuilder(testActionOverloadingServiceRootURL).
appendEntitySetSegment("Person").
appendDerivedEntityTypeSegment("Microsoft.Test.OData.Services.AstoriaDefaultService.SpecialEmployee");
final ODataEntitySet specEmps = getClient().getRetrieveRequestFactory().getEntitySetRequest(
@@ -169,8 +110,8 @@ public class ActionOverloadingTestITCase extends AbstractTestITCase {
assertNotNull(specEmps);
final ODataInvokeResponse<ODataNoContent> specEmpsRes = getClient().getInvokeRequestFactory().
- <ODataNoContent>getInvokeRequest(specEmpBuilder.appendOperationCallSegment(actImp.getName()).build(),
- actImp, parameters).execute();
+ getActionInvokeRequest(specEmpBuilder.appendOperationCallSegment(actionImportName).build(),
+ ODataNoContent.class, parameters).execute();
assertNotNull(specEmpsRes);
assertEquals(204, specEmpsRes.getStatusCode());
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/AsyncTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/AsyncTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/AsyncTestITCase.java
index e9ac0e3..d28bea2 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/AsyncTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/AsyncTestITCase.java
@@ -44,7 +44,7 @@ public class AsyncTestITCase extends AbstractTestITCase {
@Test
public void retrieveEntitySet() throws InterruptedException, ExecutionException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product");
final Future<ODataRetrieveResponse<ODataEntitySet>> futureRes =
client.getRetrieveRequestFactory().getEntitySetRequest(uriBuilder.build()).asyncExecute();
@@ -62,7 +62,7 @@ public class AsyncTestITCase extends AbstractTestITCase {
@Test
public void updateEntity() throws InterruptedException, ExecutionException {
- final URI uri = client.getURIBuilder(testStaticServiceRootURL).
+ final URI uri = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product").appendKeySegment(-10).build();
final ODataRetrieveResponse<ODataEntity> entityRes = client.getRetrieveRequestFactory().
@@ -93,7 +93,7 @@ public class AsyncTestITCase extends AbstractTestITCase {
@Test
public void createMediaEntity() throws Exception {
- URIBuilder builder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car");
+ URIBuilder builder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car");
final String TO_BE_UPDATED = "async buffered stream sample";
final InputStream input = IOUtils.toInputStream(TO_BE_UPDATED);
@@ -119,7 +119,7 @@ public class AsyncTestITCase extends AbstractTestITCase {
? created.getProperties().get(0).getPrimitiveValue().toCastValue(Integer.class)
: created.getProperties().get(1).getPrimitiveValue().toCastValue(Integer.class);
- builder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car").appendKeySegment(id);
+ builder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car").appendKeySegment(id);
final ODataMediaRequest retrieveReq = client.getRetrieveRequestFactory().getMediaEntityRequest(builder.build());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/BatchTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/BatchTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/BatchTestITCase.java
index cc634ef..18ebaad 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/BatchTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/BatchTestITCase.java
@@ -110,7 +110,7 @@ public class BatchTestITCase extends AbstractTestITCase {
URIBuilder targetURI;
ODataEntityCreateRequest<ODataEntity> createReq;
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer");
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer");
for (int i = 1; i <= 2; i++) {
// Create Customer into the changeset
createReq = client.getCUDRequestFactory().getEntityCreateRequest(
@@ -120,14 +120,14 @@ public class BatchTestITCase extends AbstractTestITCase {
changeset.addRequest(createReq);
}
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("WrongEntitySet");
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("WrongEntitySet");
createReq = client.getCUDRequestFactory().getEntityCreateRequest(
targetURI.build(),
getSampleCustomerProfile(105, "Sample customer", false));
createReq.setFormat(ODataPubFormat.JSON);
changeset.addRequest(createReq);
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer");
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer");
for (int i = 3; i <= 4; i++) {
// Create Customer into the changeset
createReq = client.getCUDRequestFactory().getEntityCreateRequest(
@@ -162,7 +162,7 @@ public class BatchTestITCase extends AbstractTestITCase {
final ODataChangeset changeset = streamManager.addChangeset();
ODataEntity customer = getSampleCustomerProfile(20, "sample customer", false);
- URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer");
+ URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer");
// add create request
final ODataEntityCreateRequest<ODataEntity> createReq =
@@ -177,7 +177,7 @@ public class BatchTestITCase extends AbstractTestITCase {
final ODataEntity customerChanges = client.getObjectFactory().newEntity(customer.getTypeName());
customerChanges.addLink(client.getObjectFactory().newEntityNavigationLink(
"Info",
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("CustomerInfo").
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("CustomerInfo").
appendKeySegment(17).build()));
final ODataEntityUpdateRequest<ODataEntity> updateReq = client.getCUDRequestFactory().getEntityUpdateRequest(
@@ -244,7 +244,7 @@ public class BatchTestITCase extends AbstractTestITCase {
info.getProperties().add(client.getObjectFactory().newPrimitiveProperty("Information",
client.getObjectFactory().newPrimitiveValueBuilder().buildString("Sample information about customer 30")));
- URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("CustomerInfo");
+ URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("CustomerInfo");
ODataEntityCreateRequest<ODataEntity> createReq =
client.getCUDRequestFactory().getEntityCreateRequest(uriBuilder.build(), info);
@@ -258,7 +258,7 @@ public class BatchTestITCase extends AbstractTestITCase {
customer.getNavigationLinks().add(
client.getObjectFactory().newEntityNavigationLink("Info", URI.create("$" + createRequestRef)));
- uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer");
+ uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer");
// add create request
createReq = client.getCUDRequestFactory().getEntityCreateRequest(uriBuilder.build(), customer);
@@ -289,7 +289,7 @@ public class BatchTestITCase extends AbstractTestITCase {
assertEquals(201, res.getStatusCode());
assertTrue(res instanceof ODataEntityCreateResponse);
- uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer").appendKeySegment(30);
+ uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer").appendKeySegment(30);
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(
URIUtils.getURI(testStaticServiceRootURL, uriBuilder.build() + "/Info"));
@@ -312,7 +312,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// Add retrieve item
// -------------------------------------------
// prepare URI
- URIBuilder targetURI = client.getURIBuilder(testStaticServiceRootURL);
+ URIBuilder targetURI = client.newURIBuilder(testStaticServiceRootURL);
targetURI.appendEntitySetSegment("Customer").appendKeySegment(-10).
expand("Logins").select("CustomerId,Logins/Username");
@@ -329,7 +329,7 @@ public class BatchTestITCase extends AbstractTestITCase {
final ODataChangeset changeset = streamManager.addChangeset();
// Update Product into the changeset
- targetURI = client.getURIBuilder(testStaticServiceRootURL).
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product").appendKeySegment(-10);
final URI editLink = targetURI.build();
@@ -348,7 +348,7 @@ public class BatchTestITCase extends AbstractTestITCase {
changeset.addRequest(changeReq);
// Create Customer into the changeset
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer");
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer");
final ODataEntity original = getSampleCustomerProfile(1000, "Sample customer", false);
final ODataEntityCreateRequest<ODataEntity> createReq =
client.getCUDRequestFactory().getEntityCreateRequest(targetURI.build(), original);
@@ -357,7 +357,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// Delete customer created above
targetURI =
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer").appendKeySegment(1000);
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customer").appendKeySegment(1000);
final ODataDeleteRequest deleteReq = client.getCUDRequestFactory().getDeleteRequest(targetURI.build());
changeset.addRequest(deleteReq);
// -------------------------------------------
@@ -367,7 +367,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// -------------------------------------------
// prepare URI
- targetURI = client.getURIBuilder(testStaticServiceRootURL).
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product").appendKeySegment(-10);
// create new request
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/CountTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/CountTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/CountTestITCase.java
index 9745ef5..56c7902 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/CountTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/CountTestITCase.java
@@ -31,7 +31,7 @@ public class CountTestITCase extends AbstractTestITCase {
@Test
public void entityCount() {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customer").count();
final ODataValueRequest req = client.getRetrieveRequestFactory().getValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -45,7 +45,7 @@ public class CountTestITCase extends AbstractTestITCase {
@Test
public void invalidAccept() {
- final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customer").count();
final ODataValueRequest req = client.getRetrieveRequestFactory().getValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
[3/4] Invoke request factory re-factoring
Posted by il...@apache.org.
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/EntityCreateTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/EntityCreateTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/EntityCreateTestITCase.java
index db26eee..0d9730e 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/EntityCreateTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/EntityCreateTestITCase.java
@@ -227,7 +227,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
final ODataEntity original = getSampleCustomerProfile(id, "Sample customer", false);
final ODataEntityCreateRequest<ODataEntity> createReq = client.getCUDRequestFactory().getEntityCreateRequest(
- client.getURIBuilder(getServiceRoot()).appendEntitySetSegment("Customer").build(), original);
+ client.newURIBuilder(getServiceRoot()).appendEntitySetSegment("Customer").build(), original);
createReq.setPrefer(client.newPreferences().returnNoContent());
final ODataEntityCreateResponse<ODataEntity> createRes = createReq.execute();
@@ -243,7 +243,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
}
final ODataDeleteResponse deleteRes = client.getCUDRequestFactory().getDeleteRequest(
- client.getURIBuilder(getServiceRoot()).appendEntitySetSegment("Customer").appendKeySegment(id).build()).
+ client.newURIBuilder(getServiceRoot()).appendEntitySetSegment("Customer").appendKeySegment(id).build()).
execute();
assertEquals(204, deleteRes.getStatusCode());
}
@@ -253,7 +253,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
final int id = 2;
final ODataEntity original = getSampleCustomerProfile(id, "Sample customer for issue 135", false);
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot()).appendEntitySetSegment("Customer");
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot()).appendEntitySetSegment("Customer");
final ODataEntityCreateRequest<ODataEntity> createReq =
client.getCUDRequestFactory().getEntityCreateRequest(uriBuilder.build(), original);
createReq.setFormat(ODataPubFormat.JSON_FULL_METADATA);
@@ -267,7 +267,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
fail(e.getMessage());
} finally {
final ODataDeleteResponse deleteRes = client.getCUDRequestFactory().getDeleteRequest(
- client.getURIBuilder(getServiceRoot()).appendEntitySetSegment("Customer").appendKeySegment(id).
+ client.newURIBuilder(getServiceRoot()).appendEntitySetSegment("Customer").appendKeySegment(id).
build()).
execute();
assertEquals(204, deleteRes.getStatusCode());
@@ -294,7 +294,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
client.getObjectFactory().newPrimitiveValueBuilder().buildInt32(id)));
final ODataEntityCreateRequest<ODataEntity> createReq = client.getCUDRequestFactory().getEntityCreateRequest(
- client.getURIBuilder(getServiceRoot()).appendEntitySetSegment("Order").build(), order);
+ client.newURIBuilder(getServiceRoot()).appendEntitySetSegment("Order").build(), order);
createReq.setFormat(format);
original.addLink(client.getObjectFactory().newEntitySetNavigationLink(
@@ -306,7 +306,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
// now, compare the created one with the actual one and go deeply into the associated customer info.....
final ODataEntity actual = compareEntities(getServiceRoot(), format, created, id, null);
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot());
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot());
uriBuilder.appendEntitySetSegment("Customer").appendKeySegment(id).appendEntitySetSegment("Orders");
final ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().
@@ -348,7 +348,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
// now, compare the created one with the actual one and go deeply into the associated customer info.....
final ODataEntity actual = compareEntities(getServiceRoot(), format, created, id, null);
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot());
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot());
uriBuilder.appendEntitySetSegment("Customer").appendKeySegment(id).appendEntitySetSegment("Info");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -464,7 +464,7 @@ public class EntityCreateTestITCase extends AbstractTestITCase {
client.getObjectFactory().newPrimitiveValueBuilder().buildBoolean(false)));
final URIBuilder builder =
- client.getURIBuilder(getServiceRoot()).appendEntitySetSegment("Message");
+ client.newURIBuilder(getServiceRoot()).appendEntitySetSegment("Message");
final ODataEntityCreateRequest<ODataEntity> req = client.getCUDRequestFactory().
getEntityCreateRequest(builder.build(), message);
req.setFormat(format);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/EntityRetrieveTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/EntityRetrieveTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/EntityRetrieveTestITCase.java
index b6943aa..9314d2a 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/EntityRetrieveTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/EntityRetrieveTestITCase.java
@@ -56,7 +56,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
}
private void withInlineEntry(final ODataPubFormat format) {
- final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(getServiceRoot()).
+ final CommonURIBuilder<?> uriBuilder = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Customer").appendKeySegment(-10).expand("Info");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -109,7 +109,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
}
private void withInlineFeed(final ODataPubFormat format) {
- final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(getServiceRoot()).
+ final CommonURIBuilder<?> uriBuilder = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Customer").appendKeySegment(-10).expand("Orders");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -148,7 +148,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
}
private void rawRequest(final ODataPubFormat format) {
- final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(getServiceRoot()).
+ final CommonURIBuilder<?> uriBuilder = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Car").appendKeySegment(16);
final ODataRawRequest req = client.getRetrieveRequestFactory().getRawRequest(uriBuilder.build());
@@ -180,7 +180,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
multiKey.put("FromUsername", "1");
multiKey.put("MessageId", -10);
- final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(getServiceRoot()).
+ final CommonURIBuilder<?> uriBuilder = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Message").appendKeySegment(multiKey);
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -214,7 +214,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
private void checkForETag(final ODataPubFormat format) {
final CommonURIBuilder<?> uriBuilder =
- client.getURIBuilder(getServiceRoot()).appendEntitySetSegment("Product").appendKeySegment(-10);
+ client.newURIBuilder(getServiceRoot()).appendEntitySetSegment("Product").appendKeySegment(-10);
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
req.setFormat(format);
@@ -231,7 +231,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
@Test(expected = IllegalArgumentException.class)
public void issue99() {
- final CommonURIBuilder<?> uriBuilder = client.getURIBuilder(getServiceRoot()).appendEntitySetSegment("Car");
+ final CommonURIBuilder<?> uriBuilder = client.newURIBuilder(getServiceRoot()).appendEntitySetSegment("Car");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
req.setFormat(ODataPubFormat.JSON);
@@ -242,7 +242,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase {
}
private void geospatial(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot()).
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("AllGeoTypesSet").appendKeySegment(-10);
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/EntitySetTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/EntitySetTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/EntitySetTestITCase.java
index 6bcd248..68fb07d 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/EntitySetTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/EntitySetTestITCase.java
@@ -99,7 +99,7 @@ public class EntitySetTestITCase extends AbstractTestITCase {
}
private void readEntitySetWithNextLink(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot());
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot());
uriBuilder.appendEntitySetSegment("Customer");
final ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().
@@ -124,7 +124,7 @@ public class EntitySetTestITCase extends AbstractTestITCase {
}
private void readODataEntitySetIterator(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot());
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot());
uriBuilder.appendEntitySetSegment("Customer");
final ODataEntitySetIteratorRequest<ODataEntitySet, ODataEntity> req =
@@ -147,7 +147,7 @@ public class EntitySetTestITCase extends AbstractTestITCase {
}
private void readWithInlineCount(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot());
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot());
uriBuilder.appendEntitySetSegment("Product").inlineCount(URIBuilder.InlineCount.allpages);
final ODataRawRequest req = client.getRetrieveRequestFactory().getRawRequest(uriBuilder.build());
@@ -161,7 +161,7 @@ public class EntitySetTestITCase extends AbstractTestITCase {
}
private void rawRequest(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot());
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot());
uriBuilder.appendEntitySetSegment("Car");
final ODataRawRequest req = client.getRetrieveRequestFactory().getRawRequest(uriBuilder.build());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/EntityUpdateTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/EntityUpdateTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/EntityUpdateTestITCase.java
index 3e78f60..413dae8 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/EntityUpdateTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/EntityUpdateTestITCase.java
@@ -49,7 +49,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
@Test
public void mergeAsAtom() {
final ODataPubFormat format = ODataPubFormat.ATOM;
- final URI uri = client.getURIBuilder(getServiceRoot()).
+ final URI uri = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Product").appendKeySegment(-10).build();
final String etag = getETag(uri);
final ODataEntity merge = client.getObjectFactory().newEntity(TEST_PRODUCT_TYPE);
@@ -60,7 +60,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
@Test
public void mergeAsJSON() {
final ODataPubFormat format = ODataPubFormat.JSON_FULL_METADATA;
- final URI uri = client.getURIBuilder(getServiceRoot()).
+ final URI uri = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Product").appendKeySegment(-10).build();
final String etag = getETag(uri);
final ODataEntity merge = client.getObjectFactory().newEntity(TEST_PRODUCT_TYPE);
@@ -71,7 +71,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
@Test
public void patchAsAtom() {
final ODataPubFormat format = ODataPubFormat.ATOM;
- final URI uri = client.getURIBuilder(getServiceRoot()).
+ final URI uri = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Product").appendKeySegment(-10).build();
final String etag = getETag(uri);
final ODataEntity patch = client.getObjectFactory().newEntity(TEST_PRODUCT_TYPE);
@@ -82,7 +82,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
@Test
public void patchAsJSON() {
final ODataPubFormat format = ODataPubFormat.JSON_FULL_METADATA;
- final URI uri = client.getURIBuilder(getServiceRoot()).
+ final URI uri = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Product").appendKeySegment(-10).build();
final String etag = getETag(uri);
final ODataEntity patch = client.getObjectFactory().newEntity(TEST_PRODUCT_TYPE);
@@ -93,7 +93,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
@Test
public void replaceAsAtom() {
final ODataPubFormat format = ODataPubFormat.ATOM;
- final ODataEntity changes = read(format, client.getURIBuilder(getServiceRoot()).
+ final ODataEntity changes = read(format, client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Car").appendKeySegment(14).build());
updateEntityDescription(format, changes, UpdateType.REPLACE);
}
@@ -101,7 +101,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
@Test
public void replaceAsJSON() {
final ODataPubFormat format = ODataPubFormat.JSON_FULL_METADATA;
- final ODataEntity changes = read(format, client.getURIBuilder(getServiceRoot()).
+ final ODataEntity changes = read(format, client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Car").appendKeySegment(14).build());
updateEntityDescription(format, changes, UpdateType.REPLACE);
}
@@ -117,7 +117,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
}
public void patchLink(final ODataPubFormat format) throws EdmPrimitiveTypeException {
- final URI uri = client.getURIBuilder(getServiceRoot()).
+ final URI uri = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Customer").appendKeySegment(-10).build();
final ODataEntity patch = client.getObjectFactory().
@@ -127,14 +127,14 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
// ---------------------------------------
// Update to CustomerInfo(12)
// ---------------------------------------
- URI customerInfoURI = client.getURIBuilder(getServiceRoot()).
+ URI customerInfoURI = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("CustomerInfo").appendKeySegment(12).build();
patch.addLink(client.getObjectFactory().newEntityNavigationLink("Info", customerInfoURI));
update(UpdateType.PATCH, patch, format, null);
- customerInfoURI = client.getURIBuilder(getServiceRoot()).
+ customerInfoURI = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Customer").appendKeySegment(-10).appendNavigationSegment("Info").build();
ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(customerInfoURI);
@@ -151,7 +151,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
// ---------------------------------------
patch.getNavigationLinks().clear();
- customerInfoURI = client.getURIBuilder(getServiceRoot()).
+ customerInfoURI = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("CustomerInfo").appendKeySegment(11).build();
read(format, customerInfoURI);
@@ -159,7 +159,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
update(UpdateType.PATCH, patch, format, null);
- customerInfoURI = client.getURIBuilder(getServiceRoot()).
+ customerInfoURI = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Customer").appendKeySegment(-10).appendNavigationSegment("Info").build();
req = client.getRetrieveRequestFactory().getEntityRequest(customerInfoURI);
@@ -178,7 +178,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
final LinkedHashMap<String, Object> multiKey = new LinkedHashMap<String, Object>();
multiKey.put("FromUsername", "1");
multiKey.put("MessageId", -10);
- final ODataEntity message = read(format, client.getURIBuilder(getServiceRoot()).
+ final ODataEntity message = read(format, client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Message").appendKeySegment(multiKey).build());
message.getAssociationLinks().clear();
message.getNavigationLinks().clear();
@@ -222,7 +222,7 @@ public class EntityUpdateTestITCase extends AbstractTestITCase {
@Test
public void concurrentModification() {
- final URI uri = client.getURIBuilder(getServiceRoot()).
+ final URI uri = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Product").appendKeySegment(-10).build();
String etag = getETag(uri);
final ODataEntity product = client.getObjectFactory().newEntity(TEST_PRODUCT_TYPE);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/ErrorTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/ErrorTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/ErrorTestITCase.java
index 21fb8f8..fe8ef61 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/ErrorTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/ErrorTestITCase.java
@@ -38,12 +38,8 @@ import org.apache.olingo.client.api.uri.v3.URIBuilder;
import org.apache.olingo.client.api.v3.ODataClient;
import org.apache.olingo.client.core.communication.request.AbstractODataBasicRequest;
import org.apache.olingo.client.core.communication.response.AbstractODataResponse;
-import org.apache.olingo.client.core.uri.URIUtils;
import org.apache.olingo.commons.api.domain.v3.ODataEntity;
import org.apache.olingo.commons.api.domain.v3.ODataEntitySet;
-import org.apache.olingo.commons.api.edm.Edm;
-import org.apache.olingo.commons.api.edm.EdmEntityContainer;
-import org.apache.olingo.commons.api.edm.EdmFunctionImport;
import org.apache.olingo.commons.api.edm.FullQualifiedName;
import org.apache.olingo.commons.api.format.ODataPubFormat;
import org.junit.Test;
@@ -88,7 +84,7 @@ public class ErrorTestITCase extends AbstractTestITCase {
}
private void stacktraceError(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL);
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL);
uriBuilder.appendEntitySetSegment("Customer");
final ErrorGeneratingRequest errorReq = new ErrorGeneratingRequest(HttpMethod.POST, uriBuilder.build());
@@ -115,7 +111,7 @@ public class ErrorTestITCase extends AbstractTestITCase {
}
private void notfoundError(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL);
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL);
uriBuilder.appendEntitySetSegment("Customer(154)");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -143,16 +139,10 @@ public class ErrorTestITCase extends AbstractTestITCase {
}
private void instreamError(final ODataPubFormat format) {
- final Edm metadata =
- client.getRetrieveRequestFactory().getMetadataRequest(testStaticServiceRootURL).execute().getBody();
- assertNotNull(metadata);
-
- final EdmEntityContainer container = metadata.getSchemas().get(0).getEntityContainer();
- final EdmFunctionImport funcImp = container.getFunctionImport("InStreamErrorGetCustomer");
- final URIBuilder builder = client.getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(URIUtils.operationImportURISegment(container, funcImp.getName()));
+ final URIBuilder builder = client.newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("InStreamErrorGetCustomer");
final ODataInvokeRequest<ODataEntitySet> req =
- client.getInvokeRequestFactory().getInvokeRequest(builder.build(), funcImp.getUnboundFunction(null));
+ client.getInvokeRequestFactory().getFunctionInvokeRequest(builder.build(), ODataEntitySet.class);
req.setFormat(format);
final ODataInvokeResponse<ODataEntitySet> res = req.execute();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/FilterFactoryTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/FilterFactoryTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/FilterFactoryTestITCase.java
index 2b447ad..3f00d2c 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/FilterFactoryTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/FilterFactoryTestITCase.java
@@ -39,7 +39,7 @@ public class FilterFactoryTestITCase extends AbstractTestITCase {
}
private void match(final String entitySet, final URIFilter filter, final int expected) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment(entitySet).filter(filter);
final CommonODataEntitySet feed = client.getRetrieveRequestFactory().getEntitySetRequest(uriBuilder.build()).
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/FilterTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/FilterTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/FilterTestITCase.java
index 7d3bbdb..d14f9e4 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/FilterTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/FilterTestITCase.java
@@ -28,7 +28,7 @@ import org.junit.Test;
public class FilterTestITCase extends AbstractTestITCase {
private void filterQueryTest(final String entity, final String filter, final int expected) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment(entity).filter(filter);
final ODataEntitySet entitySet = client.getRetrieveRequestFactory().getEntitySetRequest(uriBuilder.build()).
execute().getBody();
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/InvokeTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/InvokeTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/InvokeTestITCase.java
index 02edf6e..6b8742f 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/InvokeTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/InvokeTestITCase.java
@@ -39,43 +39,25 @@ import org.apache.olingo.client.api.communication.response.ODataDeleteResponse;
import org.apache.olingo.client.api.communication.response.ODataEntityCreateResponse;
import org.apache.olingo.client.api.communication.response.ODataInvokeResponse;
import org.apache.olingo.client.api.uri.v3.URIBuilder;
-import org.apache.olingo.client.core.uri.URIUtils;
import org.apache.olingo.commons.api.domain.ODataOperation;
-import org.apache.olingo.commons.api.domain.ODataPrimitiveValue;
import org.apache.olingo.commons.api.domain.ODataValue;
import org.apache.olingo.commons.api.domain.v3.ODataEntity;
import org.apache.olingo.commons.api.domain.v3.ODataEntitySet;
import org.apache.olingo.commons.api.domain.v3.ODataProperty;
-import org.apache.olingo.commons.api.edm.Edm;
-import org.apache.olingo.commons.api.edm.EdmAction;
-import org.apache.olingo.commons.api.edm.EdmEntityContainer;
-import org.apache.olingo.commons.api.edm.EdmFunction;
-import org.apache.olingo.commons.api.edm.EdmFunctionImport;
-import org.apache.olingo.commons.api.edm.EdmParameter;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException;
import org.apache.olingo.commons.api.edm.FullQualifiedName;
import org.apache.olingo.commons.api.format.ODataPubFormat;
-import org.apache.olingo.commons.core.edm.EdmTypeInfo;
import org.junit.Test;
public class InvokeTestITCase extends AbstractTestITCase {
private void getWithNoParams(final ODataPubFormat format) {
- final Edm edm = getClient().getRetrieveRequestFactory().
- getMetadataRequest(testStaticServiceRootURL).execute().getBody();
- assertNotNull(edm);
-
- final EdmEntityContainer container = edm.getSchemas().get(0).getEntityContainer();
-
// 1. get primitive value property
- EdmFunctionImport funcImp = container.getFunctionImport("GetPrimitiveString");
- EdmFunction func = funcImp.getUnboundFunction(null);
-
- URIBuilder builder = getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(URIUtils.operationImportURISegment(container, funcImp.getName()));
+ URIBuilder builder = getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("GetPrimitiveString");
ODataInvokeRequest<ODataProperty> req = getClient().getInvokeRequestFactory().
- getInvokeRequest(builder.build(), func);
+ getFunctionInvokeRequest(builder.build(), ODataProperty.class);
req.setFormat(format);
ODataInvokeResponse<ODataProperty> res = req.execute();
assertNotNull(res);
@@ -85,13 +67,10 @@ public class InvokeTestITCase extends AbstractTestITCase {
assertEquals("Foo", property.getPrimitiveValue().toString());
// 2. get collection of complex type property
- funcImp = container.getFunctionImport("EntityProjectionReturnsCollectionOfComplexTypes");
- func = funcImp.getUnboundFunction(null);
+ builder = getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("EntityProjectionReturnsCollectionOfComplexTypes");
- builder = getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(URIUtils.operationImportURISegment(container, funcImp.getName()));
-
- req = getClient().getInvokeRequestFactory().getInvokeRequest(builder.build(), func);
+ req = getClient().getInvokeRequestFactory().getFunctionInvokeRequest(builder.build(), ODataProperty.class);
req.setFormat(format);
res = req.execute();
assertNotNull(res);
@@ -114,26 +93,13 @@ public class InvokeTestITCase extends AbstractTestITCase {
private void getWithParams(final ODataPubFormat format) throws EdmPrimitiveTypeException {
// 1. primitive result
- final Edm edm = getClient().getRetrieveRequestFactory().
- getMetadataRequest(testStaticServiceRootURL).execute().getBody();
- assertNotNull(edm);
-
- final EdmEntityContainer container = edm.getSchemas().get(0).getEntityContainer();
- EdmFunctionImport funcImp = container.getFunctionImport("GetArgumentPlusOne");
-
- URIBuilder builder = getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(URIUtils.operationImportURISegment(container, funcImp.getName()));
-
- EdmFunction function = funcImp.getUnboundFunction(Collections.singletonList("arg1"));
- EdmParameter param = function.getParameter(function.getParameterNames().get(0));
- ODataPrimitiveValue paramValue = getClient().getObjectFactory().newPrimitiveValueBuilder().
- setType(param.getType()).
- setValue(154).
- build();
+ URIBuilder builder = getClient().newURIBuilder(testStaticServiceRootURL).
+ appendOperationCallSegment("GetArgumentPlusOne");
+ ODataValue param = getClient().getObjectFactory().newPrimitiveValueBuilder().buildInt32(154);
final ODataInvokeRequest<ODataProperty> primitiveReq = getClient().getInvokeRequestFactory().
- getInvokeRequest(builder.build(), function,
- Collections.<String, ODataValue>singletonMap(param.getName(), paramValue));
+ getFunctionInvokeRequest(builder.build(), ODataProperty.class,
+ Collections.<String, ODataValue>singletonMap("arg1", param));
primitiveReq.setFormat(format);
final ODataInvokeResponse<ODataProperty> primitiveRes = primitiveReq.execute();
@@ -143,22 +109,13 @@ public class InvokeTestITCase extends AbstractTestITCase {
assertNotNull(property);
assertEquals(Integer.valueOf(155), property.getPrimitiveValue().toCastValue(Integer.class));
- // 2. feed result
- funcImp = container.getFunctionImport("GetSpecificCustomer");
-
- builder = getClient().getURIBuilder(testStaticServiceRootURL).
- appendOperationCallSegment(URIUtils.operationImportURISegment(container, funcImp.getName()));
-
- function = funcImp.getUnboundFunction(Collections.singletonList("Name"));
- param = function.getParameter(function.getParameterNames().get(0));
- paramValue = getClient().getObjectFactory().newPrimitiveValueBuilder().
- setType(param.getType()).
- setValue(StringUtils.EMPTY).
- build();
+ // 2. entity set result
+ builder = getClient().newURIBuilder(testStaticServiceRootURL).appendOperationCallSegment("GetSpecificCustomer");
+ param = getClient().getObjectFactory().newPrimitiveValueBuilder().buildString(StringUtils.EMPTY);
final ODataInvokeRequest<ODataEntitySet> feedReq = getClient().getInvokeRequestFactory().
- getInvokeRequest(builder.build(), function,
- Collections.<String, ODataValue>singletonMap(param.getName(), paramValue));
+ getFunctionInvokeRequest(builder.build(), ODataEntitySet.class,
+ Collections.<String, ODataValue>singletonMap("Name", param));
feedReq.setFormat(format);
final ODataInvokeResponse<ODataEntitySet> feedRes = feedReq.execute();
@@ -199,7 +156,7 @@ public class InvokeTestITCase extends AbstractTestITCase {
employee.getProperties().add(getClient().getObjectFactory().newPrimitiveProperty(
"Title", getClient().getObjectFactory().newPrimitiveValueBuilder().buildString("CEO")));
- final URIBuilder uriBuilder = getClient().getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Person");
+ final URIBuilder uriBuilder = getClient().newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Person");
final ODataEntityCreateRequest<ODataEntity> createReq =
getClient().getCUDRequestFactory().getEntityCreateRequest(uriBuilder.build(), employee);
@@ -213,7 +170,7 @@ public class InvokeTestITCase extends AbstractTestITCase {
}
private void deleteEmployee(final ODataPubFormat format, final Integer id) {
- final URIBuilder uriBuilder = getClient().getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Person").appendKeySegment(id);
final ODataDeleteRequest deleteReq = getClient().getCUDRequestFactory().getDeleteRequest(uriBuilder.build());
@@ -233,24 +190,15 @@ public class InvokeTestITCase extends AbstractTestITCase {
// 1. invoke action bound with the employee just created
final ODataOperation operation = created.getOperations().get(0);
- final Edm edm = getClient().getRetrieveRequestFactory().
- getMetadataRequest(testStaticServiceRootURL).execute().getBody();
- assertNotNull(edm);
-
- final EdmEntityContainer container = edm.getSchemas().get(0).getEntityContainer();
- final EdmAction action = edm.getBoundAction(
- new FullQualifiedName(container.getNamespace(), operation.getTitle()),
- created.getTypeName(), false);
-
final ODataInvokeRequest<ODataNoContent> req = getClient().getInvokeRequestFactory().
- getInvokeRequest(operation.getTarget(), action);
+ getActionInvokeRequest(operation.getTarget(), ODataNoContent.class);
req.setFormat(ODataPubFormat.JSON_FULL_METADATA);
final ODataInvokeResponse<ODataNoContent> res = req.execute();
assertNotNull(res);
assertEquals(204, res.getStatusCode());
// 2. check that invoked action has effectively run
- final URIBuilder uriBuilder = getClient().getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = getClient().newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Person").appendKeySegment(createdId);
final ODataEntityRequest<ODataEntity> retrieveRes =
getClient().getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -266,7 +214,7 @@ public class InvokeTestITCase extends AbstractTestITCase {
@Test
public void boundPostWithParams() throws EdmPrimitiveTypeException {
// 1. read employees and store their current salary
- final URIBuilder builder = getClient().getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder builder = getClient().newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Person").
appendEntitySetSegment("Microsoft.Test.OData.Services.AstoriaDefaultService.Employee");
final URI employeesURI = builder.build();
@@ -281,27 +229,11 @@ public class InvokeTestITCase extends AbstractTestITCase {
assertFalse(preSalaries.isEmpty());
// 2. invoke action bound, with additional parameter
- final Edm edm = getClient().getRetrieveRequestFactory().
- getMetadataRequest(testStaticServiceRootURL).execute().getBody();
- assertNotNull(edm);
-
- final EdmEntityContainer container = edm.getSchemas().get(0).getEntityContainer();
-
- final EdmTypeInfo employeesTypeInfo = new EdmTypeInfo.Builder().setEdm(edm).
- setTypeExpression("Collection(Microsoft.Test.OData.Services.AstoriaDefaultService.Employee)").build();
- final EdmAction action = edm.getBoundAction(
- new FullQualifiedName(container.getNamespace(), "IncreaseSalaries"),
- employeesTypeInfo.getFullQualifiedName(), employeesTypeInfo.isCollection());
-
- final EdmParameter param = action.getParameter(action.getParameterNames().get(1));
- final ODataPrimitiveValue paramValue = getClient().getObjectFactory().newPrimitiveValueBuilder().
- setType(param.getType()).
- setValue(1).
- build();
-
- final ODataInvokeRequest<ODataNoContent> req = getClient().getInvokeRequestFactory().getInvokeRequest(
- builder.appendOperationCallSegment(action.getName()).build(), action,
- Collections.<String, ODataValue>singletonMap(param.getName(), paramValue));
+ final ODataValue param = getClient().getObjectFactory().newPrimitiveValueBuilder().buildInt32(1);
+ final ODataInvokeRequest<ODataNoContent> req = getClient().getInvokeRequestFactory().
+ getActionInvokeRequest(
+ builder.appendOperationCallSegment("IncreaseSalaries").build(), ODataNoContent.class,
+ Collections.<String, ODataValue>singletonMap("n", param));
final ODataInvokeResponse<ODataNoContent> res = req.execute();
assertNotNull(res);
assertEquals(204, res.getStatusCode());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/KeyAsSegmentTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/KeyAsSegmentTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/KeyAsSegmentTestITCase.java
index 7a1bebc..30c2d99 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/KeyAsSegmentTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/KeyAsSegmentTestITCase.java
@@ -39,7 +39,7 @@ public class KeyAsSegmentTestITCase extends AbstractTestITCase {
}
private void read(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testKeyAsSegmentServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testKeyAsSegmentServiceRootURL).
appendEntitySetSegment("Customer").appendKeySegment(-10);
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -90,7 +90,7 @@ public class KeyAsSegmentTestITCase extends AbstractTestITCase {
@Test
public void replaceODataEntityAsAtom() {
final ODataPubFormat format = ODataPubFormat.ATOM;
- final ODataEntity changes = read(format, client.getURIBuilder(testKeyAsSegmentServiceRootURL).
+ final ODataEntity changes = read(format, client.newURIBuilder(testKeyAsSegmentServiceRootURL).
appendEntitySetSegment("Car").appendKeySegment(14).build());
updateEntityDescription(format, changes, UpdateType.REPLACE);
}
@@ -98,7 +98,7 @@ public class KeyAsSegmentTestITCase extends AbstractTestITCase {
@Test
public void replaceODataEntityAsJSON() {
final ODataPubFormat format = ODataPubFormat.JSON_FULL_METADATA;
- final ODataEntity changes = read(format, client.getURIBuilder(testKeyAsSegmentServiceRootURL).
+ final ODataEntity changes = read(format, client.newURIBuilder(testKeyAsSegmentServiceRootURL).
appendEntitySetSegment("Car").appendKeySegment(14).build());
updateEntityDescription(format, changes, UpdateType.REPLACE);
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/LinkTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/LinkTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/LinkTestITCase.java
index 5edf429..54b0774 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/LinkTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/LinkTestITCase.java
@@ -49,7 +49,7 @@ public class LinkTestITCase extends AbstractTestITCase {
}
private ODataLinkCollection doRetrieveLinkURIs(final ODataFormat format, final String linkname) throws IOException {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot()).
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Customer").appendKeySegment(-10);
final ODataLinkCollectionRequest req =
@@ -95,7 +95,7 @@ public class LinkTestITCase extends AbstractTestITCase {
final ODataLink newLink = client.getObjectFactory().
newAssociationLink(URI.create(getServiceRoot() + "/Login('3')"));
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot()).
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Customer").appendKeySegment(-10).appendLinksSegment("Logins");
final ODataLinkCreateRequest req =
@@ -113,7 +113,7 @@ public class LinkTestITCase extends AbstractTestITCase {
assertEquals(Collections.singletonList(newLink.getLink()), after);
assertEquals(204, client.getCUDRequestFactory().getDeleteRequest(
- client.getURIBuilder(getServiceRoot()).appendEntitySetSegment("Customer").
+ client.newURIBuilder(getServiceRoot()).appendEntitySetSegment("Customer").
appendKeySegment(-10).appendLinksSegment("Logins('3')").build()).execute().getStatusCode());
}
@@ -135,7 +135,7 @@ public class LinkTestITCase extends AbstractTestITCase {
ODataLink newLink = client.getObjectFactory().
newAssociationLink(URI.create(getServiceRoot() + "/CustomerInfo(12)"));
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot());
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot());
uriBuilder.appendEntitySetSegment("Customer").appendKeySegment(-10).appendLinksSegment("Info");
ODataLinkUpdateRequest req =
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/MediaEntityTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/MediaEntityTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/MediaEntityTestITCase.java
index 5ae7e9e..7383c1b 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/MediaEntityTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/MediaEntityTestITCase.java
@@ -47,7 +47,7 @@ public class MediaEntityTestITCase extends AbstractTestITCase {
@Test
public void read() throws Exception {
- final URIBuilder builder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder builder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Car").appendKeySegment(12);
final ODataMediaRequest retrieveReq = client.getRetrieveRequestFactory().getMediaEntityRequest(builder.build());
@@ -63,7 +63,7 @@ public class MediaEntityTestITCase extends AbstractTestITCase {
@Test(expected = ODataClientErrorException.class)
public void readWithXmlError() throws Exception {
final URIBuilder builder =
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car").appendKeySegment(12);
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car").appendKeySegment(12);
final ODataMediaRequest retrieveReq = client.getRetrieveRequestFactory().getMediaEntityRequest(builder.build());
retrieveReq.setFormat(ODataMediaFormat.APPLICATION_XML);
@@ -74,7 +74,7 @@ public class MediaEntityTestITCase extends AbstractTestITCase {
@Test(expected = ODataClientErrorException.class)
public void readWithJsonError() throws Exception {
final URIBuilder builder =
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car").appendKeySegment(12);
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car").appendKeySegment(12);
final ODataMediaRequest retrieveReq = client.getRetrieveRequestFactory().getMediaEntityRequest(builder.build());
retrieveReq.setFormat(ODataMediaFormat.APPLICATION_JSON);
@@ -84,7 +84,7 @@ public class MediaEntityTestITCase extends AbstractTestITCase {
private void updateMediaEntity(final ODataPubFormat format, final int id) throws Exception {
final URIBuilder builder =
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car").appendKeySegment(id);
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car").appendKeySegment(id);
final String TO_BE_UPDATED = "new buffered stream sample";
final InputStream input = IOUtils.toInputStream(TO_BE_UPDATED);
@@ -115,7 +115,7 @@ public class MediaEntityTestITCase extends AbstractTestITCase {
}
private void createMediaEntity(final ODataPubFormat format, final InputStream input) throws Exception {
- final URIBuilder builder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car");
+ final URIBuilder builder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car");
final ODataMediaEntityCreateRequest<ODataEntity> createReq =
client.getCUDRequestFactory().getMediaEntityCreateRequest(builder.build(), input);
@@ -163,7 +163,7 @@ public class MediaEntityTestITCase extends AbstractTestITCase {
@Test
public void updateNamedStream() throws Exception {
- URIBuilder builder = client.getURIBuilder(testStaticServiceRootURL).
+ URIBuilder builder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Car").appendKeySegment(16).appendNavigationSegment("Photo");
final String TO_BE_UPDATED = "buffered stream sample";
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/OpenTypeTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/OpenTypeTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/OpenTypeTestITCase.java
index b3490a0..05d8a07 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/OpenTypeTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/OpenTypeTestITCase.java
@@ -53,7 +53,7 @@ public class OpenTypeTestITCase extends AbstractTestITCase {
}
private ODataEntity readRow(final ODataPubFormat format, final String uuid) {
- final URIBuilder builder = getClient().getURIBuilder(testOpenTypeServiceRootURL).
+ final URIBuilder builder = getClient().newURIBuilder(testOpenTypeServiceRootURL).
appendEntitySetSegment("Row").appendKeySegment(UUID.fromString(uuid));
return read(format, builder.build());
}
@@ -139,13 +139,13 @@ public class OpenTypeTestITCase extends AbstractTestITCase {
getClient().getObjectFactory().newComplexProperty("aContact", contactDetails));
final ODataEntityCreateRequest<ODataEntity> createReq = getClient().getCUDRequestFactory().
- getEntityCreateRequest(getClient().getURIBuilder(testOpenTypeServiceRootURL).
+ getEntityCreateRequest(getClient().newURIBuilder(testOpenTypeServiceRootURL).
appendEntitySetSegment("RowIndex").build(), rowIndex);
createReq.setFormat(format);
final ODataEntityCreateResponse<ODataEntity> createRes = createReq.execute();
assertEquals(201, createRes.getStatusCode());
- final URIBuilder builder = getClient().getURIBuilder(testOpenTypeServiceRootURL).
+ final URIBuilder builder = getClient().newURIBuilder(testOpenTypeServiceRootURL).
appendEntitySetSegment("RowIndex").appendKeySegment(id);
rowIndex = read(format, builder.build());
assertNotNull(rowIndex);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/PrimitiveKeysTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/PrimitiveKeysTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/PrimitiveKeysTestITCase.java
index 079439b..73c7d9d 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/PrimitiveKeysTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/PrimitiveKeysTestITCase.java
@@ -34,7 +34,7 @@ public class PrimitiveKeysTestITCase extends AbstractTestITCase {
private void readEntity(final String entityType, final Object key, final ODataPubFormat format) {
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment(entityType).
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment(entityType).
appendKeySegment(key).
build());
req.setFormat(format);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/PropertyRetrieveTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/PropertyRetrieveTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/PropertyRetrieveTestITCase.java
index 7e67e54..0904df8 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/PropertyRetrieveTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/PropertyRetrieveTestITCase.java
@@ -43,7 +43,7 @@ import org.junit.Test;
public class PropertyRetrieveTestITCase extends AbstractTestITCase {
private void retrievePropertyTest(final ODataFormat format, String entitySegment, String structuralSegment) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment(entitySegment).appendPropertySegment(structuralSegment);
final ODataPropertyRequest<ODataProperty> req = client.getRetrieveRequestFactory().
getPropertyRequest(uriBuilder.build());
@@ -209,7 +209,7 @@ public class PropertyRetrieveTestITCase extends AbstractTestITCase {
@Test
public void navigationMediaLink() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendNavigationSegment("Product").appendKeySegment(-7).appendLinksSegment("Photos");
final ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().
getEntitySetRequest(uriBuilder.build());
@@ -233,7 +233,7 @@ public class PropertyRetrieveTestITCase extends AbstractTestITCase {
@Test
public void navigationMediaLinkInvalidQuery() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendNavigationSegment("Product").appendKeySegment(-7).appendLinksSegment("Photo");
final ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().
getEntitySetRequest(uriBuilder.build());
@@ -257,7 +257,7 @@ public class PropertyRetrieveTestITCase extends AbstractTestITCase {
@Test
public void navigationMediaLinkInvalidFormat() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendNavigationSegment("Product").appendKeySegment(-7).appendLinksSegment("Photos");
final ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().
getEntitySetRequest(uriBuilder.build());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/PropertyTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/PropertyTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/PropertyTestITCase.java
index c9c1c00..e1fa1d4 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/PropertyTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/PropertyTestITCase.java
@@ -124,7 +124,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
@Test
public void readCountValue() throws IOException {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot());
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot());
uriBuilder.appendEntitySetSegment("Customer").count();
final ODataValueRequest req = client.getRetrieveRequestFactory().getValueRequest(uriBuilder.build());
@@ -143,7 +143,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
@Test
public void nullNullableProperty() {
- final ODataDeleteResponse res = client.getCUDRequestFactory().getDeleteRequest(client.getURIBuilder(
+ final ODataDeleteResponse res = client.getCUDRequestFactory().getDeleteRequest(client.newURIBuilder(
getServiceRoot()).
appendEntitySetSegment("Order").appendKeySegment(-8).
appendPropertySegment("CustomerId").appendValueSegment().build()).
@@ -153,7 +153,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
@Test(expected = ODataClientErrorException.class)
public void nullNonNullableProperty() {
- client.getCUDRequestFactory().getDeleteRequest(client.getURIBuilder(getServiceRoot()).
+ client.getCUDRequestFactory().getDeleteRequest(client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Driver").appendKeySegment("1").
appendPropertySegment("BirthDate").appendValueSegment().build()).
execute();
@@ -162,7 +162,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
private void updatePropertyValue(final ODataValueFormat format, final UpdateType type)
throws IOException, EdmPrimitiveTypeException {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot()).
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Customer").appendKeySegment(-9).
appendPropertySegment("PrimaryContactInfo").
appendPropertySegment("HomePhone").
@@ -204,7 +204,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
}
private void updateComplexProperty(final ODataFormat format, final UpdateType type) throws IOException {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot()).
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Customer").appendKeySegment(-9).appendPropertySegment("PrimaryContactInfo");
ODataPropertyRequest<ODataProperty> retrieveReq = client.getRetrieveRequestFactory().
@@ -251,7 +251,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
}
private void updateCollectionProperty(final ODataFormat format) throws IOException {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot());
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot());
uriBuilder.appendEntitySetSegment("Customer").appendKeySegment(-10).
appendPropertySegment("PrimaryContactInfo").appendPropertySegment("AlternativeNames");
@@ -299,7 +299,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
}
private void updatePrimitiveProperty(final ODataFormat format) throws IOException, EdmPrimitiveTypeException {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot());
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot());
uriBuilder.appendEntitySetSegment("Customer").appendKeySegment(-9).
appendPropertySegment("PrimaryContactInfo").
appendPropertySegment("HomePhone").appendPropertySegment("PhoneNumber");
@@ -344,7 +344,7 @@ public class PropertyTestITCase extends AbstractTestITCase {
}
private void rawRequest(final ODataFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(getServiceRoot()).
+ final URIBuilder uriBuilder = client.newURIBuilder(getServiceRoot()).
appendEntitySetSegment("Customer").appendKeySegment(-10).appendPropertySegment("BackupContactInfo");
final ODataRawRequest req = client.getRetrieveRequestFactory().getRawRequest(uriBuilder.build());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/PropertyValueTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/PropertyValueTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/PropertyValueTestITCase.java
index 4914eb5..2c8c9d9 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/PropertyValueTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/PropertyValueTestITCase.java
@@ -34,7 +34,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveIntPropertyValueTest() {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product").appendKeySegment(-10).appendPropertySegment("ProductId");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -45,7 +45,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveBooleanPropertyValueTest() {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product").appendKeySegment(-10).appendPropertySegment("ProductId");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -56,7 +56,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveStringPropertyValueTest() {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product").appendKeySegment(-6).appendPropertySegment("Description");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -67,7 +67,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveDatePropertyValueTest() {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product").appendKeySegment(-7).appendPropertySegment(
"NestedComplexConcurrency/ModifiedDate");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
@@ -79,7 +79,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveDecimalPropertyValueTest() {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product").appendKeySegment(-6).appendPropertySegment("Dimensions/Height");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
req.setFormat(ODataValueFormat.TEXT);
@@ -90,7 +90,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveBinaryPropertyValueTest() throws IOException {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendNavigationSegment("ProductPhoto(PhotoId=-3,ProductId=-3)").appendPropertySegment("Photo");
ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
req.setAccept("application/json");
@@ -105,7 +105,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test(expected = ODataClientErrorException.class)
public void retrieveBinaryPropertyValueTestWithAtom() throws IOException {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendNavigationSegment("ProductPhoto(PhotoId=-3,ProductId=-3)").appendPropertySegment("Photo");
ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
req.setAccept("application/atom+xml");
@@ -120,7 +120,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test(expected = IllegalArgumentException.class)
public void retrieveBinaryPropertyValueTestWithXML() throws IOException {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendNavigationSegment("ProductPhoto(PhotoId=-3,ProductId=-3)").appendPropertySegment("Photo");
ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
req.setAccept("application/xml");
@@ -135,7 +135,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveCollectionPropertyValueTest() {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product").appendKeySegment(-7).appendPropertySegment(
"ComplexConcurrency/QueriedDateTime");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
@@ -149,7 +149,7 @@ public class PropertyValueTestITCase extends AbstractTestITCase {
@Test
public void retrieveNullPropertyValueTest() {
- CommonURIBuilder<?> uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ CommonURIBuilder<?> uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Product").appendKeySegment(-10).appendPropertySegment(
"ComplexConcurrency/Token");
final ODataValueRequest req = client.getRetrieveRequestFactory().getPropertyValueRequest(uriBuilder.build());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v3/QueryOptionsTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v3/QueryOptionsTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v3/QueryOptionsTestITCase.java
index 72ea453..1c0f8bd 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v3/QueryOptionsTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v3/QueryOptionsTestITCase.java
@@ -60,7 +60,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
*/
@Test
public void filterOrderby() throws EdmPrimitiveTypeException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Car").filter("(VIN lt 16)");
// 1. check that filtered entity set looks as expected
@@ -100,7 +100,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
*/
@Test
public void format() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customer").appendKeySegment(-10).format("json");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -135,7 +135,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
*/
@Test
public void skiptoken() throws EdmPrimitiveTypeException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL);
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL);
uriBuilder.appendEntitySetSegment("Customer").skipToken("-10");
final ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().
@@ -154,7 +154,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
*/
@Test
public void inlinecount() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car").
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Car").
inlineCount(InlineCount.allpages);
final ODataEntitySetRequest<ODataEntitySet> req = client.getRetrieveRequestFactory().
@@ -170,7 +170,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
*/
@Test
public void select() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customer").appendKeySegment(-10).select("CustomerId,Orders").expand("Orders");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -182,7 +182,7 @@ public class QueryOptionsTestITCase extends AbstractTestITCase {
@Test
public void issue131() {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customer").appendKeySegment(-7).select("Name");
ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/AbstractTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/AbstractTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/AbstractTestITCase.java
index 8fed8f7..32a6e19 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/AbstractTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/AbstractTestITCase.java
@@ -131,7 +131,7 @@ public abstract class AbstractTestITCase extends AbstractBaseTestITCase {
order.getProperties().add(orderShelfLifes);
final ODataEntityCreateRequest<ODataEntity> req = getClient().getCUDRequestFactory().getEntityCreateRequest(
- getClient().getURIBuilder(testStaticServiceRootURL).
+ getClient().newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Orders").build(), order);
req.setFormat(format);
final ODataEntity created = req.execute().getBody();
@@ -139,7 +139,7 @@ public abstract class AbstractTestITCase extends AbstractBaseTestITCase {
assertEquals(2, created.getProperty("OrderShelfLifes").getCollectionValue().size());
final URI deleteURI = created.getEditLink() == null
- ? getClient().getURIBuilder(testStaticServiceRootURL).
+ ? getClient().newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Orders").appendKeySegment(id).build()
: created.getEditLink();
final ODataDeleteRequest deleteReq = getClient().getCUDRequestFactory().getDeleteRequest(deleteURI);
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/AsyncTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/AsyncTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/AsyncTestITCase.java
index bff5993..edeeae5 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/AsyncTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/AsyncTestITCase.java
@@ -46,7 +46,7 @@ public class AsyncTestITCase extends AbstractTestITCase {
@Test
public void clientAsync() throws InterruptedException, ExecutionException {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers");
final Future<ODataRetrieveResponse<ODataEntitySet>> futureRes =
client.getRetrieveRequestFactory().getEntitySetRequest(uriBuilder.build()).asyncExecute();
@@ -63,7 +63,7 @@ public class AsyncTestITCase extends AbstractTestITCase {
}
private void withInlineEntry(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("Customers").appendKeySegment(1).expand("Company");
final ODataEntityRequest<ODataEntity> req = client.getRetrieveRequestFactory().getEntityRequest(uriBuilder.build());
@@ -130,7 +130,7 @@ public class AsyncTestITCase extends AbstractTestITCase {
}
private void asyncOrders(final ODataPubFormat format) {
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).
appendEntitySetSegment("async").appendEntitySetSegment("Orders");
final ODataEntitySetRequest<ODataEntitySet> req =
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/35e89699/fit/src/test/java/org/apache/olingo/fit/v4/BatchTestITCase.java
----------------------------------------------------------------------
diff --git a/fit/src/test/java/org/apache/olingo/fit/v4/BatchTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/v4/BatchTestITCase.java
index ef568b8..daf4ed2 100644
--- a/fit/src/test/java/org/apache/olingo/fit/v4/BatchTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/v4/BatchTestITCase.java
@@ -122,7 +122,7 @@ public class BatchTestITCase extends AbstractTestITCase {
URIBuilder targetURI;
ODataEntityCreateRequest<ODataEntity> createReq;
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
for (int i = 1; i <= 2; i++) {
// Create Customer into the changeset
createReq = client.getCUDRequestFactory().getEntityCreateRequest(targetURI.build(), newOrder(100 + i));
@@ -130,12 +130,12 @@ public class BatchTestITCase extends AbstractTestITCase {
changeset.addRequest(createReq);
}
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("WrongEntitySet");
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("WrongEntitySet");
createReq = client.getCUDRequestFactory().getEntityCreateRequest(targetURI.build(), newOrder(105));
createReq.setFormat(ODataPubFormat.JSON);
changeset.addRequest(createReq);
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
for (int i = 3; i <= 4; i++) {
// Create Customer into the changeset
createReq = client.getCUDRequestFactory().getEntityCreateRequest(targetURI.build(), newOrder(100 + i));
@@ -184,7 +184,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// Add retrieve item
// -------------------------------------------
// prepare URI
- URIBuilder targetURI = client.getURIBuilder(testStaticServiceRootURL);
+ URIBuilder targetURI = client.newURIBuilder(testStaticServiceRootURL);
targetURI.appendEntitySetSegment("UnexistinfEntitySet").appendKeySegment(1);
// create new request
@@ -198,7 +198,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// Add retrieve item
// -------------------------------------------
// prepare URI
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").appendKeySegment(1);
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").appendKeySegment(1);
// create new request
queryReq = client.getRetrieveRequestFactory().getEntityRequest(targetURI.build());
@@ -243,7 +243,7 @@ public class BatchTestITCase extends AbstractTestITCase {
final ODataChangeset changeset = streamManager.addChangeset();
ODataEntity order = newOrder(20);
- final URIBuilder uriBuilder = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
+ final URIBuilder uriBuilder = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
// add create request
final ODataEntityCreateRequest<ODataEntity> createReq =
@@ -258,7 +258,7 @@ public class BatchTestITCase extends AbstractTestITCase {
final ODataEntity customerChanges = client.getObjectFactory().newEntity(order.getTypeName());
customerChanges.addLink(client.getObjectFactory().newEntitySetNavigationLink(
"OrderDetails",
- client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("OrderDetails").
+ client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("OrderDetails").
appendKeySegment(new HashMap<String, Object>() {
private static final long serialVersionUID = 3109256773218160485L;
@@ -328,7 +328,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// Add retrieve item
// -------------------------------------------
// prepare URI
- URIBuilder targetURI = client.getURIBuilder(testStaticServiceRootURL);
+ URIBuilder targetURI = client.newURIBuilder(testStaticServiceRootURL);
targetURI.appendEntitySetSegment("Customers").appendKeySegment(1).
expand("Orders").select("PersonID,Orders/OrderID");
@@ -343,7 +343,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// Add new order with outside item
// -------------------------------------------
// prepare URI
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
final ODataEntity original = newOrder(2000);
final ODataEntityCreateRequest<ODataEntity> createReq =
client.getCUDRequestFactory().getEntityCreateRequest(targetURI.build(), original);
@@ -396,7 +396,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// Add retrieve item
// -------------------------------------------
// prepare URI
- URIBuilder targetURI = client.getURIBuilder(testStaticServiceRootURL);
+ URIBuilder targetURI = client.newURIBuilder(testStaticServiceRootURL);
targetURI.appendEntitySetSegment("Customers").appendKeySegment(1);
// create new request
@@ -412,7 +412,7 @@ public class BatchTestITCase extends AbstractTestITCase {
final ODataChangeset changeset = streamManager.addChangeset();
// Update Customer into the changeset
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").appendKeySegment(1);
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").appendKeySegment(1);
final URI editLink = targetURI.build();
final ODataEntity patch = client.getObjectFactory().newEntity(
@@ -430,7 +430,7 @@ public class BatchTestITCase extends AbstractTestITCase {
changeset.addRequest(changeReq);
// Create Order into the changeset
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Orders");
final ODataEntity original = newOrder(1000);
final ODataEntityCreateRequest<ODataEntity> createReq =
client.getCUDRequestFactory().getEntityCreateRequest(targetURI.build(), original);
@@ -442,7 +442,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// Add retrieve item
// -------------------------------------------
// prepare URI
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").appendKeySegment(1);
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").appendKeySegment(1);
// create new request
queryReq = client.getRetrieveRequestFactory().getEntityRequest(targetURI.build());
@@ -520,7 +520,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// Add retrieve item
// -------------------------------------------
// prepare URI
- URIBuilder targetURI = client.getURIBuilder(testStaticServiceRootURL);
+ URIBuilder targetURI = client.newURIBuilder(testStaticServiceRootURL);
targetURI.appendEntitySetSegment("People").appendKeySegment(5);
// create new request
@@ -534,7 +534,7 @@ public class BatchTestITCase extends AbstractTestITCase {
// Add retrieve item
// -------------------------------------------
// prepare URI
- targetURI = client.getURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").appendKeySegment(1);
+ targetURI = client.newURIBuilder(testStaticServiceRootURL).appendEntitySetSegment("Customers").appendKeySegment(1);
// create new request
queryReq = client.getRetrieveRequestFactory().getEntityRequest(targetURI.build());