diff options
author | Victor Stinner <victor.stinner@gmail.com> | 2014-11-13 00:00:22 +0100 |
---|---|---|
committer | Victor Stinner <victor.stinner@gmail.com> | 2014-11-13 00:00:22 +0100 |
commit | ee60171deba6b3f817c5517c593de49c843fd298 (patch) | |
tree | 03ca0cbc9010bf6e07a238a1932f3f70cb021ee4 /examples/cachesvr.py | |
parent | ac10ccd53e4bc6a20f72c5dd8afb3ea7c1a98179 (diff) | |
parent | 9dd8580f105f3999e2f5f4283d2033a74051dbc6 (diff) | |
download | trollius-ee60171deba6b3f817c5517c593de49c843fd298.tar.gz |
Merge Tulip into Trollius
Diffstat (limited to 'examples/cachesvr.py')
-rw-r--r-- | examples/cachesvr.py | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/examples/cachesvr.py b/examples/cachesvr.py index 053f9c2..20a54e4 100644 --- a/examples/cachesvr.py +++ b/examples/cachesvr.py @@ -57,7 +57,8 @@ form is returned, but the connection is not closed: """ import argparse -import asyncio +import trollius as asyncio +from trollius import From import json import logging import os @@ -104,7 +105,7 @@ class Cache: peer = writer.get_extra_info('socket').getpeername() logging.info('got a connection from %s', peer) try: - yield from self.frame_parser(reader, writer) + yield From(self.frame_parser(reader, writer)) except Exception as exc: logging.error('error %r from %s', exc, peer) else: @@ -122,13 +123,13 @@ class Cache: # if the client doesn't send enough data but doesn't # disconnect either. We add a timeout to each. (But the # timeout should really be implemented by StreamReader.) - framing_b = yield from asyncio.wait_for( + framing_b = yield From(asyncio.wait_for( reader.readline(), - timeout=args.timeout, loop=self.loop) + timeout=args.timeout, loop=self.loop)) if random.random()*100 < args.fail_percent: logging.warn('Inserting random failure') - yield from asyncio.sleep(args.fail_sleep*random.random(), - loop=self.loop) + yield From(asyncio.sleep(args.fail_sleep*random.random(), + loop=self.loop)) writer.write(b'error random failure\r\n') break logging.debug('framing_b = %r', framing_b) @@ -151,9 +152,9 @@ class Cache: writer.write(b'error invalid frame parameters\r\n') break last_request_id = request_id - request_b = yield from asyncio.wait_for( + request_b = yield From(asyncio.wait_for( reader.readexactly(byte_count), - timeout=args.timeout, loop=self.loop) + timeout=args.timeout, loop=self.loop)) try: request = json.loads(request_b.decode('utf8')) except ValueError: @@ -165,10 +166,10 @@ class Cache: break response_b = json.dumps(response).encode('utf8') + b'\r\n' byte_count = len(response_b) - framing_s = 'response {} {}\r\n'.format(request_id, byte_count) + framing_s = 'response {0} {1}\r\n'.format(request_id, byte_count) writer.write(framing_s.encode('ascii')) - yield from asyncio.sleep(args.resp_sleep*random.random(), - loop=self.loop) + yield From(asyncio.sleep(args.resp_sleep*random.random(), + loop=self.loop)) writer.write(response_b) def handle_request(self, request): @@ -217,7 +218,7 @@ class Cache: def main(): asyncio.set_event_loop(None) if args.iocp: - from asyncio.windows_events import ProactorEventLoop + from trollius.windows_events import ProactorEventLoop loop = ProactorEventLoop() else: loop = asyncio.new_event_loop() @@ -226,7 +227,7 @@ def main(): import ssl # TODO: take cert/key from args as well. here = os.path.join(os.path.dirname(__file__), '..', 'tests') - sslctx = ssl.SSLContext(ssl.PROTOCOL_SSLv23) + sslctx = asyncio.SSLContext(ssl.PROTOCOL_SSLv23) sslctx.options |= ssl.OP_NO_SSLv2 sslctx.load_cert_chain( certfile=os.path.join(here, 'ssl_cert.pem'), |