protected abstract class HTTPConduit.WrappedOutputStream extends AbstractThresholdOutputStream
Modifier and Type | Field and Description |
---|---|
protected CacheAndWriteOutputStream |
cachedStream
This field contains the output stream with which we cache
the request.
|
protected boolean |
cachingForRetransmission
This boolean is true if the request must be cached.
|
protected boolean |
chunking
If we are going to be chunking, we won't flush till close which causes
new chunks, small network packets, etc..
|
protected String |
conduitName |
protected Message |
outMessage |
protected URI |
url |
buffer, threshold
allowFlush, wrappedStream, written
Modifier | Constructor and Description |
---|---|
protected |
WrappedOutputStream(HTTPConduit.WrappedOutputStream wos) |
protected |
WrappedOutputStream(Message outMessage,
boolean possibleRetransmit,
boolean isChunking,
int chunkThreshold,
String conduitName,
URI url) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
authorizationRetransmit()
This method performs a retransmit for authorization information.
|
void |
close()
Perform any actions required on stream closure (handle response etc.)
|
protected abstract void |
closeInputStream() |
protected int |
doProcessResponseCode() |
protected abstract HttpsURLConnectionInfo |
getHttpsURLConnectionInfo() |
protected abstract InputStream |
getInputStream() |
protected String |
getMethod() |
protected abstract InputStream |
getPartialResponse() |
protected abstract int |
getResponseCode() |
protected abstract String |
getResponseMessage() |
protected void |
handleHeadersTrustCaching() |
protected void |
handleHttpRetryException(HttpRetryException e) |
protected void |
handleNoOutput() |
protected void |
handleResponse()
This procedure is called on the close of the output stream so
we are ready to handle the response from the connection.
|
protected abstract void |
handleResponseAsync() |
protected void |
handleResponseInternal() |
protected void |
handleResponseOnWorkqueue(boolean allowCurrentThread,
boolean forceWQ) |
protected void |
handleRetransmits()
This procedure handles all retransmits, if any.
|
protected void |
makeTrustDecision()
This call must take place before anything is written to the
URLConnection.
|
protected void |
onFirstWrite()
Perform any actions required on stream flush (freeze headers,
reset output stream ...
|
protected boolean |
processRetransmit()
This function processes any retransmits at the direction of redirections
or "unauthorized" responses.
|
protected void |
propagateConduit(Exchange exchange,
Message in) |
protected boolean |
redirectRetransmit() |
protected void |
retransmit(String newURL) |
protected abstract void |
retransmitStream() |
protected abstract void |
setFixedLengthStreamingMode(int i) |
protected abstract void |
setProtocolHeaders() |
protected abstract void |
setupNewConnection(String newURL) |
protected abstract void |
setupWrappedStream() |
void |
thresholdNotReached() |
protected abstract void |
updateCookiesBeforeRetransmit() |
protected abstract void |
updateResponseHeaders(Message inMessage) |
protected abstract boolean |
usingProxy() |
thresholdReached, unBuffer, write, write
allowFlush, flush, write
protected boolean cachingForRetransmission
protected final boolean chunking
protected CacheAndWriteOutputStream cachedStream
protected Message outMessage
protected String conduitName
protected URI url
protected WrappedOutputStream(Message outMessage, boolean possibleRetransmit, boolean isChunking, int chunkThreshold, String conduitName, URI url)
protected WrappedOutputStream(HTTPConduit.WrappedOutputStream wos)
public void thresholdNotReached()
thresholdNotReached
in class AbstractThresholdOutputStream
protected abstract void setupWrappedStream() throws IOException
IOException
protected abstract HttpsURLConnectionInfo getHttpsURLConnectionInfo() throws IOException
IOException
protected abstract void setProtocolHeaders() throws IOException
IOException
protected abstract void setFixedLengthStreamingMode(int i)
protected abstract int getResponseCode() throws IOException
IOException
protected abstract String getResponseMessage() throws IOException
IOException
protected abstract void updateResponseHeaders(Message inMessage) throws IOException
IOException
protected abstract void handleResponseAsync() throws IOException
IOException
protected abstract void closeInputStream() throws IOException
IOException
protected abstract boolean usingProxy()
protected abstract InputStream getInputStream() throws IOException
IOException
protected abstract InputStream getPartialResponse() throws IOException
IOException
protected abstract void setupNewConnection(String newURL) throws IOException
IOException
protected abstract void retransmitStream() throws IOException
IOException
protected abstract void updateCookiesBeforeRetransmit() throws IOException
IOException
protected void handleNoOutput() throws IOException
IOException
protected void handleResponseOnWorkqueue(boolean allowCurrentThread, boolean forceWQ) throws IOException
IOException
protected void retransmit(String newURL) throws IOException
IOException
protected void onFirstWrite() throws IOException
onFirstWrite
in class AbstractWrappedOutputStream
IOException
protected String getMethod()
protected void handleHeadersTrustCaching() throws IOException
IOException
public void close() throws IOException
close
in interface Closeable
close
in interface AutoCloseable
close
in class AbstractThresholdOutputStream
IOException
protected void handleRetransmits() throws IOException
IOException
protected boolean processRetransmit() throws IOException
IOException
protected boolean redirectRetransmit() throws IOException
IOException
protected boolean authorizationRetransmit() throws IOException
IOException
protected void handleResponse() throws IOException
IOException
protected int doProcessResponseCode() throws IOException
IOException
protected void handleResponseInternal() throws IOException
IOException
protected void handleHttpRetryException(HttpRetryException e) throws IOException
IOException
protected void makeTrustDecision() throws IOException
IOException
- This exception is thrown if trust cannot be
established by the configured MessageTrustDecider.MessageTrustDecider
Apache CXF