<configure
  xmlns="http://namespaces.zope.org/zope"
  xmlns:zcml="http://namespaces.zope.org/zcml"
  >

  <class class=".session.Session">
    <allow interface=".interfaces.ISession" />
    <implements interface="zope.traversing.interfaces.IPathAdapter" />
  </class>

  <class class=".http.CookieClientIdManager">
    <implements
        zcml:condition="installed zope.annotation"
        interface="zope.annotation.interfaces.IAttributeAnnotatable"
        />
    <require
        interface=".http.ICookieClientIdManager"
        permission="zope.Public"
        />
    <require
        set_schema=".http.ICookieClientIdManager"
        permission="zope.ManageServices"
        />
    <require
        interface="zope.location.ILocation"
        permission="zope.Public"
        />
    <require
        set_schema="zope.location.ILocation"
        permission="zope.ManageServices"
        />
  </class>

  <class class=".session.PersistentSessionDataContainer">
    <implements
        zcml:condition="installed zope.annotation"
        interface="zope.annotation.interfaces.IAttributeAnnotatable"
        />
    <require
        interface=".interfaces.ISessionDataContainer"
        permission="zope.Public"
        />
    <require
        set_schema=".interfaces.ISessionDataContainer"
        permission="zope.ManageServices"
        />
    <require
        interface="zope.location.ILocation"
        permission="zope.Public"
        />
    <require
        set_schema="zope.location.ILocation"
        permission="zope.ManageServices"
        />
  </class>

  <class class=".session.RAMSessionDataContainer">
    <require
        interface=".interfaces.ISessionDataContainer"
        permission="zope.Public"
        />
    <require
        set_schema=".interfaces.ISessionDataContainer"
        permission="zope.ManageServices"
        />
    <require
        interface="zope.location.ILocation"
        permission="zope.Public"
        />
    <require
        set_schema="zope.location.ILocation"
        permission="zope.ManageServices"
        />
  </class>

  <class class=".session.SessionData">
    <allow interface=".interfaces.ISessionData" />
  </class>

  <class class=".session.SessionPkgData">
    <allow interface=".interfaces.ISessionPkgData" />
  </class>

</configure>
