[GCM] Passing GCMClient::AccountTokenInfo list to GCMDriver
[chromium-blink-merge.git] / net / data / websocket / close-code-and-reason_wsh.py
blobcb9f4f229e817a82e4125e5e50f59f7516d93c71
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5 import struct
7 from mod_pywebsocket import stream
10 def web_socket_do_extra_handshake(_request):
11 pass
14 def web_socket_transfer_data(request):
15 line = request.ws_stream.receive_message()
16 if line is None:
17 return
18 if line == '-':
19 data = ''
20 elif line == '--':
21 data = 'X'
22 else:
23 code, reason = line.split(' ', 1)
24 data = struct.pack('!H', int(code)) + reason.encode('utf-8')
25 request.connection.write(stream.create_close_frame(data))
26 request.server_terminated = True
27 # Wait for Close frame from client.
28 request.ws_stream.receive_message()