133
133
self.logger = logging.getLogger('http')
134
134
BaseHTTPRequestHandler.__init__(self, *args, **kwargs)
137
"""Create a message on POST."""
137
"""Create an archive or message on PUT."""
138
138
scheme, netloc, path, params, query_string, fragments = (
139
139
urlparse(self.path))
140
140
parts = path.split('/')
141
141
if parts[1] != 'archive':
142
142
# This is an unknonwn operation?
144
if 'content-length' in self.headers:
145
operation = 'put_message'
147
operation = 'hide_message'
148
if operation == 'put_message':
149
message = self.rfile.read(int(self.headers['content-length']))
145
# This expected path is /archive/archive_id/message_id.
151
# This expected path is /archive/archive_id/message_id.
147
message = self.rfile.read(int(self.headers['content-length']))
152
148
self.server.store.put_message(parts[2], parts[3], message)
153
149
self.send_response(httplib.CREATED)
154
150
self.end_headers()
155
151
self.wfile.close()
157
153
self.send_error(httplib.BAD_REQUEST)
158
elif operation == 'hide_message':
156
"""Change a message on POST."""
157
scheme, netloc, path, params, query_string, fragments = (
159
parts = path.split('/')
160
if parts[1] != 'archive':
161
# This is an unknonwn operation?
164
# This expected path is /archive/archive_id/message_id.
160
166
# This expected path is /archive/archive_id/message_id.
161
167
response = self.server.store.hide_message(