"""
return []
- def get_account_meta(self, user, account, until=None):
- """Return a dictionary with the account metadata.
+ def get_account_meta(self, user, account, domain, until=None):
+ """Return a dictionary with the account metadata for the domain.
The keys returned are all user-defined, except:
'name': The account name
"""
return {}
- def update_account_meta(self, user, account, meta, replace=False):
- """Update the metadata associated with the account.
+ def update_account_meta(self, user, account, domain, meta, replace=False):
+ """Update the metadata associated with the account for the domain.
Parameters:
+ 'domain': Metadata domain
+
'meta': Dictionary with metadata to update
'replace': Replace instead of update
"""
return []
- def get_container_meta(self, user, account, container, until=None):
- """Return a dictionary with the container metadata.
+ def get_container_meta(self, user, account, container, domain, until=None):
+ """Return a dictionary with the container metadata for the domain.
The keys returned are all user-defined, except:
'name': The container name
"""
return {}
- def update_container_meta(self, user, account, container, meta, replace=False):
- """Update the metadata associated with the container.
+ def update_container_meta(self, user, account, container, domain, meta, replace=False):
+ """Update the metadata associated with the container for the domain.
Parameters:
+ 'domain': Metadata domain
+
'meta': Dictionary with metadata to update
'replace': Replace instead of update
"""
return
- def list_objects(self, user, account, container, prefix='', delimiter=None, marker=None, limit=10000, virtual=True, keys=[], shared=False, until=None):
+ def list_objects(self, user, account, container, prefix='', delimiter=None, marker=None, limit=10000, virtual=True, domain=None, keys=[], shared=False, until=None):
"""Return a list of object (name, version_id) tuples existing under a container.
Parameters:
If set, the result will include all names after 'prefix',
up to and including the 'delimiter' if it is found
- 'keys': Include objects that have meta with the keys in the list
+ 'domain': Metadata domain for keys
+
+ 'keys': Include objects that satisfy the key queries in the list.
+ Use 'key', '!key' for existence queries, 'key op value' for
+ value queries, where 'op' can be one of =, !=, <=, >=, <, >
'shared': Only list objects with permissions set
"""
return []
- def list_object_meta(self, user, account, container, until=None):
- """Return a list with all the container's object meta keys.
+ def list_object_meta(self, user, account, container, domain, until=None):
+ """Return a list with all the container's object meta keys for the domain.
Raises:
NotAllowedError: Operation not permitted
"""
return []
- def get_object_meta(self, user, account, container, name, version=None):
- """Return a dictionary with the object metadata.
+ def get_object_meta(self, user, account, container, name, domain, version=None):
+ """Return a dictionary with the object metadata for the domain.
The keys returned are all user-defined, except:
'name': The object name
'version': The version identifier
'version_timestamp': The version's modification timestamp
+
+ 'uuid': A unique identifier that persists data or metadata updates and renames
Raises:
NotAllowedError: Operation not permitted
"""
return {}
- def update_object_meta(self, user, account, container, name, meta, replace=False):
- """Update the metadata associated with the object and return the new version.
+ def update_object_meta(self, user, account, container, name, domain, meta, replace=False):
+ """Update the metadata associated with the object for the domain and return the new version.
Parameters:
+ 'domain': Metadata domain
+
'meta': Dictionary with metadata to update
'replace': Replace instead of update
"""
return 0, []
- def update_object_hashmap(self, user, account, container, name, size, hashmap, meta={}, replace_meta=False, permissions=None):
+ def update_object_hashmap(self, user, account, container, name, size, hashmap, domain, meta={}, replace_meta=False, permissions=None):
"""Create/update an object with the specified size and partial hashes and return the new version.
Parameters:
- 'dest_meta': Dictionary with metadata to change
+ 'domain': Metadata domain
+
+ 'meta': Dictionary with metadata to change
'replace_meta': Replace metadata instead of update
"""
return ''
- def copy_object(self, user, src_account, src_container, src_name, dest_account, dest_container, dest_name, dest_meta={}, replace_meta=False, permissions=None, src_version=None):
+ def copy_object(self, user, src_account, src_container, src_name, dest_account, dest_container, dest_name, domain, meta={}, replace_meta=False, permissions=None, src_version=None):
"""Copy an object's data and metadata and return the new version.
Parameters:
- 'dest_meta': Dictionary with metadata to change from source to destination
+ 'domain': Metadata domain
+
+ 'meta': Dictionary with metadata to change from source to destination
'replace_meta': Replace metadata instead of update
"""
return ''
- def move_object(self, user, src_account, src_container, src_name, dest_account, dest_container, dest_name, dest_meta={}, replace_meta=False, permissions=None):
+ def move_object(self, user, src_account, src_container, src_name, dest_account, dest_container, dest_name, domain, meta={}, replace_meta=False, permissions=None):
"""Move an object's data and metadata and return the new version.
Parameters:
- 'dest_meta': Dictionary with metadata to change from source to destination
+ 'domain': Metadata domain
+
+ 'meta': Dictionary with metadata to change from source to destination
'replace_meta': Replace metadata instead of update
"""
return []
+ def get_uuid(self, user, uuid):
+ """Return the (account, container, name) for the UUID given.
+
+ Raises:
+ NotAllowedError: Operation not permitted
+
+ NameError: UUID does not exist
+ """
+ return None
+
def get_public(self, user, public):
"""Return the (account, container, name) for the public id given.