{ "info": { "author": "Tim Martin", "author_email": "tim.martin@vertical-knowledge.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: Other/Proprietary License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "ripozo-cassandra\n================\n\n.. image:: https://travis-ci.org/vertical-knowledge/ripozo-cassandra.svg?branch=master&style=flat\n :target: https://travis-ci.org/vertical-knowledge/ripozo-cassandra?style=flat\n :alt: test status\n\n.. image:: https://coveralls.io/repos/vertical-knowledge/ripozo-cassandra/badge.svg?branch=master&style=flat\n :target: https://coveralls.io/r/vertical-knowledge/ripozo-cassandra?branch=master&style=flat\n :alt: test coverage\n\n.. image:: https://readthedocs.org/projects/ripozo-cassandra/badge/?version=latest&style=flat\n :target: https://ripozo-cassandra.readthedocs.org/?style=flat\n :alt: documentation\n\n\nripozo-cassandra is a ripozo-extension that provides a Manager that\nintegrates cqlengine (and thereby Cassandra) with ripozo. It provides\nconvience functions for generating resources. In particular it focues\non creating shortcuts for CRUD+L type operations. It fully implements\nthe BaseManager_ class that is provided in the ripozo_ package.\n\nExample\n=======\n\nThis is the minimal example of creating ripozo managers with\nripozo-cassandra and integrating them with a resource. As\nyou can see in the example, there are only three functional\nlines of code.\n\n.. code-block:: python\n\n from cqlengine.models import Model\n from cqlengine import columns, connection\n from cqlengine.management import create_keyspace, sync_table, delete_keyspace\n\n from ripozo_cassandra import CQLManager\n\n from uuid import uuid4\n\n # Define your model\n class Person(Model):\n id = columns.UUID(primary_key=True, default=lambda:uuid4())\n first_name = columns.Text()\n last_name = columns.Text()\n\n # Setup cqlengine and sync the person table\n keyspace_name = 'mykeyspace'\n connection.setup(['192.168.56.102'], keyspace_name)\n create_keyspace(keyspace_name)\n sync_table(Person)\n\n # This is where you define your manager\n class PersonManageR(CQLManager):\n model = Person # Assign the cqlengin model to the manager\n fields = ('id', 'first_name', 'last_name',) # Specify the fields to use for this manager\n\n # This is the ripozo specific part.\n # This creates a resource class that can be given\n # to a dispatcher (e.g. the flask-ripozo package's FlaskDispatcher)\n class PersonResource(ResourceBase):\n manager = PersonManager\n pks = ['id']\n\n # A retrieval method that will operate on the '/api/person' route\n # It retrieves the id, first_name, and last_name properties\n @apimethod(methods=['GET'])\n def get_person(cls, request):\n properties = self.manager.retrieve(request.url_params)\n return cls(properties=properties)\n\n\n\n\n.. _BaseManager: https://ripozo.readthedocs.org/en/latest/API/ripozo.managers.html#ripozo.managers.base.BaseManager\n\n.. _ripozo: https://ripozo.readthedocs.org/", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "UNKNOWN", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "ripozo-cassandra", "package_url": "https://pypi.org/project/ripozo-cassandra/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/ripozo-cassandra/", "project_urls": { "Download": "UNKNOWN", "Homepage": "UNKNOWN" }, "release_url": "https://pypi.org/project/ripozo-cassandra/0.2.1/", "requires_dist": null, "requires_python": null, "summary": "Integrates cassandra/cqlengine with ripozo to easily create cassandra backed Hypermedia/HATEOAS/REST apis", "version": "0.2.1" }, "last_serial": 1613619, "releases": { "0.1.0b1": [ { "comment_text": "", "digests": { "md5": "cfdb88ccc91778e3bd6503f21e3d51ba", "sha256": "519e7f1401cb4f2b8e65b8d8724fef9746bd5b880995ae0f6b85e1444d503d2f" }, "downloads": -1, "filename": "ripozo-cassandra-0.1.0b1.tar.gz", "has_sig": false, "md5_digest": "cfdb88ccc91778e3bd6503f21e3d51ba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3331, "upload_time": "2015-02-26T17:58:38", "url": "https://files.pythonhosted.org/packages/75/0b/aafe0cb0c19ec0951c2c3df1f01d192a313f7cc01d5b888c59af41a50fa2/ripozo-cassandra-0.1.0b1.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "abebbfa7fdaadf60ac8e3165abeb8bca", "sha256": "c5dc30a29d5e6f995cee52250489ee060d62c006feeabab0fe1cb95371fcb68d" }, "downloads": -1, "filename": "ripozo-cassandra-0.2.1.tar.gz", "has_sig": false, "md5_digest": "abebbfa7fdaadf60ac8e3165abeb8bca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4788, "upload_time": "2015-06-30T17:43:53", "url": "https://files.pythonhosted.org/packages/44/f7/98d9357682dd7a7c6d04e71e37c11054eb12712ef6139d3999171f23f116/ripozo-cassandra-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "abebbfa7fdaadf60ac8e3165abeb8bca", "sha256": "c5dc30a29d5e6f995cee52250489ee060d62c006feeabab0fe1cb95371fcb68d" }, "downloads": -1, "filename": "ripozo-cassandra-0.2.1.tar.gz", "has_sig": false, "md5_digest": "abebbfa7fdaadf60ac8e3165abeb8bca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4788, "upload_time": "2015-06-30T17:43:53", "url": "https://files.pythonhosted.org/packages/44/f7/98d9357682dd7a7c6d04e71e37c11054eb12712ef6139d3999171f23f116/ripozo-cassandra-0.2.1.tar.gz" } ] }