Metadata-Version: 1.1
Name: tornado-elasticsearch
Version: 0.3.0
Summary: Extends the official Elasticsearch Python API adding Tornado AsyncHTTPClient support
Home-page: https://github.com/gmr/tornado_elasticsearch
Author: Gavin M. Roy
Author-email: gavinmroy@gmail.com
License: BSD
Description: tornado_elasticsearch
        =====================
        Extends the official Elasticsearch Python API adding Tornado AsyncHTTPClient
        support.
        
        |Version| |Downloads| |LICENSE|
        
        Installation
        ------------
        tornado_elasticsearch is available on the Python Package Index and can be
        installed using pip or easy_install:
        
        .. code-block:: sh
        
            pip install tornado_elasticsearch
        
        Example Request Handlers
        ------------------------
        .. code-block:: python
        
            from tornado import gen
            from tornado import web
            from tornado_elasticsearch import AsyncElasticsearch
            import uuid
        
            class Example(web.RequestHandler):
        
                def initialize(self):
                    self.es = AsyncElasticsearch()
        
                @web.asynchronous
                @gen.engine
                def delete(self, *args, **kwargs):
                    result = yield self.es.delete(index='test-index', doc_type='tweet',
                                                  id=self.get_argument('id'))
                    self.finish(result)
        
                @web.asynchronous
                @gen.engine
                def get(self, *args, **kwargs):
                    if self.get_argument('id', None):
                        result = yield self.es.get(index='test-index', doc_type='tweet',
                                                   id=self.get_argument('id'))
                    else:
                        result = yield self.es.search(index='test-index')
                    self.finish(result)
        
                @web.asynchronous
                @gen.engine
                def post(self, *args, **kwargs):
                    doc = {
                        'author': self.get_current_user() or 'Unknown',
                        'text': self.get_argument('text'),
                        'timestamp': datetime.datetime.now()
                    }
                    result = yield self.es.index(index='test-index',
                                                 doc_type='tweet',
                                                 body=doc,
                                                 id=str(uuid.uuid4()))
                    self.finish(result)
        
        
            class Info(web.RequestHandler):
        
                @web.asynchronous
                @gen.engine
                def get(self, *args, **kwargs):
                    es = AsyncElasticsearch()
                    info = yield es.info()
                    self.finish(info)
        
        
        Version History
        ---------------
        - 0.3.0: Bugfix: Add body to log_request_fail call (#1)
        - 0.2.0: Bugfix: force method to POST if GET and body passed
        - 0.1.0: Initial version
        
        .. |Version| image:: https://img.shields.io/pypi/v/tornado_elasticsearch.svg?
           :target: http://badge.fury.io/py/tornado_elasticsearch
        
        .. |Downloads| image:: https://img.shields.io/pypi/dm/tornado_elasticsearch.svg?
           :target: https://pypi.python.org/pypi/tornado_elasticsearch
        
        .. |License| image:: https://img.shields.io/pypi/l/tornado_elasticsearch.svg?
           :target: https://tornado_elasticsearch.readthedocs.org
        
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Communications
Classifier: Topic :: Internet
Classifier: Topic :: Software Development :: Libraries
