diff options
author | Tank_Master <tank.master@phoenixviewer.com> | 2014-03-10 12:07:59 -0700 |
---|---|---|
committer | Tank_Master <tank.master@phoenixviewer.com> | 2014-03-10 12:07:59 -0700 |
commit | 328f64b4b9b870661a6d0bb8947dc1ff410ca0f8 (patch) | |
tree | 769bd24c2300307846e316e230db5dadb641611a /indra/llcorehttp/httpcommon.cpp | |
parent | 061eee57d9a56bd50fbe2a8f84b3cff99f63ebfc (diff) | |
parent | 1ad94b5a9a8d0b6d095938148cbf8b1b56a778bf (diff) |
Merge
Diffstat (limited to 'indra/llcorehttp/httpcommon.cpp')
-rwxr-xr-x | indra/llcorehttp/httpcommon.cpp | 42 |
1 files changed, 40 insertions, 2 deletions
diff --git a/indra/llcorehttp/httpcommon.cpp b/indra/llcorehttp/httpcommon.cpp index 0738760763..c2f15155ac 100755 --- a/indra/llcorehttp/httpcommon.cpp +++ b/indra/llcorehttp/httpcommon.cpp @@ -70,7 +70,8 @@ std::string HttpStatus::toString() const "Invalid datatype for argument or option", "Option has not been explicitly set", "Option is not dynamic and must be set early", - "Invalid HTTP status code received from server" + "Invalid HTTP status code received from server", + "Could not allocate required resource" }; static const int llcore_errors_count(sizeof(llcore_errors) / sizeof(llcore_errors[0])); @@ -177,6 +178,44 @@ std::string HttpStatus::toString() const } +std::string HttpStatus::toTerseString() const +{ + std::ostringstream result; + + unsigned int error_value((unsigned short) mStatus); + + switch (mType) + { + case EXT_CURL_EASY: + result << "Easy_"; + break; + + case EXT_CURL_MULTI: + result << "Multi_"; + break; + + case LLCORE: + result << "Core_"; + break; + + default: + if (isHttpStatus()) + { + result << "Http_"; + error_value = mType; + } + else + { + result << "Unknown_"; + } + break; + } + + result << error_value; + return result.str(); +} + + // Pass true on statuses that might actually be cleared by a // retry. Library failures, calling problems, etc. aren't // going to be fixed by squirting bits all over the Net. @@ -206,6 +245,5 @@ bool HttpStatus::isRetryable() const *this == inv_cont_range); // Short data read disagrees with content-range } - } // end namespace LLCore |