<!-- $Id$ -->

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

  <zope:adapter factory="loops.integrator.collection.ExternalCollectionAdapter"
                trusted="True" />

  <zope:class class="loops.integrator.collection.ExternalCollectionAdapter">
    <require permission="zope.View"
             interface="loops.integrator.interfaces.IExternalCollection" />
    <require permission="zope.ManageContent"
             set_schema="loops.integrator.interfaces.IExternalCollection" />
  </zope:class>

  <zope:adapter factory="loops.integrator.source.ExternalSourceInfo"
                trusted="True" />

  <zope:class class="loops.integrator.source.ExternalSourceInfo">
    <require permission="zope.View"
             interface="loops.integrator.interfaces.IExternalSourceInfo" />
    <require permission="zope.ManageContent"
             set_schema="loops.integrator.interfaces.IExternalSourceInfo" />
  </zope:class>

  <zope:class class="loops.integrator.put.MetadataProxy">
    <allow attributes="write" />
  </zope:class>

  <zope:class class="loops.integrator.put.DummyResource">
    <allow attributes="write" />
  </zope:class>

  <zope:utility
      factory="loops.integrator.collection.DirectoryCollectionProvider" />

  <!-- view(s) -->

  <zope:adapter
        name="collection.html"
        for="loops.interfaces.IConcept
             zope.publisher.interfaces.browser.IBrowserRequest"
        provides="zope.interface.Interface"
        factory="loops.integrator.browser.ExternalCollectionView"
        permission="zope.View" />

  <zope:adapter
        for="loops.interfaces.IResourceManager
             zope.publisher.interfaces.http.IHTTPRequest"
        factory="loops.integrator.put.ResourceManagerTraverser"
        provides="zope.publisher.interfaces.IPublishTraverse"
        permission="zope.Public" />

  <include package=".content" />

</configure>
