Metadata-Version: 1.0
Name: httprpclib
Version: 0.1
Summary: A library that eases the use of RESTful web services
Home-page: UNKNOWN
Author: Zachary Hirsch
Author-email: zhisch@umich.edu
License: BSD
Description: 
        A library that eases the use of RESTful web services.
        
        This functions similarly to the standard xmlrpclib module.  It creates a proxy
        object that converts Python function calls to HTTP requests.  The difference is
        that there's a user-defined shim between the function call and the HTTP
        request.
        
        These shims are implemented as corountines using the generator call/throw/close
        API described in PEP 342.  Each shim must yield exactly twice.  The first yield
        provides the body of the HTTP request (or None if there isn't a body) and is
        returned the status code and a file-like object of the body of the response.
        The second yield provides the return value of the original function call.
        
        Here's an example of a shim:
        
        import json
        from httprpclib import expects, method
        
        @method('GET', 'api/json/repositories/')
        @expects([200], ['application/json'])
        def get_repositories():
        status_code, response = (yield)
        yield json.load(response)
        
        Here's how the shim is use with this module:
        
        import httprpclib
        
        rpc = httprpclib.ServerProxy('http://demo.review-board.org',
        '../examples/reviewboard.cfg')
        print rpc.get_repositories()
        
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.5
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Software Development :: Libraries :: Python Modules
