1#
2# HTTP/1.1 methods --- RFC2616
3#
4
5# See Net::HTTPGenericRequest for attributes and methods.
6# See Net::HTTP for usage examples.
7class Net::HTTP::Get < Net::HTTPRequest
8  METHOD = 'GET'
9  REQUEST_HAS_BODY  = false
10  RESPONSE_HAS_BODY = true
11end
12
13# See Net::HTTPGenericRequest for attributes and methods.
14# See Net::HTTP for usage examples.
15class Net::HTTP::Head < Net::HTTPRequest
16  METHOD = 'HEAD'
17  REQUEST_HAS_BODY = false
18  RESPONSE_HAS_BODY = false
19end
20
21# See Net::HTTPGenericRequest for attributes and methods.
22# See Net::HTTP for usage examples.
23class Net::HTTP::Post < Net::HTTPRequest
24  METHOD = 'POST'
25  REQUEST_HAS_BODY = true
26  RESPONSE_HAS_BODY = true
27end
28
29# See Net::HTTPGenericRequest for attributes and methods.
30# See Net::HTTP for usage examples.
31class Net::HTTP::Put < Net::HTTPRequest
32  METHOD = 'PUT'
33  REQUEST_HAS_BODY = true
34  RESPONSE_HAS_BODY = true
35end
36
37# See Net::HTTPGenericRequest for attributes and methods.
38# See Net::HTTP for usage examples.
39class Net::HTTP::Delete < Net::HTTPRequest
40  METHOD = 'DELETE'
41  REQUEST_HAS_BODY = false
42  RESPONSE_HAS_BODY = true
43end
44
45# See Net::HTTPGenericRequest for attributes and methods.
46class Net::HTTP::Options < Net::HTTPRequest
47  METHOD = 'OPTIONS'
48  REQUEST_HAS_BODY = false
49  RESPONSE_HAS_BODY = false
50end
51
52# See Net::HTTPGenericRequest for attributes and methods.
53class Net::HTTP::Trace < Net::HTTPRequest
54  METHOD = 'TRACE'
55  REQUEST_HAS_BODY = false
56  RESPONSE_HAS_BODY = true
57end
58
59#
60# PATCH method --- RFC5789
61#
62
63# See Net::HTTPGenericRequest for attributes and methods.
64class Net::HTTP::Patch < Net::HTTPRequest
65  METHOD = 'PATCH'
66  REQUEST_HAS_BODY = true
67  RESPONSE_HAS_BODY = true
68end
69
70#
71# WebDAV methods --- RFC2518
72#
73
74# See Net::HTTPGenericRequest for attributes and methods.
75class Net::HTTP::Propfind < Net::HTTPRequest
76  METHOD = 'PROPFIND'
77  REQUEST_HAS_BODY = true
78  RESPONSE_HAS_BODY = true
79end
80
81# See Net::HTTPGenericRequest for attributes and methods.
82class Net::HTTP::Proppatch < Net::HTTPRequest
83  METHOD = 'PROPPATCH'
84  REQUEST_HAS_BODY = true
85  RESPONSE_HAS_BODY = true
86end
87
88# See Net::HTTPGenericRequest for attributes and methods.
89class Net::HTTP::Mkcol < Net::HTTPRequest
90  METHOD = 'MKCOL'
91  REQUEST_HAS_BODY = true
92  RESPONSE_HAS_BODY = true
93end
94
95# See Net::HTTPGenericRequest for attributes and methods.
96class Net::HTTP::Copy < Net::HTTPRequest
97  METHOD = 'COPY'
98  REQUEST_HAS_BODY = false
99  RESPONSE_HAS_BODY = true
100end
101
102# See Net::HTTPGenericRequest for attributes and methods.
103class Net::HTTP::Move < Net::HTTPRequest
104  METHOD = 'MOVE'
105  REQUEST_HAS_BODY = false
106  RESPONSE_HAS_BODY = true
107end
108
109# See Net::HTTPGenericRequest for attributes and methods.
110class Net::HTTP::Lock < Net::HTTPRequest
111  METHOD = 'LOCK'
112  REQUEST_HAS_BODY = true
113  RESPONSE_HAS_BODY = true
114end
115
116# See Net::HTTPGenericRequest for attributes and methods.
117class Net::HTTP::Unlock < Net::HTTPRequest
118  METHOD = 'UNLOCK'
119  REQUEST_HAS_BODY = true
120  RESPONSE_HAS_BODY = true
121end
122
123