Metadata-Version: 2.0
Name: aiogrn
Version: 0.0.1
Summary: asyncio Groonga Client library
Home-page: https://github.com/hhatto/aiogrn
Author: Hideo Hattori
Author-email: hhatto.jp@gmail.com
License: MIT License
Keywords: asyncio groonga http gqtp
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Requires-Dist: aiohttp
Requires-Dist: async-timeout
Requires-Dist: poyonga

aiogrn
======

asyncio Groonga_ Client.

.. _Groonga: http://groonga.org/

Requirements
------------
* Python3.5+

Usage
-----

GQTP
~~~~

.. code-block:: python

    import asyncio
    from aiogrn.client import GroongaClient

    async def fetch(grn, cmd, **kwargs):
        ret = await grn.call(cmd, **kwargs)
        print(ret)

    loop = asyncio.get_event_loop()
    grn = GroongaClient(host='localhost', port=10043, protocol='gqtp', loop=loop)
    tasks = [
            asyncio.ensure_future(fetch(grn, 'status')),
            asyncio.ensure_future(fetch(grn, 'select', table='Foo')),
            asyncio.ensure_future(fetch(grn, 'status'))]
    loop.run_until_complete(asyncio.gather(*tasks))
    loop.close()


HTTP
~~~~

.. code-block:: python

    import asyncio
    from aiogrn.client import GroongaClient

    async def fetch(grn, cmd, **kwargs):
        ret = await grn.call(cmd, **kwargs)
        print(ret)

    loop = asyncio.get_event_loop()
    grn = GroongaClient(loop=loop)
    tasks = [
            asyncio.ensure_future(fetch(grn, 'status')),
            asyncio.ensure_future(fetch(grn, 'select', table='Foo')),
            asyncio.ensure_future(fetch(grn, 'status'))]
    loop.run_until_complete(asyncio.gather(*tasks))
    loop.close()



