Replace uniq with userid.
[pithos] / snf-pithos-app / pithos / api / util.py
index 11642a7..bc99e20 100644 (file)
@@ -225,10 +225,10 @@ def update_manifest_meta(request, v_account, meta):
         bytes = 0
         try:
             src_container, src_name = split_container_object_string('/' + meta['X-Object-Manifest'])
-            objects = request.backend.list_objects(request.user_uniq, v_account,
+            objects = request.backend.list_objects(request.userid, v_account,
                                 src_container, prefix=src_name, virtual=False)
             for x in objects:
-                src_meta = request.backend.get_object_meta(request.user_uniq,
+                src_meta = request.backend.get_object_meta(request.userid,
                                         v_account, src_container, x[0], 'pithos', x[1])
                 etag += src_meta['checksum']
                 bytes += src_meta['bytes']
@@ -256,7 +256,7 @@ def update_sharing_meta(request, permissions, v_account, v_container, v_object,
     meta['X-Object-Sharing'] = '; '.join(ret)
     if '/'.join((v_account, v_container, v_object)) != perm_path:
         meta['X-Object-Shared-By'] = perm_path
-    if request.user_uniq != v_account:
+    if request.userid != v_account:
         meta['X-Object-Allowed-To'] = allowed
 
 def update_public_meta(public, meta):
@@ -324,11 +324,11 @@ def copy_or_move_object(request, src_account, src_container, src_name, dest_acco
     src_version = request.META.get('HTTP_X_SOURCE_VERSION')
     try:
         if move:
-            version_id = request.backend.move_object(request.user_uniq, src_account, src_container, src_name,
+            version_id = request.backend.move_object(request.userid, src_account, src_container, src_name,
                                                         dest_account, dest_container, dest_name,
                                                         content_type, 'pithos', meta, False, permissions)
         else:
-            version_id = request.backend.copy_object(request.user_uniq, src_account, src_container, src_name,
+            version_id = request.backend.copy_object(request.userid, src_account, src_container, src_name,
                                                         dest_account, dest_container, dest_name,
                                                         content_type, 'pithos', meta, False, permissions, src_version)
     except NotAllowedError:
@@ -341,7 +341,7 @@ def copy_or_move_object(request, src_account, src_container, src_name, dest_acco
         raise RequestEntityTooLarge('Quota exceeded')
     if public is not None:
         try:
-            request.backend.update_object_public(request.user_uniq, dest_account, dest_container, dest_name, public)
+            request.backend.update_object_public(request.userid, dest_account, dest_container, dest_name, public)
         except NotAllowedError:
             raise Forbidden('Not allowed')
         except NameError:
@@ -888,6 +888,12 @@ def api_method(http_method=None, format_allowed=False, user_required=True):
                 request.serialization = request_serialization(request, format_allowed)
                 request.backend = get_backend()
                 
+                # XXX: Testing...
+                if len(args) > 0:
+                    from pithos.api.settings import AUTHENTICATION_USERS
+                    account = [x['userid'] for x in AUTHENTICATION_USERS.values() if args[0] in x['email']][0]
+                    args = (account,) + args[1:]
+                
                 response = func(request, *args, **kwargs)
                 update_response_headers(request, response)
                 return response