com.oracle.bmc.nosql.internal.http.QueryConverter Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of oci-java-sdk-nosql Show documentation
Show all versions of oci-java-sdk-nosql Show documentation
This project contains the SDK used for Oracle Cloud Infrastructure Nosql
/**
* Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
* This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
*/
package com.oracle.bmc.nosql.internal.http;
import com.oracle.bmc.http.internal.ResponseHelper;
import com.oracle.bmc.nosql.model.*;
import com.oracle.bmc.nosql.requests.*;
import com.oracle.bmc.nosql.responses.*;
import org.apache.commons.lang3.Validate;
@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20190828")
@lombok.extern.slf4j.Slf4j
public class QueryConverter {
private static final com.oracle.bmc.http.internal.ResponseConversionFunctionFactory
RESPONSE_CONVERSION_FACTORY =
new com.oracle.bmc.http.internal.ResponseConversionFunctionFactory();
public static com.oracle.bmc.nosql.requests.QueryRequest interceptRequest(
com.oracle.bmc.nosql.requests.QueryRequest request) {
return request;
}
public static com.oracle.bmc.http.internal.WrappedInvocationBuilder fromRequest(
com.oracle.bmc.http.internal.RestClient client,
com.oracle.bmc.nosql.requests.QueryRequest request) {
Validate.notNull(request, "request instance is required");
Validate.notNull(request.getQueryDetails(), "queryDetails is required");
com.oracle.bmc.http.internal.WrappedWebTarget target =
client.getBaseTarget().path("/20190828").path("query");
if (request.getLimit() != null) {
target =
target.queryParam(
"limit",
com.oracle.bmc.util.internal.HttpUtils.attemptEncodeQueryParam(
request.getLimit()));
}
if (request.getPage() != null) {
target =
target.queryParam(
"page",
com.oracle.bmc.util.internal.HttpUtils.attemptEncodeQueryParam(
request.getPage()));
}
com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = target.request();
ib.accept(javax.ws.rs.core.MediaType.APPLICATION_JSON);
if (request.getOpcRequestId() != null) {
ib.header("opc-request-id", request.getOpcRequestId());
}
return ib;
}
public static com.google.common.base.Function<
javax.ws.rs.core.Response, com.oracle.bmc.nosql.responses.QueryResponse>
fromResponse() {
final com.google.common.base.Function<
javax.ws.rs.core.Response, com.oracle.bmc.nosql.responses.QueryResponse>
transformer =
new com.google.common.base.Function<
javax.ws.rs.core.Response,
com.oracle.bmc.nosql.responses.QueryResponse>() {
@Override
public com.oracle.bmc.nosql.responses.QueryResponse apply(
javax.ws.rs.core.Response rawResponse) {
LOG.trace(
"Transform function invoked for com.oracle.bmc.nosql.responses.QueryResponse");
com.google.common.base.Function<
javax.ws.rs.core.Response,
com.oracle.bmc.http.internal.WithHeaders<
QueryResultCollection>>
responseFn =
RESPONSE_CONVERSION_FACTORY.create(
QueryResultCollection.class);
com.oracle.bmc.http.internal.WithHeaders
response = responseFn.apply(rawResponse);
javax.ws.rs.core.MultivaluedMap headers =
response.getHeaders();
com.oracle.bmc.nosql.responses.QueryResponse.Builder builder =
com.oracle.bmc.nosql.responses.QueryResponse.builder();
builder.queryResultCollection(response.getItem());
com.google.common.base.Optional>
opcNextPageHeader =
com.oracle.bmc.http.internal.HeaderUtils.get(
headers, "opc-next-page");
if (opcNextPageHeader.isPresent()) {
builder.opcNextPage(
com.oracle.bmc.http.internal.HeaderUtils.toValue(
"opc-next-page",
opcNextPageHeader.get().get(0),
String.class));
}
com.google.common.base.Optional>
opcRequestIdHeader =
com.oracle.bmc.http.internal.HeaderUtils.get(
headers, "opc-request-id");
if (opcRequestIdHeader.isPresent()) {
builder.opcRequestId(
com.oracle.bmc.http.internal.HeaderUtils.toValue(
"opc-request-id",
opcRequestIdHeader.get().get(0),
String.class));
}
com.oracle.bmc.nosql.responses.QueryResponse responseWrapper =
builder.build();
ResponseHelper.closeResponseSilentlyIfNotBuffered(rawResponse);
return responseWrapper;
}
};
return transformer;
}
}