19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#import "OFHTTPResponse.h"
#import "OFString.h"
#import "OFDictionary.h"
#import "OFArray.h"
#import "OFData.h"
#import "OFInvalidEncodingException.h"
#import "OFInvalidFormatException.h"
#import "OFOutOfRangeException.h"
#import "OFTruncatedDataException.h"
#import "OFUnsupportedVersionException.h"
static of_string_encoding_t
encodingForContentType(OFString *contentType)
{
const char *UTF8String = contentType.UTF8String;
size_t last, length = contentType.UTF8StringLength;
enum {
|
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
#import "OFHTTPResponse.h"
#import "OFString.h"
#import "OFDictionary.h"
#import "OFArray.h"
#import "OFData.h"
#import "OFInvalidArgumentException.h"
#import "OFInvalidFormatException.h"
#import "OFOutOfRangeException.h"
#import "OFTruncatedDataException.h"
#import "OFUnsupportedVersionException.h"
OFString *
of_http_status_code_to_string(short code)
{
switch (code) {
case 100:
return @"Continue";
case 101:
return @"Switching Protocols";
case 200:
return @"OK";
case 201:
return @"Created";
case 202:
return @"Accepted";
case 203:
return @"Non-Authoritative Information";
case 204:
return @"No Content";
case 205:
return @"Reset Content";
case 206:
return @"Partial Content";
case 300:
return @"Multiple Choices";
case 301:
return @"Moved Permanently";
case 302:
return @"Found";
case 303:
return @"See Other";
case 304:
return @"Not Modified";
case 305:
return @"Use Proxy";
case 307:
return @"Temporary Redirect";
case 400:
return @"Bad Request";
case 401:
return @"Unauthorized";
case 402:
return @"Payment Required";
case 403:
return @"Forbidden";
case 404:
return @"Not Found";
case 405:
return @"Method Not Allowed";
case 406:
return @"Not Acceptable";
case 407:
return @"Proxy Authentication Required";
case 408:
return @"Request Timeout";
case 409:
return @"Conflict";
case 410:
return @"Gone";
case 411:
return @"Length Required";
case 412:
return @"Precondition Failed";
case 413:
return @"Request Entity Too Large";
case 414:
return @"Request-URI Too Long";
case 415:
return @"Unsupported Media Type";
case 416:
return @"Requested Range Not Satisfiable";
case 417:
return @"Expectation Failed";
case 500:
return @"Internal Server Error";
case 501:
return @"Not Implemented";
case 502:
return @"Bad Gateway";
case 503:
return @"Service Unavailable";
case 504:
return @"Gateway Timeout";
case 505:
return @"HTTP Version Not Supported";
default:
return @"(unknown)";
}
}
static of_string_encoding_t
encodingForContentType(OFString *contentType)
{
const char *UTF8String = contentType.UTF8String;
size_t last, length = contentType.UTF8StringLength;
enum {
|
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
if ([name isEqual: @"charset"])
charset = value;
}
@try {
ret = of_string_parse_encoding(charset);
} @catch (OFInvalidEncodingException *e) {
ret = OF_STRING_ENCODING_AUTODETECT;
}
return ret;
}
@implementation OFHTTPResponse
|
|
|
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
|
if ([name isEqual: @"charset"])
charset = value;
}
@try {
ret = of_string_parse_encoding(charset);
} @catch (OFInvalidArgumentException *e) {
ret = OF_STRING_ENCODING_AUTODETECT;
}
return ret;
}
@implementation OFHTTPResponse
|