Public Types | |
typedef LLXMLRPCTransaction::Status | Status |
Public Member Functions | |
Impl (const std::string &uri, XMLRPC_REQUEST request, bool useGzip) | |
Impl (const std::string &uri, const std::string &method, LLXMLRPCValue params, bool useGzip) | |
~Impl () | |
bool | process () |
void | setStatus (Status code, const std::string &message="", const std::string &uri="") |
void | setCurlStatus (CURLcode) |
Public Attributes | |
LLCurlEasyRequest * | mCurlRequest |
Status | mStatus |
CURLcode | mCurlCode |
std::string | mStatusMessage |
std::string | mStatusURI |
LLCurl::TransferInfo | mTransferInfo |
std::string | mURI |
char * | mRequestText |
int | mRequestTextSize |
std::string | mProxyAddress |
std::string | mResponseText |
XMLRPC_REQUEST | mResponse |
Private Member Functions | |
void | init (XMLRPC_REQUEST request, bool useGzip) |
Static Private Member Functions | |
static size_t | curlDownloadCallback (char *data, size_t size, size_t nmemb, void *user_data) |
Definition at line 149 of file llxmlrpctransaction.cpp.
Definition at line 152 of file llxmlrpctransaction.cpp.
LLXMLRPCTransaction::Impl::Impl | ( | const std::string & | uri, | |
XMLRPC_REQUEST | request, | |||
bool | useGzip | |||
) |
Definition at line 189 of file llxmlrpctransaction.cpp.
References init().
LLXMLRPCTransaction::Impl::Impl | ( | const std::string & | uri, | |
const std::string & | method, | |||
LLXMLRPCValue | params, | |||
bool | useGzip | |||
) |
Definition at line 201 of file llxmlrpctransaction.cpp.
References LLXMLRPCValue::getValue(), init(), and request().
LLXMLRPCTransaction::Impl::~Impl | ( | ) |
Definition at line 273 of file llxmlrpctransaction.cpp.
References mCurlRequest, mRequestText, and mResponse.
bool LLXMLRPCTransaction::Impl::process | ( | ) |
Definition at line 288 of file llxmlrpctransaction.cpp.
References LLXMLRPCValue::asInt(), LLXMLRPCValue::asString(), LLTimer::getElapsedTimeF32(), LLCurlEasyRequest::getErrorString(), LLCurlEasyRequest::getResult(), LLXMLRPCValue::isValid(), llendl, llwarns, MAX_PROCESSING_TIME, mCurlCode, mCurlRequest, mResponse, mResponseText, mStatus, mTransferInfo, mURI, NULL, LLCurlEasyRequest::perform(), setCurlStatus(), setStatus(), LLXMLRPCTransaction::StatusComplete, LLXMLRPCTransaction::StatusCURLError, LLXMLRPCTransaction::StatusNotStarted, LLXMLRPCTransaction::StatusOtherError, LLXMLRPCTransaction::StatusStarted, and LLXMLRPCTransaction::StatusXMLRPCError.
Referenced by LLXMLRPCTransaction::process().
void LLXMLRPCTransaction::Impl::setStatus | ( | Status | code, | |
const std::string & | message = "" , |
|||
const std::string & | uri = "" | |||
) |
Definition at line 387 of file llxmlrpctransaction.cpp.
References mStatus, mStatusMessage, mStatusURI, LLXMLRPCTransaction::StatusComplete, LLXMLRPCTransaction::StatusDownloading, LLXMLRPCTransaction::StatusNotStarted, and LLXMLRPCTransaction::StatusStarted.
Referenced by curlDownloadCallback(), init(), process(), and setCurlStatus().
void LLXMLRPCTransaction::Impl::setCurlStatus | ( | CURLcode | code | ) |
Definition at line 446 of file llxmlrpctransaction.cpp.
References mCurlCode, setStatus(), and LLXMLRPCTransaction::StatusCURLError.
Referenced by process().
void LLXMLRPCTransaction::Impl::init | ( | XMLRPC_REQUEST | request, | |
bool | useGzip | |||
) | [private] |
Definition at line 220 of file llxmlrpctransaction.cpp.
References curlDownloadCallback(), LLControlGroup::getBOOL(), LLControlGroup::getS32(), LLControlGroup::getString(), gSavedSettings, mCurlRequest, mProxyAddress, mRequestText, mRequestTextSize, mURI, S32, LLCurlEasyRequest::sendRequest(), LLCurlEasyRequest::setopt(), LLCurlEasyRequest::setoptString(), setStatus(), LLCurlEasyRequest::setWriteCallback(), LLCurlEasyRequest::slist_append(), and LLXMLRPCTransaction::StatusOtherError.
Referenced by Impl().
size_t LLXMLRPCTransaction::Impl::curlDownloadCallback | ( | char * | data, | |
size_t | size, | |||
size_t | nmemb, | |||
void * | user_data | |||
) | [static, private] |
Definition at line 489 of file llxmlrpctransaction.cpp.
References LLXMLRPCTransaction::impl, mResponseText, mStatus, n, setStatus(), LLXMLRPCTransaction::StatusDownloading, and LLXMLRPCTransaction::StatusStarted.
Referenced by init().
Definition at line 154 of file llxmlrpctransaction.cpp.
Definition at line 156 of file llxmlrpctransaction.cpp.
Referenced by curlDownloadCallback(), process(), setStatus(), LLXMLRPCTransaction::status(), and LLXMLRPCTransaction::transferRate().
CURLcode LLXMLRPCTransaction::Impl::mCurlCode |
Definition at line 157 of file llxmlrpctransaction.cpp.
Referenced by process(), setCurlStatus(), and LLXMLRPCTransaction::status().
std::string LLXMLRPCTransaction::Impl::mStatusMessage |
Definition at line 158 of file llxmlrpctransaction.cpp.
Referenced by setStatus(), and LLXMLRPCTransaction::statusMessage().
std::string LLXMLRPCTransaction::Impl::mStatusURI |
Definition at line 159 of file llxmlrpctransaction.cpp.
Referenced by setStatus(), and LLXMLRPCTransaction::statusURI().
Definition at line 160 of file llxmlrpctransaction.cpp.
Referenced by process(), and LLXMLRPCTransaction::transferRate().
std::string LLXMLRPCTransaction::Impl::mURI |
std::string LLXMLRPCTransaction::Impl::mProxyAddress |
std::string LLXMLRPCTransaction::Impl::mResponseText |
Definition at line 168 of file llxmlrpctransaction.cpp.
Referenced by curlDownloadCallback(), process(), and LLXMLRPCTransaction::transferRate().
Definition at line 169 of file llxmlrpctransaction.cpp.
Referenced by process(), LLXMLRPCTransaction::response(), LLXMLRPCTransaction::responseValue(), and ~Impl().