src/pyams_utils/property.py
changeset 100 119b9c2f3022
parent 82 6bf38b014089
child 122 88f33861b143
--- a/src/pyams_utils/property.py	Wed Jul 12 13:55:47 2017 +0200
+++ b/src/pyams_utils/property.py	Wed Jul 12 13:56:41 2017 +0200
@@ -18,8 +18,6 @@
 # import interfaces
 
 # import packages
-from pyams_utils.request import check_request, get_request_data, set_request_data
-from pyams_utils.session import get_session_data, set_session_data
 from zope.schema.fieldproperty import FieldProperty
 
 
@@ -75,73 +73,6 @@
         return result
 
 
-_marker = object()
-
-
-def request_property(key, prefix=None):
-    """Define a method decorator used to store result into current request's annotations
-
-    If not request is currently running, a new one is created.
-    `key` is a required argument; if None, the key will be the method's object
-
-    :param str key: session's value key; if *None*, the key will be the method's object; if *key* is a callable
-        object, it will be called to get the actual session key
-    :param prefix: str; prefix to use for session key; if *None*, the prefix will be the property name
-    """
-
-    def request_decorator(func):
-
-        def wrapper(obj, key, *args, **kwargs):
-            request = check_request()
-            if callable(key):
-                key = key(obj)
-            if not key:
-                key = '{1}::{0!r}'.format(obj, prefix or func.__name__)
-            data = get_request_data(request, key, _marker)
-            if data is _marker:
-                data = func
-                if callable(data):
-                    data = data(obj, *args, **kwargs)
-                set_request_data(request, key, data)
-            return data
-
-        return lambda x: wrapper(x, key=key)
-
-    return request_decorator
-
-
-def session_property(app, key=None, prefix=None):
-    """Define a method decorator used to store result into request's session
-
-    If no request is currently running, a new one is created.
-
-    :param str app: application identifier used to prefix session keys
-    :param str key: session's value key; if *None*, the key will be the method's object; if *key* is a callable
-        object, il will be called to get the actual session key
-    :param prefix: str; prefix to use for session key; if *None*, the prefix will be the property name
-    """
-
-    def session_decorator(func):
-
-        def wrapper(obj, app, key, *args, **kwargs):
-            request = check_request()
-            if callable(key):
-                key = key(obj)
-            if not key:
-                key = '{1}::{0!r}'.format(obj, prefix or func.__name__)
-            data = get_session_data(request, app, key, _marker)
-            if data is _marker:
-                data = func
-                if callable(data):
-                    data = data(obj, *args, **kwargs)
-                set_session_data(request, app, key, data)
-            return data
-
-        return lambda x: wrapper(x, app=app, key=key)
-
-    return session_decorator
-
-
 class classproperty:
     """Same decorator as property(), but passes obj.__class__ instead of obj to fget/fset/fdel.