Merge "download_object/get_object must have the same API"
This commit is contained in:
@@ -142,9 +142,9 @@ class Proxy(proxy.BaseProxy):
|
|||||||
def get_object(self, object, container=None):
|
def get_object(self, object, container=None):
|
||||||
"""Get the data associated with an object
|
"""Get the data associated with an object
|
||||||
|
|
||||||
:param object: The value can be the ID of an object or a
|
:param object: The value can be the name of an object or a
|
||||||
:class:`~openstack.object_store.v1.obj.Object` instance.
|
:class:`~openstack.object_store.v1.obj.Object` instance.
|
||||||
:param container: The value can be the ID of a container or a
|
:param container: The value can be the name of a container or a
|
||||||
:class:`~openstack.object_store.v1.container.Container`
|
:class:`~openstack.object_store.v1.container.Container`
|
||||||
instance.
|
instance.
|
||||||
|
|
||||||
@@ -159,15 +159,21 @@ class Proxy(proxy.BaseProxy):
|
|||||||
return self._get(_obj.Object, object,
|
return self._get(_obj.Object, object,
|
||||||
path_args={"container": container_name})
|
path_args={"container": container_name})
|
||||||
|
|
||||||
def download_object(self, object, path):
|
def download_object(self, object, container=None, path=None):
|
||||||
"""Download the data contained inside an object to disk.
|
"""Download the data contained inside an object to disk.
|
||||||
|
|
||||||
:param object: The object to save to disk.
|
:param object: The value can be the name of an object or a
|
||||||
:type object: :class:`~openstack.object_store.v1.obj.Object`
|
:class:`~openstack.object_store.v1.obj.Object` instance.
|
||||||
|
:param container: The value can be the name of a container or a
|
||||||
|
:class:`~openstack.object_store.v1.container.Container`
|
||||||
|
instance.
|
||||||
:param path str: Location to write the object contents.
|
:param path str: Location to write the object contents.
|
||||||
|
|
||||||
|
:raises: :class:`~openstack.exceptions.ResourceNotFound`
|
||||||
|
when no resource can be found.
|
||||||
"""
|
"""
|
||||||
with open(path, "w") as out:
|
with open(path, "w") as out:
|
||||||
out.write(self.get_object(object))
|
out.write(self.get_object(object, container))
|
||||||
|
|
||||||
def upload_object(self, **attrs):
|
def upload_object(self, **attrs):
|
||||||
"""Upload a new object from attributes
|
"""Upload a new object from attributes
|
||||||
|
@@ -264,7 +264,7 @@ class Test_download_object(TestObjectStoreProxy):
|
|||||||
file_path = "blarga/somefile"
|
file_path = "blarga/somefile"
|
||||||
with mock.patch("openstack.object_store.v1._proxy.open",
|
with mock.patch("openstack.object_store.v1._proxy.open",
|
||||||
fake_open, create=True):
|
fake_open, create=True):
|
||||||
self.proxy.download_object(ob, file_path)
|
self.proxy.download_object(ob, container="tainer", path=file_path)
|
||||||
|
|
||||||
fake_open.assert_called_once_with(file_path, "w")
|
fake_open.assert_called_once_with(file_path, "w")
|
||||||
fake_handle = fake_open()
|
fake_handle = fake_open()
|
||||||
|
Reference in New Issue
Block a user