summaryrefslogtreecommitdiff
blob: cb03dda404132812400c1084834ef21ed567f600 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
*** HttpHeader.cc	2006-03-23 01:21:11.000000000 +0900
--- HttpHeader.cc	2006-08-02 00:51:31.000000000 +0900
***************
*** 20,37 ****
   */
  /* copyright --> */
  #include "HttpHeader.h"
  
  void HttpHeader::put(const string& name, const string& value) {
!   multimap<string, string>::value_type vt(name, value);
    table.insert(vt);
  }
  
  bool HttpHeader::defined(const string& name) const {
!   return table.count(name) == 1;
  }
  
  string HttpHeader::getFirst(const string& name) const {
!   multimap<string, string>::const_iterator itr = table.find(name);
    if(itr == table.end()) {
      return "";
    } else {
--- 20,38 ----
   */
  /* copyright --> */
  #include "HttpHeader.h"
+ #include "Util.h"
  
  void HttpHeader::put(const string& name, const string& value) {
!   multimap<string, string>::value_type vt(Util::toLower(name), value);
    table.insert(vt);
  }
  
  bool HttpHeader::defined(const string& name) const {
!   return table.count(Util::toLower(name)) >= 1;
  }
  
  string HttpHeader::getFirst(const string& name) const {
!   multimap<string, string>::const_iterator itr = table.find(Util::toLower(name));
    if(itr == table.end()) {
      return "";
    } else {
***************
*** 41,66 ****
  
  Strings HttpHeader::get(const string& name) const {
    Strings v;
!   for(multimap<string, string>::const_iterator itr = table.find(name); itr != table.end(); itr++) {
      v.push_back((*itr).second);
    }
    return v;
  }
  
  int HttpHeader::getFirstAsInt(const string& name) const {
!   multimap<string, string>::const_iterator itr = table.find(name);
!   if(itr == table.end()) {
!     return 0;
!   } else {
!     return (int)strtol((*itr).second.c_str(), NULL, 10);
!   }
  }
  
  long long int HttpHeader::getFirstAsLLInt(const string& name) const {
!   multimap<string, string>::const_iterator itr = table.find(name);
!   if(itr == table.end()) {
      return 0;
    } else {
!     return strtoll((*itr).second.c_str(), NULL, 10);
    }
  }
--- 42,62 ----
  
  Strings HttpHeader::get(const string& name) const {
    Strings v;
!   for(multimap<string, string>::const_iterator itr = table.find(Util::toLower(name)); itr != table.end(); itr++) {
      v.push_back((*itr).second);
    }
    return v;
  }
  
  int HttpHeader::getFirstAsInt(const string& name) const {
!   return (int)getFirstAsLLInt(name);
  }
  
  long long int HttpHeader::getFirstAsLLInt(const string& name) const {
!   string value = getFirst(name);
!   if(value == "") {
      return 0;
    } else {
!     return strtoll(value.c_str(), NULL, 10);
    }
  }