[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/browser/content/ - removed schema adapter registrations (that was overkill and didn't work for all forms)

Yvo Schubbe cvs-admin at zope.org
Sat Jul 6 10:34:58 CEST 2013


Log message for revision 130263:
  - removed schema adapter registrations (that was overkill and didn't work for all forms)
  - schema adapters are now used directly

Changed:
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/content/configure.zcml
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/content/document.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/content/favorite.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/content/file.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/content/link.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/content/metadata.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/content/newsitem.py

-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/content/configure.zcml
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/content/configure.zcml	2013-07-06 08:31:00 UTC (rev 130262)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/content/configure.zcml	2013-07-06 08:34:57 UTC (rev 130263)
@@ -43,8 +43,6 @@
       permission="zope2.View"
       />
 
-  <adapter factory=".metadata.MinimalMetadataSchemaAdapter"/>
-
   <browser:page
       for="Products.CMFCore.interfaces.IMutableMinimalDublinCore"
       layer="Products.CMFDefault.interfaces.ICMFDefaultSkin"
@@ -53,8 +51,6 @@
       permission="zope2.ManageProperties"
       />
 
-  <adapter factory=".metadata.MetadataSchemaAdapter"/>
-
   <browser:page
       for="Products.CMFCore.interfaces.IMutableDublinCore"
       layer="Products.CMFDefault.interfaces.ICMFDefaultSkin"
@@ -63,8 +59,6 @@
       permission="cmf.ModifyPortalContent"
       />
 
-  <adapter factory=".document.DocumentSchemaAdapter"/>
-
   <utility
       component=".document.TextFormatVocabularyFactory"
       name="cmf.AvailableTextFormats"
@@ -96,8 +90,6 @@
       permission="cmf.ModifyPortalContent"
       />
 
-  <adapter factory=".newsitem.NewsItemSchemaAdapter"/>
-
   <browser:page
       for="Products.CMFDefault.interfaces.IMutableNewsItem"
       layer="Products.CMFDefault.interfaces.ICMFDefaultSkin"
@@ -106,8 +98,6 @@
       permission="cmf.ModifyPortalContent"
       />
 
-  <adapter factory=".link.LinkSchemaAdapter"/>
-
   <adapter
       name="cmf.link"
       factory=".link.LinkAddView"
@@ -130,8 +120,6 @@
       permission="cmf.ModifyPortalContent"
       />
 
-  <adapter factory=".favorite.FavoriteSchemaAdapter"/>
-
   <adapter
       name="cmf.favorite"
       factory=".favorite.FavoriteAddView"
@@ -145,8 +133,6 @@
       permission="cmf.ModifyPortalContent"
       />
 
-  <adapter factory=".file.FileSchemaAdapter"/>
-
   <adapter
       name="cmf.file"
       factory=".file.FileAddView"

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/content/document.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/content/document.py	2013-07-06 08:31:00 UTC (rev 130262)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/content/document.py	2013-07-06 08:34:57 UTC (rev 130263)
@@ -23,6 +23,9 @@
 from zope.schema import Text
 from zope.schema import TextLine
 
+from Products.CMFDefault.browser.utils import decode
+from Products.CMFDefault.browser.utils import memoize
+from Products.CMFDefault.browser.utils import ViewBase
 from Products.CMFDefault.Document import REST_AVAILABLE
 from Products.CMFDefault.formlib.form import ContentEditFormBase
 from Products.CMFDefault.formlib.schema import ProxyFieldProperty
@@ -33,8 +36,6 @@
 from Products.CMFDefault.interfaces import IMutableDocument
 from Products.CMFDefault.utils import Message as _
 
-from Products.CMFDefault.browser.utils import decode, memoize, ViewBase
-
 available_text_formats = (
         (u'structured-text', 'structured-text', _(u'structured-text')),
         (u'plain', 'plain', _(u'plain text')),
@@ -120,6 +121,10 @@
     form_fields['text_format'].custom_widget = ChoiceRadioWidget
     form_fields['text'].custom_widget = TextInputWidget
 
+    @memoize
+    def getContent(self):
+        return DocumentSchemaAdapter(self.context)
+
     def setUpWidgets(self, ignore_request=False):
         super(DocumentEditView,
               self).setUpWidgets(ignore_request=ignore_request)

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/content/favorite.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/content/favorite.py	2013-07-06 08:31:00 UTC (rev 130262)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/content/favorite.py	2013-07-06 08:34:57 UTC (rev 130263)
@@ -27,6 +27,7 @@
 from zope.schema import TextLine
 
 from Products.CMFCore.interfaces import IURLTool
+from Products.CMFDefault.browser.utils import memoize
 from Products.CMFDefault.formlib.form import ContentAddFormBase
 from Products.CMFDefault.formlib.form import ContentEditFormBase
 from Products.CMFDefault.formlib.schema import ProxyFieldProperty
@@ -127,7 +128,7 @@
 
     def create(self, data):
         obj = super(FavoriteAddView, self).create(dict(id=data['id']))
-        adapted = IFavoriteSchema(obj)
+        adapted = FavoriteSchemaAdapter(obj)
         adapted.title = data['title']
         adapted.language = u''
         adapted.description = data['description']
@@ -143,6 +144,10 @@
     form_fields = form.FormFields(IFavoriteSchema).omit('language')
     form_fields['remote_url'].custom_widget = FavoriteURIWidget
 
+    @memoize
+    def getContent(self):
+        return FavoriteSchemaAdapter(self.context)
+
     def setUpWidgets(self, ignore_request=False):
         super(FavoriteEditView,
               self).setUpWidgets(ignore_request=ignore_request)

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/content/file.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/content/file.py	2013-07-06 08:31:00 UTC (rev 130262)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/content/file.py	2013-07-06 08:34:57 UTC (rev 130263)
@@ -133,7 +133,7 @@
     def create(self, data):
         obj = super(FileAddView,
                     self).create(dict(id=data['file'].filename))
-        adapted = IFileSchema(obj)
+        adapted = FileSchemaAdapter(obj)
         adapted.title = data['title']
         adapted.language = u''
         adapted.description = data['description']
@@ -148,6 +148,10 @@
 
     form_fields = form.FormFields(IFileSchema).omit('language')
 
+    @memoize
+    def getContent(self):
+        return FileSchemaAdapter(self.context)
+
     def setUpWidgets(self, ignore_request=False):
         super(FileEditView,
               self).setUpWidgets(ignore_request=ignore_request)

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/content/link.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/content/link.py	2013-07-06 08:31:00 UTC (rev 130262)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/content/link.py	2013-07-06 08:34:57 UTC (rev 130263)
@@ -130,7 +130,7 @@
 
     def create(self, data):
         obj = super(LinkAddView, self).create(dict(id=data['id']))
-        adapted = ILinkSchema(obj)
+        adapted = LinkSchemaAdapter(obj)
         adapted.title = data['title']
         adapted.language = u''
         adapted.description = data['description']
@@ -146,6 +146,10 @@
     form_fields = form.FormFields(ILinkSchema).omit('language')
     form_fields['remote_url'].custom_widget = LinkURIWidget
 
+    @memoize
+    def getContent(self):
+        return LinkSchemaAdapter(self.context)
+
     def setUpWidgets(self, ignore_request=False):
         super(LinkEditView, self).setUpWidgets(ignore_request=ignore_request)
         self.widgets['description'].height = 3

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/content/metadata.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/content/metadata.py	2013-07-06 08:31:00 UTC (rev 130262)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/content/metadata.py	2013-07-06 08:34:57 UTC (rev 130263)
@@ -31,6 +31,7 @@
 from Products.CMFCore.interfaces import IDiscussionTool
 from Products.CMFCore.interfaces import IMutableDublinCore
 from Products.CMFCore.interfaces import IMutableMinimalDublinCore
+from Products.CMFDefault.browser.utils import memoize
 from Products.CMFDefault.formlib.form import ContentEditFormBase
 from Products.CMFDefault.formlib.schema import ProxyFieldProperty
 from Products.CMFDefault.formlib.schema import SchemaAdapterBase
@@ -205,6 +206,10 @@
 
     label = _(u'Properties')
 
+    @memoize
+    def getContent(self):
+        return MinimalMetadataSchemaAdapter(self.context)
+
     def setUpWidgets(self, ignore_request=False):
         super(MinimalMetadataEditView,
               self).setUpWidgets(ignore_request=ignore_request)
@@ -244,6 +249,10 @@
 
     label = _(u'Properties')
 
+    @memoize
+    def getContent(self):
+        return MetadataSchemaAdapter(self.context)
+
     def setUpWidgets(self, ignore_request=False):
         super(MetadataEditView,
               self).setUpWidgets(ignore_request=ignore_request)

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/content/newsitem.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/content/newsitem.py	2013-07-06 08:31:00 UTC (rev 130262)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/content/newsitem.py	2013-07-06 08:34:57 UTC (rev 130263)
@@ -21,6 +21,7 @@
 from zope.schema import Text
 from zope.schema import TextLine
 
+from Products.CMFDefault.browser.utils import memoize
 from Products.CMFDefault.formlib.form import ContentEditFormBase
 from Products.CMFDefault.formlib.schema import ProxyFieldProperty
 from Products.CMFDefault.formlib.schema import SchemaAdapterBase
@@ -80,6 +81,10 @@
     form_fields['description'].custom_widget = TextInputWidget
     form_fields['text'].custom_widget = TextInputWidget
 
+    @memoize
+    def getContent(self):
+        return NewsItemSchemaAdapter(self.context)
+
     def setUpWidgets(self, ignore_request=False):
         super(NewsItemEditView,
               self).setUpWidgets(ignore_request=ignore_request)



More information about the checkins mailing list