From e1c1c010b877e3713743558a4abfb9854a0dabc3 Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Sun, 18 May 2008 10:33:06 +0000 Subject: [PATCH] 2008-05-18 Tatsuhiro Tsujikawa Make HttpHeader::getFirst(...) return const reference. * src/HttpHeader.cc * src/HttpHeader.h --- ChangeLog | 6 ++++++ src/HttpHeader.cc | 8 ++++---- src/HttpHeader.h | 2 +- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index d42b6873..265366e5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2008-05-18 Tatsuhiro Tsujikawa + + Make HttpHeader::getFirst(...) return const reference. + * src/HttpHeader.cc + * src/HttpHeader.h + 2008-05-18 Tatsuhiro Tsujikawa Use Option::getAsBool(...) instead of Option::get(...) and compare diff --git a/src/HttpHeader.cc b/src/HttpHeader.cc index 6d4c765d..16a70357 100644 --- a/src/HttpHeader.cc +++ b/src/HttpHeader.cc @@ -83,7 +83,7 @@ bool HttpHeader::defined(const std::string& name) const { return table.count(Util::toLower(name)) >= 1; } -std::string HttpHeader::getFirst(const std::string& name) const { +const std::string& HttpHeader::getFirst(const std::string& name) const { std::multimap::const_iterator itr = table.find(Util::toLower(name)); if(itr == table.end()) { return A2STR::NIL; @@ -107,7 +107,7 @@ unsigned int HttpHeader::getFirstAsUInt(const std::string& name) const { } uint64_t HttpHeader::getFirstAsULLInt(const std::string& name) const { - std::string value = getFirst(name); + const std::string& value = getFirst(name); if(value.empty()) { return 0; } else { @@ -117,9 +117,9 @@ uint64_t HttpHeader::getFirstAsULLInt(const std::string& name) const { RangeHandle HttpHeader::getRange() const { - std::string rangeStr = getFirst(CONTENT_RANGE); + const std::string& rangeStr = getFirst(CONTENT_RANGE); if(rangeStr.empty()) { - std::string contentLengthStr = getFirst(CONTENT_LENGTH); + const std::string& contentLengthStr = getFirst(CONTENT_LENGTH); if(contentLengthStr.empty()) { return SharedHandle(new Range()); } else { diff --git a/src/HttpHeader.h b/src/HttpHeader.h index 2b96feda..c11862e7 100644 --- a/src/HttpHeader.h +++ b/src/HttpHeader.h @@ -62,7 +62,7 @@ public: void put(const std::string& name, const std::string& value); bool defined(const std::string& name) const; - std::string getFirst(const std::string& name) const; + const std::string& getFirst(const std::string& name) const; std::deque get(const std::string& name) const; unsigned int getFirstAsUInt(const std::string& name) const; uint64_t getFirstAsULLInt(const std::string& name) const;