{ "info": { "author": "XO Core Dev Team", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Build Tools" ], "description": "# xoc-utils-python\n\nAn XO core project in python that provides utils functionalities, including data processing and Kafka client.\n\n----\n\n## Kafka\n\n### Producer\n\n```\nproducer = KProducer('kafka_server_origin', 'service_name')\nmessage = json.dumps({\n 'hello': 'world'\n})\nproducer.produce('topic_name', message)\n```\nExample [here](examples/kafka_producer.py)\n\n### Consumer\n\nConsumer without retry\n```\nconsumer = KConsumer('kafka_server_origin', 'group_id', 'service_name', poll_timeout=1, retries=0)\n\n# Add handler for a topic\ndef printMsg(msg):\n print('consuming message: ', msg)\n raise Exception('I am Exception.')\nconsumer.add_handler('topic_name', printMsg)\nconsumer.consume()\n```\nExample [here](examples/kafka_consumer.py). \nIf you want to use retry feature, you can just set retries to the times you want it to retry, like 3. \nExample [here](examples/kafka_consumer_retry.py)\n\n\n## Others\n \n### Singleton\nThis provide you a way to create a singleton instance.\n\n```\nfrom xoc_utils import Singleton\n\nclass YourClass(metaclass=Singleton):\n\tpass\n``` \n\n\n## Development\nYou get start from [here](https://packaging.python.org/tutorials/distributing-packages/#packages).\n\nTo debug your package, you don't have to release it, you can just run\n```\npython setup.py install\n```\nthen it will be installed on your machine.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/newellxo/xoc-utils-python", "keywords": "xoc-utils-python kafka client utils", "license": "", "maintainer": "", "maintainer_email": "", "name": "xoc-utils-python", "package_url": "https://pypi.org/project/xoc-utils-python/", "platform": "", "project_url": "https://pypi.org/project/xoc-utils-python/", "project_urls": { "Homepage": "https://github.com/newellxo/xoc-utils-python" }, "release_url": "https://pypi.org/project/xoc-utils-python/0.0.2/", "requires_dist": null, "requires_python": "", "summary": "An XO core utils project.", "version": "0.0.2" }, "last_serial": 3917377, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "e9ec368dcee131539745f39559a04012", "sha256": "efb8875d1b39d85e1c3c8f9d699b55e95d4ee137b5749e19d7b9e87e63fc192d" }, "downloads": -1, "filename": "xoc-utils-python-0.0.1.tar.gz", "has_sig": false, "md5_digest": "e9ec368dcee131539745f39559a04012", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5027, "upload_time": "2018-05-17T20:51:33", "url": "https://files.pythonhosted.org/packages/e9/88/0b67e3376ea02659cb79e5d4a03a75e47ddb93c49d528e72459b40344063/xoc-utils-python-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "39a310171a7b5a1bbae2e7b8154404de", "sha256": "aea74f3cefb5cc209b7930762073f96c9de93c2626fafa91f05203059b80940c" }, "downloads": -1, "filename": "xoc_utils_python-0.0.2-py3.6.egg", "has_sig": false, "md5_digest": "39a310171a7b5a1bbae2e7b8154404de", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 9682, "upload_time": "2018-05-31T15:18:04", "url": "https://files.pythonhosted.org/packages/3a/89/69217f71e6f1698f7cd923a3e8e17d257981ed51b0af5a9c8921177d71cd/xoc_utils_python-0.0.2-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "ff3720c1f9e09cc361e1a426add11ec4", "sha256": "4def9ca2c5a5961a3bf26b723832bda9d5f988bafe6697d8b77a91a8339c1381" }, "downloads": -1, "filename": "xoc-utils-python-0.0.2.tar.gz", "has_sig": false, "md5_digest": "ff3720c1f9e09cc361e1a426add11ec4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5711, "upload_time": "2018-05-31T15:18:02", "url": "https://files.pythonhosted.org/packages/35/67/2ebddadc87e147ba3ea488923a8b8f7825776027c0e98ac224038213e561/xoc-utils-python-0.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "39a310171a7b5a1bbae2e7b8154404de", "sha256": "aea74f3cefb5cc209b7930762073f96c9de93c2626fafa91f05203059b80940c" }, "downloads": -1, "filename": "xoc_utils_python-0.0.2-py3.6.egg", "has_sig": false, "md5_digest": "39a310171a7b5a1bbae2e7b8154404de", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 9682, "upload_time": "2018-05-31T15:18:04", "url": "https://files.pythonhosted.org/packages/3a/89/69217f71e6f1698f7cd923a3e8e17d257981ed51b0af5a9c8921177d71cd/xoc_utils_python-0.0.2-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "ff3720c1f9e09cc361e1a426add11ec4", "sha256": "4def9ca2c5a5961a3bf26b723832bda9d5f988bafe6697d8b77a91a8339c1381" }, "downloads": -1, "filename": "xoc-utils-python-0.0.2.tar.gz", "has_sig": false, "md5_digest": "ff3720c1f9e09cc361e1a426add11ec4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5711, "upload_time": "2018-05-31T15:18:02", "url": "https://files.pythonhosted.org/packages/35/67/2ebddadc87e147ba3ea488923a8b8f7825776027c0e98ac224038213e561/xoc-utils-python-0.0.2.tar.gz" } ] }