Differences From Artifact [fb6dd8b062]:
- File
src/OFHTTPClient.m
— part of check-in
[56a18442e2]
at
2017-09-24 00:59:12
on branch trunk
— Make OFHTTPClient asynchronous
This does not make OFHTTPClientResponse completely asynchronous yet.
Since -[initWithURL:] does not work well with an asynchronous API, it no
longer supports HTTP URLs. However, a new, asynchronous API will be
added as a replacement later on. (user: js, size: 21788) [annotate] [blame] [check-ins using]
To Artifact [e41f9ea835]:
- File src/OFHTTPClient.m — part of check-in [9f1accca4e] at 2017-09-24 02:11:16 on branch trunk — OFObject: Add -[performSelector*] with 3 objects (user: js, size: 21727) [annotate] [blame] [check-ins using]
| ︙ | ︙ | |||
253 254 255 256 257 258 259 | port: [URL port] target: self selector: @selector(socketDidConnect:context: exception:) context: nil]; } | < < < < < < < | 253 254 255 256 257 258 259 260 261 262 263 264 265 266 |
port: [URL port]
target: self
selector: @selector(socketDidConnect:context:
exception:)
context: nil];
}
- (void)createResponseWithSocket: (OFTCPSocket *)socket
{
OFURL *URL = [_request URL];
OFHTTPClientResponse *response;
OFString *connectionHeader;
bool keepAlive;
OFString *location;
|
| ︙ | ︙ | |||
394 395 396 397 398 399 400 | if (_status / 100 != 2) @throw [OFHTTPRequestFailedException exceptionWithRequest: _request response: response]; _client->_inProgress = false; | | > > > | | | 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 |
if (_status / 100 != 2)
@throw [OFHTTPRequestFailedException
exceptionWithRequest: _request
response: response];
_client->_inProgress = false;
[_client->_delegate performSelector: @selector(client:didPerformRequest:
response:)
withObject: _client
withObject: _request
withObject: response
afterDelay: 0];
}
- (bool)handleFirstLine: (OFString *)line
{
/*
* It's possible that the write succeeds on a connection that is
* keep-alive, but the connection has already been closed by the remote
|
| ︙ | ︙ |