当前位置: 首页>>代码示例>>Python>>正文


Python interface.noLongerProvides函数代码示例

本文整理汇总了Python中zope.interface.noLongerProvides函数的典型用法代码示例。如果您正苦于以下问题:Python noLongerProvides函数的具体用法?Python noLongerProvides怎么用?Python noLongerProvides使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了noLongerProvides函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: unmake_shopping_site

def unmake_shopping_site(container, event):
    if container == event.object:
        parent = aq_parent(aq_inner(container))
        noLongerProvides(parent, IShoppingSiteRoot)
        parent.reindexObject(idxs=['object_provides'])
        message = _(u"This container is no longer a shopping site.")
        IStatusMessage(container.REQUEST).addStatusMessage(message, type='warn')
开发者ID:collective,项目名称:collective.cart.core,代码行数:7,代码来源:subscriber.py

示例2: disable

 def disable(self):
     """ See IFacetedSubtyper
     """
     if not self.can_disable:
         return self._redirect('Faceted search navigation not supported')
     noLongerProvides(self.context, IFacetedSearchMode)
     self._redirect(_('Faceted search disabled'))
开发者ID:TobiasWeigel,项目名称:eea.facetednavigation,代码行数:7,代码来源:subtyper.py

示例3: content

 def content(self):
     try:
         return futures.resultOrSubmit(
             'futures.testing', u'placeholder',
             echo, u'testing-result-or-submit')
     finally:
         noLongerProvides(self.request, IContainsPromises)
开发者ID:datakurre,项目名称:experimental.promises,代码行数:7,代码来源:test_acceptance.py

示例4: upgradeObj

    def upgradeObj(self, obj, path=None):
        obj._p_activate()

        if self.delRemovedObj(obj, path):
            # Deleted don't do anything else
            return

        if '__implements__' in obj.__dict__:
            self.log('Deleting __implements__ instance attributre from %r'
                     % obj)
            del obj.__dict__['__implements__']
            obj._p_changed = True

        if zodb_ifaces.IBroken.providedBy(obj):
            self.log('Removing broken interfaces from %r: %r' %
                     (obj, list(interface.directlyProvidedBy(obj))))
            interface.noLongerProvides(obj, zodb_ifaces.IBroken)

        if not self.update_catalogs:
            return
        base = aq_base(obj)

        if (
                not isinstance(obj, ZCatalog.ZCatalog) and
                callable(getattr(base, 'indexObject', None))):
            obj.indexObject()

        if callable(getattr(base, '_updateCatalog', None)):
            obj._updateCatalog(obj)
开发者ID:collective,项目名称:collective.upgrade,代码行数:29,代码来源:broken.py

示例5: filter

    def filter(self, components):
        """Returns a filtered list of components.

        :param components: (name, component) pairs of article components and their names
        :type components: list
        :returns: sorted (name, component) pairs of article components and their names
        :rtype: list of tuples
        """

        # prevent crashing if passing in an empty list of components
        if not components:
            return []

        # temporary provide all interfaces of the registered components
        notprovided = self.provide_all_interfaces(components)

        # get a list of all viewlets, ordered by their viewlet manager
        order = self.get_ordered_viewlets()

        # no longer provide the interfaces previously set
        for iface in notprovided:
            interface.noLongerProvides(self.context, iface)

        # compile a list of components whose viewlets are present in the list
        # of ordered viewlets
        components = [(name, comp) for name, comp in components
                                                  if comp.viewlet in order]

        # sort components based on their position in 'order'
        components = self.sort_components(components, order)
        return components
开发者ID:hexagonit,项目名称:raptus.article.core,代码行数:31,代码来源:componentfilter.py

示例6: test_override_for_httprequest

    def test_override_for_httprequest(self):
        from z3c.jbot.metaconfigure import handler
        from zope import interface
        from zope.publisher.interfaces.browser import IHTTPRequest

        class IHTTPSRequest(IHTTPRequest):
            pass

        # register handlers
        handler(
            "%s/overrides/interface" % self._tests, interface.Interface)
        handler(
            "%s/overrides/https" % self._tests, IHTTPSRequest)

        # we get the general override
        self.assertEqual(self._view.template(), self._interface_override)

        # provide the http layer
        from zope.interface import alsoProvides
        alsoProvides(self._request, IHTTPSRequest)
        self.assertEqual(self._view.template(), self._https_override)

        # revert to general override
        from zope.interface import noLongerProvides
        noLongerProvides(self._request, IHTTPSRequest)
        self.assertEqual(self._view.template(), self._interface_override)
开发者ID:jean,项目名称:z3c.jbot,代码行数:26,代码来源:test_five.py

示例7: disableFeature

 def disableFeature(self):
     noLongerProvides(self.context, self.feature_iface)
     self.context.portal_catalog.reindexObject(self.context,
                                               idxs=['object_provides'],
                                               update_metadata=1)
     self.context.plone_utils.addPortalMessage(self.disable_message)
     self.request.response.redirect(self.context.absolute_url())
开发者ID:ezvirtual,项目名称:bda.plone.shop,代码行数:7,代码来源:actions.py

示例8: disable_behaviors

def disable_behaviors(obj, behaviors, ifaces, reindex=True):
    """ Disable behaviors on an object.

    :param obj: The Dexterity content object to disable behaviors on.
    :type obj: object
    :param behaviors: Behaviors to be disabled on the object. This is a list of
                      dotted names of behavior schema interfaces.
    :type behaviors: list or tuple
    :param ifaces: Behavior marker interfaces belonging to the behaviors to be
                   disabled. This is a list of interface classes.
    :type ifaces: class
    :param reindex: Flag whether to reindex object after modification
    :type reindex: bool

    Use it like so:

    >>> from plone.app.event.dx.interfaces import IDXEvent
    >>> disable_behaviors(obj, ['plone.app.event.dx.behaviors.IEventBasic',],
    ...                        [IDXEvent,])
    """
    annotations = IAnnotations(obj)
    instance_behaviors = annotations.get(ANNOTATION_KEY, ())
    instance_behaviors = filter(lambda x: x not in behaviors,
                                instance_behaviors)
    annotations[ANNOTATION_KEY] = instance_behaviors

    for iface in ifaces:
        noLongerProvides(obj, iface)

    if reindex:
        obj.reindexObject(idxs=('object_provides'))
开发者ID:collective,项目名称:collective.instancebehavior,代码行数:31,代码来源:__init__.py

示例9: test_form_checked_options

    def test_form_checked_options(self):
        login(self.portal, TEST_USER_NAME)
        alsoProvides(self.document, IPreventDelete)
        form = PreventActionsForm(self.document, self.request)
        form.updateWidgets()

        widget = form.widgets.get('delete')
        delete_widget_value = widget.items[0]
        self.assertTrue(delete_widget_value['checked'])
        widget = form.widgets.get('move_or_rename')
        move_or_rename_widget_value = widget.items[0]
        self.assertFalse(move_or_rename_widget_value['checked'])

        noLongerProvides(self.document, IPreventDelete)
        form.updateWidgets()

        widget = form.widgets.get('delete')
        delete_widget_value = widget.items[0]
        self.assertFalse(delete_widget_value['checked'])
        widget = form.widgets.get('move_or_rename')
        move_or_rename_widget_value = widget.items[0]
        self.assertFalse(move_or_rename_widget_value['checked'])

        alsoProvides(self.document, IPreventMoveOrRename)
        form.updateWidgets()

        widget = form.widgets.get('delete')
        delete_widget_value = widget.items[0]
        self.assertFalse(delete_widget_value['checked'])
        widget = form.widgets.get('move_or_rename')
        move_or_rename_widget_value = widget.items[0]
        self.assertTrue(move_or_rename_widget_value['checked'])
开发者ID:IMIO,项目名称:collective.preventactions,代码行数:32,代码来源:test_form.py

示例10: mark_file

def mark_file(ob, event):
    if safe_hasattr(ob, 'getFile'):
        obfile = ob.getFile()
        reindex = False

        set_track_view = False
        for name, adapter in getAdapters((obfile,), ITypeRecognition):
            iface = adapter.getIface()
            if adapter.isOfType():
                if not iface.providedBy(ob):
                    alsoProvides(ob, iface)
                    reindex = True
                # if there is set an interface, I also want to switch the view
                set_track_view = True
                # ok, found the type. do not check any more.
                break
            else:
                if iface.providedBy(ob):
                    # remove the marker if the file type changed!
                    noLongerProvides(ob, iface)
                    reindex = True

        if set_track_view:
            # if at least one interface is set, switch the view.
            ob.setLayout('track_view')
        else:
            # reset the view
            ob.setLayout(ob.getDefaultLayout())
        # we need to reindex the object, because ObjectEditedEvent is fired
        # after reindexing
        if reindex:
            # TODO: just reindex object_provides?
            ob.reindexObject()
开发者ID:chrigl,项目名称:docker-library,代码行数:33,代码来源:eventhandlers.py

示例11: setData

    def setData(self, interfacedata, metadata):
        """
        Sets a list of properties on a object.
        Warning: all currently set properties which are not in the
        properties-list wille be removed!

        @param object:      Plone-Object to set the properties on
        @type object:       Plone-Object
        @param properties:  list of propertes.
                            See ftw.publisher.sender.extractor
                            for format details.
        @param type:        list
        @return:            None
        """
        self.logger.info('Updating interface data (UID %s)' %
                (self.object.UID())
        )

        current_ifaces = set(self.adapted.getDirectlyProvidedNames())
        desired_ifaces = set(interfacedata)

        for iface_dotted in current_ifaces - desired_ifaces:
            iface = resolve(iface_dotted)
            noLongerProvides(self.object, iface)

        for iface_dotted in desired_ifaces - current_ifaces:
            iface = resolve(iface_dotted)
            alsoProvides(self.object, iface)
开发者ID:4teamwork,项目名称:ftw.publisher.core,代码行数:28,代码来源:interface_data.py

示例12: cleanup_p4a

def cleanup_p4a(context):
    """ eea.facetednavigation > 4.0 doesn't depend on p4a.subtyper anymore,
    but your instance will crash if it's missing as there are persistent
    references to p4a.subtyper.interfaces.ISubtyped. After you run this script,
    you should be able to drop p4a.subtyper from your buildout.
    """
    try:
        from p4a.subtyper.interfaces import ISubtyper, ISubtyped
    except ImportError:
        logger.info('p4a.subtyper not installed. Aborting...')
        return


    ctool = getToolByName(context, 'portal_catalog')
    iface = interfaceToName(context, IFacetedNavigable)
    brains = ctool.unrestrictedSearchResults(object_provides=iface)
    for brain in brains:
        doc = brain.getObject()
        anno = queryAdapter(doc, IAnnotations)

        subtyper = getUtility(ISubtyper)
        name = getattr(subtyper.existing_type(doc), 'name', '')
        if 'faceted' not in name.lower():
            continue

        logger.info(
            'Cleanup p4a.subtyper interface and descriptor info for: %s',
            doc.absolute_url())

        noLongerProvides(doc, ISubtyped)
        anno.pop('p4a.subtyper.DescriptorInfo', None)
开发者ID:Conectivo,项目名称:eea.facetednavigation,代码行数:31,代码来源:evolve41.py

示例13: disable_behaviors

def disable_behaviors(obj, behaviors, ifaces):
    """ Disable behaviors on an object.

    :param obj: The Dexterity content object to disable behaviors on.
    :type obj: object
    :param behaviors: Behaviors to be disabled on the object. This is a list of
                      dotted names of behavior schema interfaces.
    :type behaviors: list
    :param ifaces: Behavior marker interfaces belonging to the behaviors to be
                   disabled. This is a list of interface classes.
    :type ifaces: class

    Use it like so:
    >>> from plone.app.event.dx.interfaces import IDXEvent
    >>> disable_behaviors(obj, ['plone.app.event.dx.behaviors.IEventBasic',],
    ...                        [IDXEvent,])

    """
    annotations = IAnnotations(obj)
    instance_behaviors = list(annotations.get(KEY, []))
    instance_behaviors = filter(lambda x: x not in behaviors,
                                instance_behaviors)
    annotations[KEY] = instance_behaviors

    for iface in ifaces:
        noLongerProvides(obj, iface)

    # TODO UNTESTED:
    obj.reindexObject(idxs=('object_provides'))
开发者ID:g24at,项目名称:g24.elements,代码行数:29,代码来源:instancebehaviors.py

示例14: disable_media

 def disable_media(self):
     """Disable the media"""
     context = self._get_real_context()
     noLongerProvides(context, IMediaActivated)
     catalog = api.portal.get_tool('portal_catalog')
     catalog.reindexObject(context)
     self._redirect(_(u'Multimedia viewlet disabled for content'))
开发者ID:IMIO,项目名称:cpskin.core,代码行数:7,代码来源:media.py

示例15: set_image

    def set_image(self, image, contentType=None, filename=None):
        if image and not INamedBlobImage.providedBy(image):
            if hasattr(image, 'data'):
                data = image.data
            elif hasattr(image, 'read'):
                data = image.read()
            else:
                data = image
            if hasattr(image, 'filename') and not filename:
                filename = unicode(image.filename)
            elif hasattr(image, 'name') and not filename:
                filename = image.name.split('/').pop()
            if hasattr(image, 'contentType') and not contentType:
                contentType = image.contentType
            elif hasattr(image, 'encoding') and not contentType:
                contentType = image.encoding
            image = NamedBlobImage(data, contentType, unicode(filename))

        if not image and IGraphicallyCustomized.providedBy(self.context):
            noLongerProvides(self.context, IGraphicallyCustomized)
            del IAnnotations(self.context)[self._annotation]
        if image and not IGraphicallyCustomized.providedBy(self.context):
            alsoProvides(self.context, IGraphicallyCustomized)
        if image:
            IAnnotations(
                self.context)[self._annotation] = PersistentDict()
            IAnnotations(
                self.context).get(
                self._annotation)['original'] = image
开发者ID:ihavelampinface,项目名称:bit.plone.graphic,代码行数:29,代码来源:graphics.py


注:本文中的zope.interface.noLongerProvides函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。