{ "info": { "author": "Fernando Felix do Nascimento Junior", "author_email": "fernandojr.ifcg@live.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "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 :: 3.5" ], "description": "========\r\nObserver\r\n========\r\n\r\n.. image:: https://img.shields.io/badge/license-MIT-blue.svg\r\n :target: https://github.com/fernandojunior/observer/blob/master/LICENSE.rst\r\n\r\n.. image:: http://img.shields.io/pypi/v/pattern-observer.svg\r\n :target: https://pypi.python.org/pypi/pattern-observer\r\n\r\n.. image:: https://img.shields.io/pypi/status/pattern-observer.svg\r\n :target: https://pypi.python.org/pypi/pattern-observer\r\n\r\n.. image:: https://img.shields.io/travis/fernandojunior/observer.svg\r\n :target: https://travis-ci.org/fernandojunior/observer\r\n\r\n.. image:: https://img.shields.io/codecov/c/github/fernandojunior/observer.svg\r\n :target: https://codecov.io/github/fernandojunior/observer\r\n\r\nThe observer pattern is a software design pattern in which an object, called\r\nthe subject, maintains a list of its dependents, called observers, and notifies\r\nthem automatically of any state changes, usually by calling one of their\r\nmethods [#]_.\r\n\r\nThe **observer.py** implementation has a topic-based system, a message filtering\r\ntype of the publish\u2013subscribe pattern (an observer pattern variation) [#]_.\r\nTherefore, a subject can be subdivided into topics and observers can express\r\ninterest in one (or more) topic and only receive notifications (with any\r\nmessage or not) from that.\r\n\r\nThe implementation is also based on the jquery publish\u2013subscribe model [#]_\r\n[#]_. So, for convenience, observers will be called **handlers** and topics\r\nwill be called **events**. The observer module has only two members: Event and\r\nObservable. An **Observable** instance allows you connect different handlers to\r\nits events. A handler can be any function, method or callable object.\r\n\r\nA simpler implementation of the pattern can be found at **old.py**.\r\n\r\nReferences\r\n----------\r\n\r\n.. [#] https://en.wikipedia.org/wiki/Observer_pattern\r\n.. [#] https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern\r\n.. [#] http://api.jquery.com/trigger/\r\n.. [#] http://api.jquery.com/on/", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/fernandojunior/python-pattern-observer", "keywords": "observer design pattern", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "pattern-observer", "package_url": "https://pypi.org/project/pattern-observer/", "platform": "any", "project_url": "https://pypi.org/project/pattern-observer/", "project_urls": { "Homepage": "https://github.com/fernandojunior/python-pattern-observer" }, "release_url": "https://pypi.org/project/pattern-observer/1.0.0/", "requires_dist": null, "requires_python": null, "summary": "A observer pattern implementation in Python based on jQuery.", "version": "1.0.0" }, "last_serial": 1903714, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "274fd19367ef5b80f9c0949da5d212a2", "sha256": "07eeeaf93b851ccd4c2ca2cc6565f28e8e81c7c2c3502524613dd175f810cade" }, "downloads": -1, "filename": "pattern_observer-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "274fd19367ef5b80f9c0949da5d212a2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8280, "upload_time": "2016-01-14T03:39:43", "url": "https://files.pythonhosted.org/packages/06/17/abe74c22416f9b0801e374f106e55cadde3778866ac019874071847ad556/pattern_observer-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "67859e7217626759ab519b1e8c6a7709", "sha256": "1aed03adacf1068c89d94187ff194cc0a8856000fcc032dca1e7a6a5aa9988cf" }, "downloads": -1, "filename": "pattern-observer-1.0.0.tar.gz", "has_sig": false, "md5_digest": "67859e7217626759ab519b1e8c6a7709", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6148, "upload_time": "2016-01-14T03:39:48", "url": "https://files.pythonhosted.org/packages/dc/56/9425a90dd71179a279ce2b027d851235ebf526a34bcdf53125df7480a601/pattern-observer-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "274fd19367ef5b80f9c0949da5d212a2", "sha256": "07eeeaf93b851ccd4c2ca2cc6565f28e8e81c7c2c3502524613dd175f810cade" }, "downloads": -1, "filename": "pattern_observer-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "274fd19367ef5b80f9c0949da5d212a2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8280, "upload_time": "2016-01-14T03:39:43", "url": "https://files.pythonhosted.org/packages/06/17/abe74c22416f9b0801e374f106e55cadde3778866ac019874071847ad556/pattern_observer-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "67859e7217626759ab519b1e8c6a7709", "sha256": "1aed03adacf1068c89d94187ff194cc0a8856000fcc032dca1e7a6a5aa9988cf" }, "downloads": -1, "filename": "pattern-observer-1.0.0.tar.gz", "has_sig": false, "md5_digest": "67859e7217626759ab519b1e8c6a7709", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6148, "upload_time": "2016-01-14T03:39:48", "url": "https://files.pythonhosted.org/packages/dc/56/9425a90dd71179a279ce2b027d851235ebf526a34bcdf53125df7480a601/pattern-observer-1.0.0.tar.gz" } ] }