From 8fe1c8812a41e7999e6c44326d4e6ce8e8459a62 Mon Sep 17 00:00:00 2001 From: davebshow <davebshow@gmail.com> Date: Mon, 25 May 2015 17:33:02 -0400 Subject: [PATCH] renamed protocol as subprotocol, add close code in context manager, change error message access from gettr to prop --- aiogremlin/__init__.py | 2 +- aiogremlin/client.py | 3 ++- aiogremlin/connection.py | 2 +- aiogremlin/contextmanager.py | 1 + aiogremlin/{protocol.py => subprotocol.py} | 2 +- 5 files changed, 6 insertions(+), 4 deletions(-) rename aiogremlin/{protocol.py => subprotocol.py} (97%) diff --git a/aiogremlin/__init__.py b/aiogremlin/__init__.py index 6c957c5..3ad55f5 100644 --- a/aiogremlin/__init__.py +++ b/aiogremlin/__init__.py @@ -2,6 +2,6 @@ from .connection import * from .client import * from .exceptions import * from .pool import * -from .protocol import * +from .subprotocol import * __version__ = "0.0.8" diff --git a/aiogremlin/client.py b/aiogremlin/client.py index 5e30106..83cc0ab 100644 --- a/aiogremlin/client.py +++ b/aiogremlin/client.py @@ -10,7 +10,7 @@ from aiogremlin.connection import (GremlinFactory, WebSocketSession, from aiogremlin.exceptions import RequestError from aiogremlin.log import logger, INFO from aiogremlin.pool import WebSocketPool -from aiogremlin.protocol import gremlin_response_parser, GremlinWriter +from aiogremlin.subprotocol import gremlin_response_parser, GremlinWriter __all__ = ("create_client", "GremlinClient", "GremlinResponse", "GremlinResponseStream") @@ -203,6 +203,7 @@ class GremlinResponseStream: # self._pool.release(self._conn) # message = None # else: + # asyncio.async(self._conn.receive()) # This will be different 3.0.0.M9 try: yield from self._conn.receive() diff --git a/aiogremlin/connection.py b/aiogremlin/connection.py index 84835d8..ddc7813 100644 --- a/aiogremlin/connection.py +++ b/aiogremlin/connection.py @@ -105,7 +105,7 @@ class GremlinClientWebSocketResponse(ClientWebSocketResponse): if msg.tp == MsgType.close: yield from ws.close() elif msg.tp == MsgType.error: - raise msg[1] + raise msg.data elif msg.tp == MsgType.closed: pass diff --git a/aiogremlin/contextmanager.py b/aiogremlin/contextmanager.py index ff02537..206845c 100644 --- a/aiogremlin/contextmanager.py +++ b/aiogremlin/contextmanager.py @@ -12,6 +12,7 @@ class ConnectionContextManager: def __exit__(self, exception_type, exception_value, traceback): try: + self._conn._close_code = 1000 self._conn._closing = True self._conn._close() finally: diff --git a/aiogremlin/protocol.py b/aiogremlin/subprotocol.py similarity index 97% rename from aiogremlin/protocol.py rename to aiogremlin/subprotocol.py index 87bdcec..1f7d1f0 100644 --- a/aiogremlin/protocol.py +++ b/aiogremlin/subprotocol.py @@ -1,4 +1,4 @@ -"""Implements a very simple "protocol" for the Gremlin server.""" +"""Implements the Gremlin Server subprotocol.""" import asyncio import collections -- GitLab