loops/configure.zcml
helmutm ee7a84b6d5 Basic setup for node schema adapters (+ some minor improvements)
git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@1022 fd906abe-77d9-0310-91a1-e0d9ade77398
2006-01-22 13:43:39 +00:00

233 lines
5.8 KiB
XML

<!-- $Id$ -->
<configure
xmlns="http://namespaces.zope.org/zope"
i18n_domain="zope"
>
<!-- Security definitions -->
<!-- loops top-level container -->
<interface interface=".interfaces.ILoops"
type="zope.app.content.interfaces.IContentType" />
<content class=".Loops">
<implements
interface="zope.app.annotation.interfaces.IAttributeAnnotatable" />
<factory id="loops.Loops"
description="loops top-level container" />
<allow
attributes="getSiteManager" />
<require
permission="zope.ManageServices"
attributes="setSiteManager" />
<require
permission="zope.View"
interface="zope.app.container.interfaces.IReadContainer" />
<require
permission="zope.ManageContent"
interface="zope.app.container.interfaces.IWriteContainer" />
</content>
<!-- concept manager and concept -->
<interface interface=".interfaces.IConceptManager"
type="zope.app.content.interfaces.IContentType" />
<content class=".concept.ConceptManager">
<implements
interface="zope.app.annotation.interfaces.IAttributeAnnotatable" />
<factory id="loops.ConceptManager"
description="Concept manager" />
<require
permission="zope.View"
interface="zope.app.container.interfaces.IReadContainer" />
<require
permission="zope.ManageContent"
interface="zope.app.container.interfaces.IWriteContainer" />
</content>
<interface
interface=".interfaces.IConcept"
type="zope.app.content.interfaces.IContentType" />
<content class=".concept.Concept">
<implements
interface="zope.app.annotation.interfaces.IAttributeAnnotatable" />
<factory
id="loops.Concept"
description="Concept object" />
<require
permission="zope.View"
interface=".interfaces.IConcept" />
<require
permission="zope.ManageContent"
set_schema=".interfaces.IConcept" />
</content>
<!-- resource manager and resource -->
<interface interface=".interfaces.IResourceManager"
type="zope.app.content.interfaces.IContentType" />
<content class=".resource.ResourceManager">
<implements
interface="zope.app.annotation.interfaces.IAttributeAnnotatable" />
<factory id="loops.ResourceManager"
description="Resource manager" />
<require
permission="zope.View"
interface="zope.app.container.interfaces.IReadContainer" />
<require
permission="zope.ManageContent"
interface="zope.app.container.interfaces.IWriteContainer" />
</content>
<interface
interface=".interfaces.IDocument"
type="zope.app.content.interfaces.IContentType" />
<content class=".resource.Document">
<implements
interface="zope.app.annotation.interfaces.IAttributeAnnotatable" />
<factory
id="loops.Document"
description="Document" />
<require
permission="zope.View"
interface=".interfaces.IDocument" />
<require
permission="zope.ManageContent"
set_schema=".interfaces.IDocument" />
</content>
<interface
interface=".interfaces.IMediaAsset"
type="zope.app.content.interfaces.IContentType" />
<content class=".resource.MediaAsset">
<implements
interface="zope.app.annotation.interfaces.IAttributeAnnotatable" />
<factory
id="loops.MediaAsset"
description="Media Asset" />
<require
permission="zope.View"
interface=".interfaces.IMediaAsset" />
<require
permission="zope.ManageContent"
set_schema=".interfaces.IMediaAsset" />
</content>
<!--<adapter
factory="zope.app.file.image.ImageSized"
provides="zope.app.size.interfaces.ISized"
for=".interfaces.IMediaAsset"
/>-->
<!-- view manager and view -->
<interface interface=".interfaces.IViewManager"
type="zope.app.content.interfaces.IContentType" />
<content class=".view.ViewManager">
<implements
interface="zope.app.annotation.interfaces.IAttributeAnnotatable" />
<factory id="loops.ViewManager"
description="View manager" />
<require
permission="zope.View"
interface="zope.app.container.interfaces.IReadContainer" />
<require
permission="zope.ManageContent"
interface="zope.app.container.interfaces.IWriteContainer"
attributes="updateOrder" />
</content>
<interface
interface=".interfaces.INode"
type="zope.app.content.interfaces.IContentType" />
<content class=".view.Node">
<implements
interface="zope.app.annotation.interfaces.IAttributeAnnotatable" />
<factory
id="loops.Node"
description="Node" />
<require
permission="zope.View"
interface=".interfaces.INode" />
<require
permission="zope.ManageContent"
set_schema=".interfaces.INode" />
<!--<require
permission="zope.View"
interface="zope.app.container.interfaces.IReadContainer" />-->
</content>
<!-- adapters -->
<adapter factory="loops.external.NodesLoader" />
<adapter factory="loops.external.NodesExporter" />
<adapter factory="loops.external.NodesImporter" />
<adapter factory="loops.view.NodeConfigAdapter" />
<adapter factory="loops.target.DocumentProxy" />
<adapter factory="loops.target.MediaAssetProxy" />
<view factory="loops.view.NodeTraverser"
for="loops.interfaces.INode"
type="zope.publisher.interfaces.browser.IBrowserRequest"
provides="zope.publisher.interfaces.browser.IBrowserPublisher"
allowed_interface="zope.publisher.interfaces.browser.IBrowserPublisher"
permission="zope.Public" />
<!-- Register various browser related components, including all views -->
<include package=".browser" />
</configure>