mirror of https://github.com/aria2/aria2
2010-06-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Renamed member variables. Removed unused member variable. * src/AbstractProxyRequestCommand.cc * src/FtpInitiateConnectionCommand.cc * src/FtpNegotiationCommand.cc * src/HttpConnection.cc * src/HttpConnection.h * src/HttpInitiateConnectionCommand.ccpull/1/head
parent
8742959320
commit
f8590aa5b9
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,13 @@
|
|||
2010-06-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
|
||||
|
||||
Renamed member variables. Removed unused member variable.
|
||||
* src/AbstractProxyRequestCommand.cc
|
||||
* src/FtpInitiateConnectionCommand.cc
|
||||
* src/FtpNegotiationCommand.cc
|
||||
* src/HttpConnection.cc
|
||||
* src/HttpConnection.h
|
||||
* src/HttpInitiateConnectionCommand.cc
|
||||
|
||||
2010-06-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
|
||||
|
||||
Removed HandleRegistry
|
||||
|
|
|
@ -64,7 +64,7 @@ AbstractProxyRequestCommand::AbstractProxyRequestCommand
|
|||
:
|
||||
AbstractCommand(cuid, req, fileEntry, requestGroup, e, s),
|
||||
_proxyRequest(proxyRequest),
|
||||
_httpConnection(new HttpConnection(cuid, s, getOption().get()))
|
||||
_httpConnection(new HttpConnection(cuid, s))
|
||||
{
|
||||
setTimeout(getOption()->getAsInt(PREF_CONNECT_TIMEOUT));
|
||||
disableReadCheckSocket();
|
||||
|
|
|
@ -104,7 +104,7 @@ Command* FtpInitiateConnectionCommand::createNextCommand
|
|||
// Use GET for FTP via HTTP proxy.
|
||||
getRequest()->setMethod(Request::METHOD_GET);
|
||||
SharedHandle<HttpConnection> hc
|
||||
(new HttpConnection(getCuid(), getSocket(), getOption().get()));
|
||||
(new HttpConnection(getCuid(), getSocket()));
|
||||
|
||||
HttpRequestCommand* c =
|
||||
new HttpRequestCommand(getCuid(), getRequest(), getFileEntry(),
|
||||
|
@ -136,7 +136,7 @@ Command* FtpInitiateConnectionCommand::createNextCommand
|
|||
// Use GET for FTP via HTTP proxy.
|
||||
getRequest()->setMethod(Request::METHOD_GET);
|
||||
SharedHandle<HttpConnection> hc
|
||||
(new HttpConnection(getCuid(), pooledSocket, getOption().get()));
|
||||
(new HttpConnection(getCuid(), pooledSocket));
|
||||
|
||||
HttpRequestCommand* c =
|
||||
new HttpRequestCommand(getCuid(), getRequest(), getFileEntry(),
|
||||
|
|
|
@ -598,7 +598,7 @@ bool FtpNegotiationCommand::resolveProxy()
|
|||
_dataSocket->establishConnection(_proxyAddr, proxyReq->getPort());
|
||||
disableReadCheckSocket();
|
||||
setWriteCheckSocket(_dataSocket);
|
||||
_http.reset(new HttpConnection(getCuid(), _dataSocket, getOption().get()));
|
||||
_http.reset(new HttpConnection(getCuid(), _dataSocket));
|
||||
_sequence = SEQ_SEND_TUNNEL_REQUEST;
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -65,12 +65,10 @@ HttpRequestEntry::HttpRequestEntry
|
|||
|
||||
HttpRequestEntry::~HttpRequestEntry() {}
|
||||
|
||||
HttpConnection::HttpConnection(cuid_t cuid,
|
||||
const SocketHandle& socket,
|
||||
const Option* op):
|
||||
cuid(cuid), socket(socket),
|
||||
HttpConnection::HttpConnection(cuid_t cuid, const SocketHandle& socket):
|
||||
_cuid(cuid), _socket(socket),
|
||||
_socketBuffer(socket),
|
||||
option(op), logger(LogFactory::getInstance())
|
||||
_logger(LogFactory::getInstance())
|
||||
{}
|
||||
|
||||
std::string HttpConnection::eraseConfidentialInfo(const std::string& request)
|
||||
|
@ -95,45 +93,45 @@ std::string HttpConnection::eraseConfidentialInfo(const std::string& request)
|
|||
void HttpConnection::sendRequest(const SharedHandle<HttpRequest>& httpRequest)
|
||||
{
|
||||
std::string request = httpRequest->createRequest();
|
||||
if(logger->info()) {
|
||||
logger->info(MSG_SENDING_REQUEST,
|
||||
util::itos(cuid).c_str(),
|
||||
eraseConfidentialInfo(request).c_str());
|
||||
if(_logger->info()) {
|
||||
_logger->info(MSG_SENDING_REQUEST,
|
||||
util::itos(_cuid).c_str(),
|
||||
eraseConfidentialInfo(request).c_str());
|
||||
}
|
||||
_socketBuffer.pushStr(request);
|
||||
_socketBuffer.send();
|
||||
SharedHandle<HttpRequestEntry> entry(new HttpRequestEntry(httpRequest));
|
||||
outstandingHttpRequests.push_back(entry);
|
||||
_outstandingHttpRequests.push_back(entry);
|
||||
}
|
||||
|
||||
void HttpConnection::sendProxyRequest
|
||||
(const SharedHandle<HttpRequest>& httpRequest)
|
||||
{
|
||||
std::string request = httpRequest->createProxyRequest();
|
||||
if(logger->info()) {
|
||||
logger->info(MSG_SENDING_REQUEST,
|
||||
util::itos(cuid).c_str(),
|
||||
eraseConfidentialInfo(request).c_str());
|
||||
if(_logger->info()) {
|
||||
_logger->info(MSG_SENDING_REQUEST,
|
||||
util::itos(_cuid).c_str(),
|
||||
eraseConfidentialInfo(request).c_str());
|
||||
}
|
||||
_socketBuffer.pushStr(request);
|
||||
_socketBuffer.send();
|
||||
SharedHandle<HttpRequestEntry> entry(new HttpRequestEntry(httpRequest));
|
||||
outstandingHttpRequests.push_back(entry);
|
||||
_outstandingHttpRequests.push_back(entry);
|
||||
}
|
||||
|
||||
SharedHandle<HttpResponse> HttpConnection::receiveResponse()
|
||||
{
|
||||
if(outstandingHttpRequests.empty()) {
|
||||
if(_outstandingHttpRequests.empty()) {
|
||||
throw DL_ABORT_EX(EX_NO_HTTP_REQUEST_ENTRY_FOUND);
|
||||
}
|
||||
HttpRequestEntryHandle entry = outstandingHttpRequests.front();
|
||||
HttpRequestEntryHandle entry = _outstandingHttpRequests.front();
|
||||
HttpHeaderProcessorHandle proc = entry->getHttpHeaderProcessor();
|
||||
|
||||
unsigned char buf[512];
|
||||
size_t size = sizeof(buf);
|
||||
socket->peekData(buf, size);
|
||||
_socket->peekData(buf, size);
|
||||
if(size == 0) {
|
||||
if(socket->wantRead() || socket->wantWrite()) {
|
||||
if(_socket->wantRead() || _socket->wantWrite()) {
|
||||
return SharedHandle<HttpResponse>();
|
||||
} else {
|
||||
throw DL_RETRY_EX(EX_INVALID_RESPONSE);
|
||||
|
@ -141,31 +139,31 @@ SharedHandle<HttpResponse> HttpConnection::receiveResponse()
|
|||
}
|
||||
proc->update(buf, size);
|
||||
if(!proc->eoh()) {
|
||||
socket->readData(buf, size);
|
||||
_socket->readData(buf, size);
|
||||
return SharedHandle<HttpResponse>();
|
||||
}
|
||||
size_t putbackDataLength = proc->getPutBackDataLength();
|
||||
size -= putbackDataLength;
|
||||
socket->readData(buf, size);
|
||||
if(logger->info()) {
|
||||
logger->info(MSG_RECEIVE_RESPONSE,
|
||||
util::itos(cuid).c_str(), proc->getHeaderString().c_str());
|
||||
_socket->readData(buf, size);
|
||||
if(_logger->info()) {
|
||||
_logger->info(MSG_RECEIVE_RESPONSE,
|
||||
util::itos(_cuid).c_str(), proc->getHeaderString().c_str());
|
||||
}
|
||||
SharedHandle<HttpHeader> httpHeader = proc->getHttpResponseHeader();
|
||||
SharedHandle<HttpResponse> httpResponse(new HttpResponse());
|
||||
httpResponse->setCuid(cuid);
|
||||
httpResponse->setCuid(_cuid);
|
||||
httpResponse->setHttpHeader(httpHeader);
|
||||
httpResponse->setHttpRequest(entry->getHttpRequest());
|
||||
|
||||
outstandingHttpRequests.pop_front();
|
||||
_outstandingHttpRequests.pop_front();
|
||||
|
||||
return httpResponse;
|
||||
}
|
||||
|
||||
bool HttpConnection::isIssued(const SharedHandle<Segment>& segment) const
|
||||
{
|
||||
for(HttpRequestEntries::const_iterator itr = outstandingHttpRequests.begin(),
|
||||
eoi = outstandingHttpRequests.end(); itr != eoi; ++itr) {
|
||||
for(HttpRequestEntries::const_iterator itr = _outstandingHttpRequests.begin(),
|
||||
eoi = _outstandingHttpRequests.end(); itr != eoi; ++itr) {
|
||||
SharedHandle<HttpRequest> httpRequest = (*itr)->getHttpRequest();
|
||||
if(httpRequest->getSegment() == segment) {
|
||||
return true;
|
||||
|
@ -176,10 +174,10 @@ bool HttpConnection::isIssued(const SharedHandle<Segment>& segment) const
|
|||
|
||||
SharedHandle<HttpRequest> HttpConnection::getFirstHttpRequest() const
|
||||
{
|
||||
if(outstandingHttpRequests.empty()) {
|
||||
if(_outstandingHttpRequests.empty()) {
|
||||
return SharedHandle<HttpRequest>();
|
||||
} else {
|
||||
return outstandingHttpRequests.front()->getHttpRequest();
|
||||
return _outstandingHttpRequests.front()->getHttpRequest();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -79,19 +79,17 @@ typedef std::deque<HttpRequestEntryHandle> HttpRequestEntries;
|
|||
|
||||
class HttpConnection {
|
||||
private:
|
||||
cuid_t cuid;
|
||||
SharedHandle<SocketCore> socket;
|
||||
cuid_t _cuid;
|
||||
SharedHandle<SocketCore> _socket;
|
||||
SocketBuffer _socketBuffer;
|
||||
const Option* option;
|
||||
Logger* logger;
|
||||
const Option* _option;
|
||||
Logger* _logger;
|
||||
|
||||
HttpRequestEntries outstandingHttpRequests;
|
||||
HttpRequestEntries _outstandingHttpRequests;
|
||||
|
||||
std::string eraseConfidentialInfo(const std::string& request);
|
||||
public:
|
||||
HttpConnection(cuid_t cuid,
|
||||
const SharedHandle<SocketCore>& socket,
|
||||
const Option* op);
|
||||
HttpConnection(cuid_t cuid, const SharedHandle<SocketCore>& socket);
|
||||
|
||||
/**
|
||||
* Sends Http request.
|
||||
|
|
|
@ -98,7 +98,7 @@ Command* HttpInitiateConnectionCommand::createNextCommand
|
|||
command = c;
|
||||
} else if(proxyMethod == V_GET) {
|
||||
SharedHandle<HttpConnection> httpConnection
|
||||
(new HttpConnection(getCuid(), getSocket(), getOption().get()));
|
||||
(new HttpConnection(getCuid(), getSocket()));
|
||||
HttpRequestCommand* c = new HttpRequestCommand(getCuid(),
|
||||
getRequest(),
|
||||
getFileEntry(),
|
||||
|
@ -115,7 +115,7 @@ Command* HttpInitiateConnectionCommand::createNextCommand
|
|||
}
|
||||
} else {
|
||||
SharedHandle<HttpConnection> httpConnection
|
||||
(new HttpConnection(getCuid(), pooledSocket, getOption().get()));
|
||||
(new HttpConnection(getCuid(), pooledSocket));
|
||||
HttpRequestCommand* c = new HttpRequestCommand(getCuid(),
|
||||
getRequest(),
|
||||
getFileEntry(),
|
||||
|
@ -143,7 +143,7 @@ Command* HttpInitiateConnectionCommand::createNextCommand
|
|||
setSocket(pooledSocket);
|
||||
}
|
||||
SharedHandle<HttpConnection> httpConnection
|
||||
(new HttpConnection(getCuid(), getSocket(), getOption().get()));
|
||||
(new HttpConnection(getCuid(), getSocket()));
|
||||
HttpRequestCommand* c =
|
||||
new HttpRequestCommand(getCuid(), getRequest(), getFileEntry(),
|
||||
getRequestGroup(),
|
||||
|
|
Loading…
Reference in New Issue