Class ResponseProtocolCompliance
- java.lang.Object
-
- org.apache.http.impl.client.cache.ResponseProtocolCompliance
-
@Contract(threading=IMMUTABLE) class ResponseProtocolCompliance extends java.lang.Object
- Since:
- 4.1
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
UNEXPECTED_100_CONTINUE
private static java.lang.String
UNEXPECTED_PARTIAL_CONTENT
-
Constructor Summary
Constructors Constructor Description ResponseProtocolCompliance()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private boolean
backendResponseMustNotHaveBody(org.apache.http.HttpRequest request, org.apache.http.HttpResponse backendResponse)
private void
consumeBody(org.apache.http.HttpResponse response)
private void
ensure200ForOPTIONSRequestWithNoBodyHasContentLengthZero(org.apache.http.HttpRequest request, org.apache.http.HttpResponse response)
private void
ensure206ContainsDateHeader(org.apache.http.HttpResponse response)
private void
ensure304DoesNotContainExtraEntityHeaders(org.apache.http.HttpResponse response)
private void
ensurePartialContentIsNotSentToAClientThatDidNotRequestIt(org.apache.http.HttpRequest request, org.apache.http.HttpResponse response)
void
ensureProtocolCompliance(HttpRequestWrapper request, org.apache.http.HttpResponse response)
When we get a response from a down stream server (Origin Server) we attempt to see if it is HTTP 1.1 Compliant and if not, attempt to make it so.private void
identityIsNotUsedInContentEncoding(org.apache.http.HttpResponse response)
private void
removeResponseTransferEncoding(org.apache.http.HttpResponse response)
private void
requestDidNotExpect100ContinueButResponseIsOne(HttpRequestWrapper request, org.apache.http.HttpResponse response)
private void
transferEncodingIsNotReturnedTo1_0Client(HttpRequestWrapper request, org.apache.http.HttpResponse response)
private void
warningsWithNonMatchingWarnDatesAreRemoved(org.apache.http.HttpResponse response)
-
-
-
Field Detail
-
UNEXPECTED_100_CONTINUE
private static final java.lang.String UNEXPECTED_100_CONTINUE
- See Also:
- Constant Field Values
-
UNEXPECTED_PARTIAL_CONTENT
private static final java.lang.String UNEXPECTED_PARTIAL_CONTENT
- See Also:
- Constant Field Values
-
-
Method Detail
-
ensureProtocolCompliance
public void ensureProtocolCompliance(HttpRequestWrapper request, org.apache.http.HttpResponse response) throws java.io.IOException
When we get a response from a down stream server (Origin Server) we attempt to see if it is HTTP 1.1 Compliant and if not, attempt to make it so.- Parameters:
request
- TheHttpRequest
that generated an origin hit and responseresponse
- TheHttpResponse
from the origin server- Throws:
java.io.IOException
- Bad things happened
-
consumeBody
private void consumeBody(org.apache.http.HttpResponse response) throws java.io.IOException
- Throws:
java.io.IOException
-
warningsWithNonMatchingWarnDatesAreRemoved
private void warningsWithNonMatchingWarnDatesAreRemoved(org.apache.http.HttpResponse response)
-
identityIsNotUsedInContentEncoding
private void identityIsNotUsedInContentEncoding(org.apache.http.HttpResponse response)
-
ensure206ContainsDateHeader
private void ensure206ContainsDateHeader(org.apache.http.HttpResponse response)
-
ensurePartialContentIsNotSentToAClientThatDidNotRequestIt
private void ensurePartialContentIsNotSentToAClientThatDidNotRequestIt(org.apache.http.HttpRequest request, org.apache.http.HttpResponse response) throws java.io.IOException
- Throws:
java.io.IOException
-
ensure200ForOPTIONSRequestWithNoBodyHasContentLengthZero
private void ensure200ForOPTIONSRequestWithNoBodyHasContentLengthZero(org.apache.http.HttpRequest request, org.apache.http.HttpResponse response)
-
ensure304DoesNotContainExtraEntityHeaders
private void ensure304DoesNotContainExtraEntityHeaders(org.apache.http.HttpResponse response)
-
backendResponseMustNotHaveBody
private boolean backendResponseMustNotHaveBody(org.apache.http.HttpRequest request, org.apache.http.HttpResponse backendResponse)
-
requestDidNotExpect100ContinueButResponseIsOne
private void requestDidNotExpect100ContinueButResponseIsOne(HttpRequestWrapper request, org.apache.http.HttpResponse response) throws java.io.IOException
- Throws:
java.io.IOException
-
transferEncodingIsNotReturnedTo1_0Client
private void transferEncodingIsNotReturnedTo1_0Client(HttpRequestWrapper request, org.apache.http.HttpResponse response)
-
removeResponseTransferEncoding
private void removeResponseTransferEncoding(org.apache.http.HttpResponse response)
-
-