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
|
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
|
-
+
-
+
-
+
-
+
-
+
-
+
+
+
+
-
+
-
+
-
+
-
+
|
@class OFDictionary OF_GENERIC(KeyType, ObjectType);
@class OFArray OF_GENERIC(ObjectType);
/**
* @class OFHTTPResponse OFHTTPResponse.h ObjFW/OFHTTPResponse.h
*
* @brief A class for representing an HTTP request reply as a stream.
* @brief A class for representing an HTTP request response as a stream.
*/
@interface OFHTTPResponse: OFStream
{
OFHTTPRequestProtocolVersion _protocolVersion;
short _statusCode;
OFDictionary OF_GENERIC(OFString *, OFString *) *_headers;
OF_RESERVE_IVARS(OFHTTPResponse, 4)
}
/**
* @brief The protocol version of the HTTP request reply.
* @brief The protocol version of the HTTP request response.
*/
@property (nonatomic) OFHTTPRequestProtocolVersion protocolVersion;
/**
* @brief The protocol version of the HTTP request reply as a string.
* @brief The protocol version of the HTTP request response as a string.
*/
@property (copy, nonatomic) OFString *protocolVersionString;
/**
* @brief The status code of the reply to the HTTP request.
* @brief The status code of the response to the HTTP request.
*/
@property (nonatomic) short statusCode;
/**
* @brief The headers of the reply to the HTTP request.
* @brief The headers of the response to the HTTP request.
*/
@property (copy, nonatomic) OFDictionary OF_GENERIC(OFString *, OFString *)
*headers;
/**
* @brief The reply as a string, trying to detect the encoding.
* @brief Read the response as a string, trying to detect the encoding and
* falling back to the specified encoding if not detectable.
*
* @return The response as a string
*/
@property (readonly, nonatomic) OFString *string;
- (OFString *)readString;
/**
* @brief Returns the reply as a string, trying to detect the encoding and
* @brief Rread the response as a string, trying to detect the encoding and
* falling back to the specified encoding if not detectable.
*
* @return The reply as a string
* @return The response as a string
*/
- (OFString *)stringWithEncoding: (OFStringEncoding)encoding;
- (OFString *)readStringWithEncoding: (OFStringEncoding)encoding;
@end
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief Returns a description string for the specified HTTP status code.
|