Package repoze :: Package who :: Module interfaces :: Class IMetadataProvider
[hide private]

Class IMetadataProvider

source code


On ingress: When an identity is authenticated, metadata providers may scribble on the identity dictionary arbitrarily. Return values from metadata providers are ignored.

Instance Methods [hide private]
 
add_metadata(environ, identity)
Add metadata to the identity (which is a dictionary).
source code
Class Variables [hide private]
  _InterfaceClass__attrs = {'add_metadata': <zope.interface.inte...
  __bases__ = (<InterfaceClass repoze.who.interfaces.IPlugin>)
  __identifier__ = 'repoze.who.interfaces.IMetadataProvider'
  __iro__ = (<InterfaceClass repoze.who.interfaces.IMetadataProv...
  __name__ = 'IMetadataProvider'
  __sro__ = (<InterfaceClass repoze.who.interfaces.IMetadataProv...
  _implied = {<InterfaceClass repoze.who.interfaces.IMetadataPro...
  dependents = <WeakKeyDictionary at 27503936>

Inherited from zope.interface.Interface (private): _Element__tagged_values

Method Details [hide private]

add_metadata(environ, identity)

source code 

Add metadata to the identity (which is a dictionary). One value is always guaranteed to be in the dictionary when add_metadata is called: 'repoze.who.userid', representing the user id of the identity. Availability and composition of other keys will depend on the identifier plugin which created the identity.


Class Variable Details [hide private]

_InterfaceClass__attrs

Value:
{'add_metadata': <zope.interface.interface.Method object at 0x1a450d0>\
}

__iro__

Value:
(<InterfaceClass repoze.who.interfaces.IMetadataProvider>,
 <InterfaceClass repoze.who.interfaces.IPlugin>,
 <InterfaceClass zope.interface.Interface>)

__sro__

Value:
(<InterfaceClass repoze.who.interfaces.IMetadataProvider>,
 <InterfaceClass repoze.who.interfaces.IPlugin>,
 <InterfaceClass zope.interface.Interface>)

_implied

Value:
{<InterfaceClass repoze.who.interfaces.IMetadataProvider>: (),
 <InterfaceClass repoze.who.interfaces.IPlugin>: (),
 <InterfaceClass zope.interface.Interface>: ()}