Class CoreHttpRequest
- java.lang.Object
-
- com.couchbase.client.core.msg.BaseRequest<CoreHttpResponse>
-
- com.couchbase.client.core.endpoint.http.CoreHttpRequest
-
- All Implemented Interfaces:
Encodable<com.couchbase.client.core.deps.io.netty.handler.codec.http.FullHttpRequest>
,NonChunkedHttpRequest<CoreHttpResponse>
,Request<CoreHttpResponse>
@Internal public class CoreHttpRequest extends BaseRequest<CoreHttpResponse> implements NonChunkedHttpRequest<CoreHttpResponse>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CoreHttpRequest.Builder
Builder for dynamic HTTP requests
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description String
bucket()
Returns the name of the bucket this request is scoped to, or null if not scoped to a bucket.static CoreHttpRequest.Builder
builder(CoreCommonOptions options, CoreContext coreContext, com.couchbase.client.core.deps.io.netty.handler.codec.http.HttpMethod method, CoreHttpPath path, RequestTarget target)
boolean
bypassExceptionTranslation()
If true, a non-2xx HTTP status code must be reported as anHttpStatusCodeException
.CoreHttpResponse
decode(com.couchbase.client.core.deps.io.netty.handler.codec.http.FullHttpResponse response, HttpChannelContext channelContext)
com.couchbase.client.core.deps.io.netty.handler.codec.http.FullHttpRequest
encode()
CompletableFuture<CoreHttpResponse>
exec(Core core)
boolean
idempotent()
Returns if the given request is idempotent or not.Map<String,Object>
serviceContext()
Returns contextual information for each individual service.ServiceType
serviceType()
The service type of this request.NodeIdentifier
target()
Returns the node that should service this request, or null to let the service locator decide.String
toString()
-
Methods inherited from class com.couchbase.client.core.msg.BaseRequest
absoluteTimeout, cancel, cancellationReason, cancelled, completed, context, createdAt, fail, failed, id, requestSpan, response, retryStrategy, succeed, succeeded, timeout, timeoutElapsed, timeoutRegistration
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.couchbase.client.core.msg.Request
absoluteTimeout, cancel, cancel, cancellationReason, cancelled, completed, context, createdAt, fail, failed, id, name, operationId, requestSpan, response, retryStrategy, succeed, succeeded, timeout, timeoutElapsed, timeoutRegistration
-
-
-
-
Method Detail
-
builder
public static CoreHttpRequest.Builder builder(CoreCommonOptions options, CoreContext coreContext, com.couchbase.client.core.deps.io.netty.handler.codec.http.HttpMethod method, CoreHttpPath path, RequestTarget target)
-
exec
public CompletableFuture<CoreHttpResponse> exec(Core core)
-
encode
public com.couchbase.client.core.deps.io.netty.handler.codec.http.FullHttpRequest encode()
-
decode
public CoreHttpResponse decode(com.couchbase.client.core.deps.io.netty.handler.codec.http.FullHttpResponse response, HttpChannelContext channelContext)
- Specified by:
decode
in interfaceNonChunkedHttpRequest<CoreHttpResponse>
-
serviceType
public ServiceType serviceType()
Description copied from interface:Request
The service type of this request.- Specified by:
serviceType
in interfaceRequest<CoreHttpResponse>
- Returns:
- the service type for this request.
-
idempotent
public boolean idempotent()
Description copied from interface:Request
Returns if the given request is idempotent or not.By default, this method always returns false for data consistency reasons. Only specific idempotent operations should override this default since it impacts retry handling quite a bit. DO NOT SET THIS TO TRUE ON MUTATING OPERATIONS!
- Specified by:
idempotent
in interfaceRequest<CoreHttpResponse>
- Returns:
- true if idempotent.
-
target
public NodeIdentifier target()
Description copied from interface:Request
Returns the node that should service this request, or null to let the service locator decide.- Specified by:
target
in interfaceRequest<CoreHttpResponse>
- Returns:
- (nullable) node the request should be dispatched to, or null to let the service locator decide.
-
bucket
public String bucket()
Description copied from interface:Request
Returns the name of the bucket this request is scoped to, or null if not scoped to a bucket.- Specified by:
bucket
in interfaceRequest<CoreHttpResponse>
- Returns:
- (nullable) name of the bucket this request is scoped to, or null if not scoped to a bucket.
-
serviceContext
public Map<String,Object> serviceContext()
Description copied from interface:Request
Returns contextual information for each individual service.- Specified by:
serviceContext
in interfaceRequest<CoreHttpResponse>
- Overrides:
serviceContext
in classBaseRequest<CoreHttpResponse>
- Returns:
- the service context.
-
bypassExceptionTranslation
public boolean bypassExceptionTranslation()
Description copied from interface:NonChunkedHttpRequest
If true, a non-2xx HTTP status code must be reported as anHttpStatusCodeException
. This lets users see the raw HTTP response when making their own HTTP requests with CouchbaseHttpClient.If false, the message handler may throw a domain-specific exception instead.
- Specified by:
bypassExceptionTranslation
in interfaceNonChunkedHttpRequest<CoreHttpResponse>
-
-