public final class ServiceRequestContextBuilder extends AbstractRequestContextBuilder
ServiceRequestContext. Note that it is not usually required to create a new context by
yourself, because Armeria will always provide a context object for you. However, it may be useful in some
cases such as unit testing.alloc, authority, eventLoop, fakeChannel, id, isRequestStartTimeSet, localAddress, meterRegistry, method, method, path, query, remoteAddress, request, requestStartTimeMicros, requestStartTimeNanos, rpcRequest, sessionProtocol, sslSession@Deprecated public static ServiceRequestContextBuilder of(HttpRequest request)
ServiceRequestContext.builder(HttpRequest).ServiceRequestContextBuilder created from the specified HttpRequest.public ServiceRequestContextBuilder service(HttpService service)
public ServiceRequestContextBuilder route(Route route)
Route of the request. If not set, it is auto-generated from the request.public ServiceRequestContextBuilder routingResult(RoutingResult routingResult)
RoutingResult of the request. If not set, it is auto-generated from the request.public ServiceRequestContextBuilder proxiedAddresses(ProxiedAddresses proxiedAddresses)
ProxiedAddresses of the request.
If not set, ServiceRequestContext.proxiedAddresses() will return null.public ServiceRequestContextBuilder serverConfigurator(Consumer<? super ServerBuilder> serverConfigurator)
Consumer that configures the given ServerBuilder. The Consumers added
by this method will be invoked when this builder builds a dummy Server. This may be useful
when you need to update the default settings of the dummy Server,
such as ServerBuilder.maxRequestLength(long).public ServiceRequestContext build()
ServiceRequestContext created with the properties of this builder.public ServiceRequestContextBuilder meterRegistry(MeterRegistry meterRegistry)
AbstractRequestContextBuilderMeterRegistry. If not set, NoopMeterRegistry is used.meterRegistry in class AbstractRequestContextBuilderpublic ServiceRequestContextBuilder eventLoop(io.netty.channel.EventLoop eventLoop)
AbstractRequestContextBuilderEventLoop that handles the request.
If not set, one of the CommonPools.workerGroup() is used.eventLoop in class AbstractRequestContextBuilderpublic ServiceRequestContextBuilder alloc(io.netty.buffer.ByteBufAllocator alloc)
AbstractRequestContextBuilderByteBufAllocator. If not set, ByteBufAllocator.DEFAULT is used.alloc in class AbstractRequestContextBuilderpublic ServiceRequestContextBuilder sessionProtocol(SessionProtocol sessionProtocol)
AbstractRequestContextBuilderSessionProtocol of the request.sessionProtocol in class AbstractRequestContextBuilderpublic ServiceRequestContextBuilder id(RequestId id)
AbstractRequestContextBuilderid in class AbstractRequestContextBuilderpublic ServiceRequestContextBuilder remoteAddress(InetSocketAddress remoteAddress)
AbstractRequestContextBuilder"127.0.0.1" or "::1").remoteAddress in class AbstractRequestContextBuilderpublic ServiceRequestContextBuilder localAddress(InetSocketAddress localAddress)
AbstractRequestContextBuilder"127.0.0.1" or "::1").localAddress in class AbstractRequestContextBuilderpublic ServiceRequestContextBuilder sslSession(SSLSession sslSession)
AbstractRequestContextBuilderSSLSession of the connection. If the current SessionProtocol is not TLS,
the TLS version of the current SessionProtocol will be set automatically. For example,
SessionProtocol.H2C will be automatically upgraded to SessionProtocol.H2.
Note that upgrading the current SessionProtocol may trigger an IllegalArgumentException,
as described in AbstractRequestContextBuilder.sessionProtocol(SessionProtocol).sslSession in class AbstractRequestContextBuilderpublic ServiceRequestContextBuilder requestStartTime(long requestStartTimeNanos, long requestStartTimeMicros)
AbstractRequestContextBuilderrequestStartTime in class AbstractRequestContextBuilderrequestStartTimeNanos - the System.nanoTime() value when the request started.requestStartTimeMicros - the number of microseconds since the epoch when the request started.Copyright © 2020 LeanCloud. All rights reserved.