src/pyams_content/shared/form/handler.py
changeset 558 d9c6b1d7fefa
parent 170 26aefef3d0aa
child 1240 921ff38f1aae
--- a/src/pyams_content/shared/form/handler.py	Fri May 25 08:05:13 2018 +0200
+++ b/src/pyams_content/shared/form/handler.py	Fri May 25 15:48:59 2018 +0200
@@ -17,11 +17,10 @@
 
 # import interfaces
 from pyams_content.shared.form.interfaces import IFormHandler, IMailtoHandlerTarget, IMailtoHandlerInfo
-from zope.annotation.interfaces import IAnnotations
 
 # import packages
 from persistent import Persistent
-from pyams_utils.adapter import adapter_config
+from pyams_utils.adapter import adapter_config, get_annotation_adapter
 from pyams_utils.registry import utility_config
 from pyams_utils.request import check_request
 from pyams_utils.vocabulary import vocabulary_config
@@ -71,11 +70,7 @@
 @adapter_config(context=IMailtoHandlerTarget, provides=IMailtoHandlerInfo)
 def mailto_form_handler_factory(context):
     """Mailto form handler factory"""
-    annotations = IAnnotations(context)
-    info = annotations.get(MAILTO_HANDLER_ANNOTATIONS_KEY)
-    if info is None:
-        info = annotations[MAILTO_HANDLER_ANNOTATIONS_KEY] = MailtoFormHandlerInfo()
-    return info
+    return get_annotation_adapter(context, MAILTO_HANDLER_ANNOTATIONS_KEY, MailtoFormHandlerInfo)
 
 
 @utility_config(name='mailto', provides=IFormHandler)