EarlyRespondingRequestContext(Channel channel, MeterRegistry meterRegistry, SessionProtocol sessionProtocol, HttpMethod method, String path, @Nullable String query, Request request) { super(meterRegistry, sessionProtocol, method, path, query, request); this.channel = requireNonNull(channel, "channel"); requestLog = new DefaultRequestLog(this); }
/** * Creates a new instance. * * @param sessionProtocol the {@link SessionProtocol} of the invocation * @param request the request associated with this context */ public DefaultClientRequestContext( EventLoop eventLoop, MeterRegistry meterRegistry, SessionProtocol sessionProtocol, Endpoint endpoint, HttpMethod method, String path, @Nullable String query, @Nullable String fragment, ClientOptions options, Request request) { super(meterRegistry, sessionProtocol, method, path, query, request); this.eventLoop = requireNonNull(eventLoop, "eventLoop"); this.options = requireNonNull(options, "options"); this.endpoint = requireNonNull(endpoint, "endpoint"); this.fragment = fragment; log = new DefaultRequestLog(this); writeTimeoutMillis = options.defaultWriteTimeoutMillis(); responseTimeoutMillis = options.defaultResponseTimeoutMillis(); maxResponseLength = options.defaultMaxResponseLength(); final HttpHeaders headers = options.getOrElse(ClientOption.HTTP_HEADERS, HttpHeaders.EMPTY_HEADERS); if (!headers.isEmpty()) { createAdditionalHeadersIfAbsent().set(headers); } runThreadLocalContextCustomizer(); }
this.clientAddress = requireNonNull(clientAddress, "clientAddress"); log = new DefaultRequestLog(this); if (requestStartTimeSet) { log.startRequest(ch, sessionProtocol, sslSession, requestStartTimeNanos, requestStartTimeMicros);
private DefaultClientRequestContext(DefaultClientRequestContext ctx, Request request) { super(ctx.meterRegistry(), ctx.sessionProtocol(), ctx.method(), ctx.path(), ctx.query(), request); eventLoop = ctx.eventLoop(); options = ctx.options(); endpoint = ctx.endpoint(); fragment = ctx.fragment(); log = new DefaultRequestLog(this); writeTimeoutMillis = ctx.writeTimeoutMillis(); responseTimeoutMillis = ctx.responseTimeoutMillis(); maxResponseLength = ctx.maxResponseLength(); final HttpHeaders additionalHeaders = ctx.additionalRequestHeaders(); if (!additionalHeaders.isEmpty()) { createAdditionalHeadersIfAbsent().set(additionalHeaders); } for (final Iterator<Attribute<?>> i = ctx.attrs(); i.hasNext();) { addAttr(i.next()); } runThreadLocalContextCustomizer(); }