--- a/src/pyams_content/shared/common/__init__.py Thu Mar 22 14:50:32 2018 +0100
+++ b/src/pyams_content/shared/common/__init__.py Thu Mar 22 14:52:22 2018 +0100
@@ -21,7 +21,7 @@
from pyams_content.features.checker.interfaces import IContentChecker, MISSING_VALUE, MISSING_LANG_VALUE, ERROR_VALUE
from pyams_content.features.review.interfaces import IReviewComments
from pyams_content.shared.common.interfaces import IWfSharedContent, IWfSharedContentRoles, ISharedContent, \
- IBaseSharedTool, ISharedSite
+ IBaseSharedTool, ISharedSite, IWfSharedContentFactory
from pyams_i18n.interfaces import II18nManager, II18n
from pyams_security.interfaces import IDefaultProtectionPolicy
from pyams_sequence.interfaces import ISequentialIdTarget, ISequentialIdInfo
@@ -41,6 +41,7 @@
from pyams_security.utility import get_principal
from pyams_utils.adapter import adapter_config, ContextAdapter
from pyams_utils.date import format_datetime
+from pyams_utils.property import classproperty, classproperty_support
from pyams_utils.registry import query_utility, get_utilities_for
from pyams_utils.request import query_request, check_request
from pyams_utils.timezone import tztime
@@ -266,6 +267,7 @@
# Main shared content class and adapters
#
+@classproperty_support
@implementer(ISharedContent, ISequentialIdTarget)
class SharedContent(Persistent, Contained):
"""Workflow managed shared data"""
@@ -275,6 +277,10 @@
sequence_name = '' # use default sequence generator
sequence_prefix = ''
+ @classproperty
+ def content_class(cls):
+ return IWfSharedContentFactory(cls, None)
+
@property
def workflow_name(self):
return get_parent(self, IBaseSharedTool).shared_content_workflow