twisted.web._newclient.HTTP11ClientProtocol(Protocol)
class documentationtwisted.web._newclient
(View In Hierarchy)
HTTP11ClientProtocol
is an implementation of the HTTP 1.1 client protocol. It supports as few
features as possible.
Method | __init__ | Undocumented |
Method | state | Undocumented |
Method | request | Issue request over self.transport and return a
Deferred
which will fire with a Response instance
or an error. |
Method | dataReceived | Handle some stuff from some place. |
Method | connectionLost | The underlying transport went away. If appropriate, notify the parser object. |
Method | abort | Close the connection and cause all outstanding request
Deferred s
to fire with an error. |
Instance Variable | _parser | After a request is issued, the HTTPClientParser
to which received data making up the response to that request is delivered. |
Instance Variable | _finishedRequest | After a request is issued, the Deferred which
will fire when a Response object
corresponding to that request is available. This allows HTTP11ClientProtocol
to fail the request if there is a connection or parsing problem. |
Instance Variable | _currentRequest | After a request is issued, the Request
instance used to make that request. This allows HTTP11ClientProtocol
to stop request generation if necessary (for example, if the connection is
lost). |
Instance Variable | _transportProxy | After a request is issued, the TransportProxyProducer
to which _parser is connected. This allows
_parser to pause and resume the transport in a way which HTTP11ClientProtocol
can exert some control over. |
Instance Variable | _responseDeferred | After a request is issued, the Deferred from
_parser which will fire with a Response when one
has been received. This is eventually chained with
_finishedRequest , but only in certain cases to avoid double
firing that Deferred. |
Instance Variable | _state | Indicates what state this HTTP11ClientProtocol
instance is in with respect to transmission of a request and reception of a
response. This may be one of the following strings:
str ) |
Instance Variable | _abortDeferreds | A list of Deferred instances that will fire when the
connection is lost. |
Method | _finishResponse | Called by an HTTPClientParser
to indicate that it has parsed a complete response. |
Method | _finishResponse_WAITING | Undocumented |
Method | _disconnectParser | If there is still a parser, call its connectionLost method
with the given reason. If there is not, do nothing. |
Method | _giveUp | Lose the underlying connection and disconnect the parser with the given
Failure . |
Method | _connectionLost_QUIESCENT | Nothing is currently happening. Move to the
'CONNECTION_LOST' state but otherwise do nothing. |
Method | _connectionLost_GENERATION_FAILED | The connection was in an inconsistent state. Move to the
'CONNECTION_LOST' state but otherwise do nothing. |
Method | _connectionLost_TRANSMITTING | Fail the Deferred for
the current request, notify the request object that it does not need to
continue transmitting itself, and move to the
'CONNECTION_LOST' state. |
Method | _connectionLost_TRANSMITTING_AFTER_RECEIVING_RESPONSE | Move to the 'CONNECTION_LOST' state. |
Method | _connectionLost_WAITING | No summary |
Method | _connectionLost_ABORTING | Disconnect the response parser with a ConnectionAborted
failure, and move to the 'CONNECTION_LOST' state. |
Inherited from Protocol:
Method | logPrefix | Return a prefix matching the class name, to identify log messages related to this protocol instance. |
Inherited from BaseProtocol (via Protocol):
Method | makeConnection | Make a connection to a transport and a server. |
Method | connectionMade | Called when a connection is made. |
HTTPClientParser
to which received data making up the response to that request is delivered.
Deferred
which
will fire when a Response
object
corresponding to that request is available. This allows HTTP11ClientProtocol
to fail the request if there is a connection or parsing problem.
Request
instance used to make that request. This allows HTTP11ClientProtocol
to stop request generation if necessary (for example, if the connection is
lost).
TransportProxyProducer
to which _parser
is connected. This allows
_parser
to pause and resume the transport in a way which HTTP11ClientProtocol
can exert some control over.
HTTP11ClientProtocol
instance is in with respect to transmission of a request and reception of a
response. This may be one of the following strings:
HTTP11ClientProtocol
instances start in. Nothing is happening: no request is being sent and
no response is being received or expected.
request
),
the instance moves to this state. Request.writeTo
has been used to start to send a request but it has not yet finished.
str
)
Issue request
over self.transport
and return a
Deferred
which will fire with a Response
instance
or an error.
Parameters | request | The object defining the parameters of the request to issue. (type: Request ) |
Returns | The deferred may errback with RequestGenerationFailed
if the request was not fully written to the transport due to a local error.
It may errback with RequestTransmissionFailed
if it was not fully written to the transport due to a network error. It
may errback with ResponseFailed
if the request was sent (not necessarily received) but some or all of the
response was lost. It may errback with RequestNotSent
if it is not possible to send any more requests using this HTTP11ClientProtocol . (type: Deferred ) |
Called by an HTTPClientParser
to indicate that it has parsed a complete response.
Parameters | rest | A bytes giving any trailing bytes which were given to the HTTPClientParser
which were not part of the response it was parsing. |
If there is still a parser, call its connectionLost
method
with the given reason. If there is not, do nothing.
Lose the underlying connection and disconnect the parser with the given
Failure
.
Use this method instead of calling the transport's loseConnection method directly otherwise random things will break.
The underlying transport went away. If appropriate, notify the parser object.
Nothing is currently happening. Move to the
'CONNECTION_LOST'
state but otherwise do nothing.
The connection was in an inconsistent state. Move to the
'CONNECTION_LOST'
state but otherwise do nothing.
Fail the Deferred
for
the current request, notify the request object that it does not need to
continue transmitting itself, and move to the
'CONNECTION_LOST'
state.
Move to the 'CONNECTION_LOST'
state.
Disconnect the response parser so that it can propagate the event as
necessary (for example, to call an application protocol's
connectionLost
method, or to fail a request Deferred
) and
move to the 'CONNECTION_LOST'
state.
Disconnect the response parser with a ConnectionAborted
failure, and move to the 'CONNECTION_LOST'
state.