public boolean contains(HttpHeader header, String value) { for (int i=0;i<_fields.size();i++) { HttpField f=_fields.get(i); if (f.getHeader()==header && contains(f,value)) return true; } return false; }
public boolean contains(String name, String value) { for (int i=0;i<_fields.size();i++) { HttpField f=_fields.get(i); if (f.getName().equalsIgnoreCase(name) && contains(f,value)) return true; } return false; }
private void initializeRetryAfterMillis(Result result) { HttpFields headers = result.getResponse().getHeaders(); if (headers.contains(HttpHeader.RETRY_AFTER)) { try { int seconds = Integer.parseInt(headers.get(HttpHeader.RETRY_AFTER)); if (seconds >= 0) { retryAfterMillis = Optional.of(TimeUnit.SECONDS.toMillis(seconds)); } } catch (NumberFormatException e) { // retryAfterMillis stays empty } } }
private void initializeRetryAfterMillis(Result result) { HttpFields headers = result.getResponse().getHeaders(); if (headers.contains(HttpHeader.RETRY_AFTER)) { try { int seconds = Integer.parseInt(headers.get(HttpHeader.RETRY_AFTER)); if (seconds >= 0) { retryAfterMillis = Optional.of(TimeUnit.SECONDS.toMillis(seconds)); } } catch (NumberFormatException e) { // retryAfterMillis stays empty } } }
protected boolean expects100Continue(Request request) { return request.getHeaders().contains(HttpHeader.EXPECT, HttpHeaderValue.CONTINUE.asString()); }
@Override public boolean accept(Request request, Response response) { boolean is100 = response.getStatus() == HttpStatus.CONTINUE_100; boolean expect100 = request.getHeaders().contains(HttpHeader.EXPECT, HttpHeaderValue.CONTINUE.asString()); boolean handled100 = request.getAttributes().containsKey(ATTRIBUTE); return (is100 || expect100) && !handled100; }
public void onRequest(MetaData.Request request) { _requests.incrementAndGet(); _request.setTimeStamp(System.currentTimeMillis()); HttpFields fields = _response.getHttpFields(); if (_configuration.getSendDateHeader() && !fields.contains(HttpHeader.DATE)) fields.put(_connector.getServer().getDateField()); _request.setMetaData(request); }
private void copyIfAbsent(HttpRequest oldRequest, Request newRequest, HttpHeader header) { HttpField field = oldRequest.getHeaders().getField(header); if (field != null && !newRequest.getHeaders().contains(header)) newRequest.getHeaders().put(field); }
@Override public boolean accept(Request request, Response response) { boolean expect100 = request.getHeaders().contains(HttpHeader.EXPECT, HttpHeaderValue.CONTINUE.asString()); HttpConversation conversation = client.getConversation(request.getConversationID(), false); boolean handled100 = conversation != null && conversation.getAttribute(ATTRIBUTE) != null; return expect100 && !handled100; }
@Override public boolean accept(Request request, Response response) { boolean expect100 = request.getHeaders().contains(HttpHeader.EXPECT, HttpHeaderValue.CONTINUE.asString()); HttpConversation conversation = client.getConversation(request.getConversationID(), false); boolean handled100 = conversation != null && conversation.getAttribute(ATTRIBUTE) != null; return expect100 && !handled100; }
@Override public boolean headerComplete() { _requests.incrementAndGet(); HttpFields fields = _response.getHttpFields(); switch (_version) { case HTTP_0_9: break; case HTTP_1_0: if (_configuration.getSendDateHeader() && !fields.contains(HttpHeader.DATE)) _response.getHttpFields().add(_connector.getServer().getDateField()); break; case HTTP_1_1: if (_configuration.getSendDateHeader() && !fields.contains(HttpHeader.DATE)) _response.getHttpFields().add(_connector.getServer().getDateField()); if (_expect) { badMessage(HttpStatus.EXPECTATION_FAILED_417,null); return true; } break; default: throw new IllegalStateException(); } return true; }
public void onRequest(MetaData.Request request) { _requests.incrementAndGet(); _request.setTimeStamp(System.currentTimeMillis()); HttpFields fields = _response.getHttpFields(); if (_configuration.getSendDateHeader() && !fields.contains(HttpHeader.DATE)) fields.put(_connector.getServer().getDateField()); long idleTO=_configuration.getIdleTimeout(); _oldIdleTimeout=getIdleTimeout(); if (idleTO>=0 && _oldIdleTimeout!=idleTO) setIdleTimeout(idleTO); request.setTrailerSupplier(_trailerSupplier); _request.setMetaData(request); _request.setSecure(HttpScheme.HTTPS.is(request.getURI().getScheme())); notifyRequestBegin(_request); if (LOG.isDebugEnabled()) LOG.debug("REQUEST for {} on {}{}{} {} {}{}{}",request.getURIString(),this,System.lineSeparator(), request.getMethod(),request.getURIString(),request.getHttpVersion(),System.lineSeparator(), request.getFields()); }
if (acceptable.isEmpty() && !baseRequest.getHttpFields().contains(HttpHeader.ACCEPT))
persistent = getRequest().getHttpFields().contains(HttpHeader.CONNECTION, HttpHeaderValue.KEEP_ALIVE.asString()); if (!persistent) persistent = HttpMethod.CONNECT.is(getRequest().getMethod()); persistent = !getRequest().getHttpFields().contains(HttpHeader.CONNECTION, HttpHeaderValue.CLOSE.asString()); if (!persistent) persistent = HttpMethod.CONNECT.is(getRequest().getMethod());
persistent = getRequest().getHttpFields().contains(HttpHeader.CONNECTION, HttpHeaderValue.KEEP_ALIVE.asString()); if (!persistent) persistent = HttpMethod.CONNECT.is(getRequest().getMethod()); persistent = !getRequest().getHttpFields().contains(HttpHeader.CONNECTION, HttpHeaderValue.CLOSE.asString()); if (!persistent) persistent = HttpMethod.CONNECT.is(getRequest().getMethod());
boolean keepAlive = responseHeaders.contains(HttpHeader.CONNECTION, HttpHeaderValue.KEEP_ALIVE.asString()); boolean connect = HttpMethod.CONNECT.is(exchange.getRequest().getMethod()); if (!keepAlive && !connect) if (responseHeaders.contains(HttpHeader.CONNECTION, HttpHeaderValue.CLOSE.asString())) closeReason = "http/1.1";
private void extractContentParameters() if (_metaData!=null && getHttpFields().contains(HttpHeader.CONTENT_ENCODING)) throw new BadMessageException(HttpStatus.NOT_IMPLEMENTED_501,"Unsupported Content-Encoding");
persistent = getRequest().getHttpFields().contains(HttpHeader.CONNECTION, HttpHeaderValue.KEEP_ALIVE.asString()); if (!persistent) persistent = HttpMethod.CONNECT.is(getRequest().getMethod()); persistent = !getRequest().getHttpFields().contains(HttpHeader.CONNECTION, HttpHeaderValue.CLOSE.asString()); if (!persistent) persistent = HttpMethod.CONNECT.is(getRequest().getMethod());
if (!newRequest.getHeaders().contains(name, value)) newRequest.header(name, value);