Metadata-Version: 1.1
Name: z3c.discriminator
Version: 0.2
Summary: Provides a formalism for marking adapter specifications as discriminators.
Home-page: UNKNOWN
Author: Malthe Borch
Author-email: mborch@gmail.com
License: ZPL
Description: Overview
        --------
        
        z3c.discriminator provides a formalism for marking adapter specifications as
        discriminators in the sense that they will be used only for adapter lookup,
        not instantiation.
        
        Using z3c.discriminator
        -----------------------
        
        To mark one or more interfaces as discriminators in a ``provideAdapter`` call,
        simply wrap your interface with the ``discriminator`` method:
        
          >>> from z3c.discriminator import discriminator
          >>> provideAdapter(MyAdapter, (IFoo, discriminator(IBar)))
        
        To do the same in a Zope configuration file, prefix your dotted path with a
        dash like so:
        
          <adapter for="IFoo -IBar" factory="some.package.YourFactory" />
          
        Note that any interface in the declaration can be made a discriminator; they
        need not come in any particular order.
        
        In your factory definition, simply require only the arguments that correspond
        to non-discriminator specifications, e.g.
        
          class GetsOnlyFoo(object):
              def __init__(self, foo):
                  ...
        
           -or-
        
           def gets_only_bar(bar):
               ...
        
        	  
        Changelog
        ---------
        
        Version 0.2  - November 26, 2007
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        - Discriminator machinery is now introduced globally by patching the global
          adapter registry and the GlobalObject configuration field.
        
          The ``discriminator`` method now returns an interface that is in all
          aspects equal to the discriminated interface except it's marked as a
          discriminator.
          
          Test suite have been expanded by including the entire test suite from
          ``zope.component``.
          [malthe]
        
        
        Version 0.1  - November 23, 2007
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        - First public release
          [malthe]
        
Keywords: zope adapter discriminator
Platform: UNKNOWN
Classifier: Framework :: Zope2
Classifier: Framework :: Zope3
Classifier: Programming Language :: Python
Classifier: Topic :: Software Development :: Libraries :: Python Modules
