{ "info": { "author": "Cykooz", "author_email": "saikuz@mail.ru", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Zope3", "Intended Audience :: Developers", "License :: OSI Approved :: Zope Public License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP" ], "description": "============\ncykooz.title\n============\n\nThis package implements adapters for adapting any object to ITitle interface.\n\nLet's do some imports we will use later.\n\n >>> import zope.interface\n >>> import zope.component\n >>> from zope.annotation.interfaces import IAttributeAnnotatable\n >>> from zope.dublincore.interfaces import IZopeDublinCore\n >>> from zope.container.interfaces import IContained\n >>> from cykooz.title.interfaces import ITitle\n >>> from cykooz.title import adapters\n \nLet's register the adapters, this is normally done in configure.zcml:\n\n >>> zope.component.provideAdapter(adapters.ClassName2TitleAdapter)\n >>> zope.component.provideAdapter(adapters.Contained2TitleAdapter)\n >>> zope.component.provideAdapter(adapters.ZDC2TitleAdapter)\n\nImplement test object:\n\n >>> class SomeClass(object):\n ... zope.interface.implements(zope.interface.Interface)\n >>> some_object = SomeClass()\n\nGet title from class name:\n\n >>> ITitle(some_object).title\n u'SomeClass'\n\nNow change the test object so that it provide IContained:\n\n >>> zope.interface.directlyProvides(some_object, IContained)\n >>> some_object.__name__ = u'NameInContainer'\n >>> ITitle(some_object).title\n u'NameInContainer'\n\nChange the test object so that is provide only IAttributeAnnotatable:\n\n >>> zope.interface.directlyProvides(some_object, IAttributeAnnotatable)\n >>> IZopeDublinCore(some_object).title\n u''\n\nIf object do not provide IContained and field 'title' of IZopeDublinCore is empty\nthen ITitle adapter return class name of object:\n\n >>> ITitle(some_object).title\n u'SomeClass'\n\nNow change the test object so that it also provide IContained:\n\n >>> zope.interface.alsoProvides(some_object, IContained)\n >>> ITitle(some_object).title\n u'NameInContainer'\n\nSet field 'title' of IZopeDublinCore:\n\n >>> IZopeDublinCore(some_object).title = u'ZopeDublinCore Title'\n >>> IZopeDublinCore(some_object).title\n u'ZopeDublinCore Title'\n\nTest adapter:\n\n >>> ITitle(some_object).title\n u'ZopeDublinCore Title'\n\n\nChanges\n=======\n\n1.0.0 (2011-03-14)\n------------------\n\n- Initial release", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/cykooz/cykooz.title", "keywords": "zope3", "license": "ZPL", "maintainer": null, "maintainer_email": null, "name": "cykooz.title", "package_url": "https://pypi.org/project/cykooz.title/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/cykooz.title/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://bitbucket.org/cykooz/cykooz.title" }, "release_url": "https://pypi.org/project/cykooz.title/1.0.0/", "requires_dist": null, "requires_python": null, "summary": "Adapters for adapting any object to ITitle interface.", "version": "1.0.0" }, "last_serial": 788720, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "02fb025a2bf9304f3367987973ba54ce", "sha256": "0293b53c5fe35753dc6a9c7152a9318a35c204e52369762845463048f6b7003d" }, "downloads": -1, "filename": "cykooz.title-1.0.0.tar.gz", "has_sig": false, "md5_digest": "02fb025a2bf9304f3367987973ba54ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4818, "upload_time": "2011-03-14T14:39:02", "url": "https://files.pythonhosted.org/packages/76/5b/7d6ad703c342fa4289d1523fbb4d6164b39f650eac2624132787dee90656/cykooz.title-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "02fb025a2bf9304f3367987973ba54ce", "sha256": "0293b53c5fe35753dc6a9c7152a9318a35c204e52369762845463048f6b7003d" }, "downloads": -1, "filename": "cykooz.title-1.0.0.tar.gz", "has_sig": false, "md5_digest": "02fb025a2bf9304f3367987973ba54ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4818, "upload_time": "2011-03-14T14:39:02", "url": "https://files.pythonhosted.org/packages/76/5b/7d6ad703c342fa4289d1523fbb4d6164b39f650eac2624132787dee90656/cykooz.title-1.0.0.tar.gz" } ] }