src/pyams_content/shared/common/types.py
changeset 1240 921ff38f1aae
parent 1213 22b0a3be985d
child 1354 1816388f2887
--- a/src/pyams_content/shared/common/types.py	Wed Jan 16 19:10:46 2019 +0100
+++ b/src/pyams_content/shared/common/types.py	Thu Jan 17 12:17:24 2019 +0100
@@ -39,6 +39,7 @@
 from pyams_i18n.interfaces import II18n
 from pyams_sequence.reference import get_reference_target
 from pyams_utils.adapter import adapter_config, ContextAdapter, get_annotation_adapter
+from pyams_utils.factory import factory_config
 from pyams_utils.registry import get_local_registry
 from pyams_utils.request import check_request
 from pyams_utils.traversing import get_parent
@@ -70,7 +71,7 @@
     field_names = FieldProperty(IDataType['field_names'])
 
 
-@implementer(ITypedDataManager)
+@factory_config(ITypedDataManager)
 class TypedDataManager(OrderedContainer):
     """Data types container persistent class"""
 
@@ -92,7 +93,8 @@
 @adapter_config(context=ITypedSharedTool, provides=ITypedDataManager)
 def typed_shared_tool_data_manager_factory(context):
     """Types shared tool data manager factory"""
-    return get_annotation_adapter(context, DATA_MANAGER_ANNOTATION_KEY, TypedDataManager, name='++types++')
+    return get_annotation_adapter(context, DATA_MANAGER_ANNOTATION_KEY, ITypedDataManager,
+                                  name='++types++')
 
 
 @adapter_config(name='types', context=ITypedSharedTool, provides=ITraversable)