Added .send method to cloudfiles storage object
.. wrapper. Also added some logging - A .warn() for the legacy .write() method and a .debug() for the new copy_local_to_storage()
This commit is contained in:
parent
8b35e7ad15
commit
e11bc1991d
@ -162,6 +162,7 @@ class CloudFilesStorage(StorageInterface):
|
|||||||
# and bandwidth usage. So, override this method and use the
|
# and bandwidth usage. So, override this method and use the
|
||||||
# Cloudfile's "send" interface instead.
|
# Cloudfile's "send" interface instead.
|
||||||
# TODO: Fixing write() still seems worthwhile though.
|
# TODO: Fixing write() still seems worthwhile though.
|
||||||
|
_log.debug('Sending {0} to cloudfiles...'.format(filepath))
|
||||||
with self.get_file(filepath, 'wb') as dest_file:
|
with self.get_file(filepath, 'wb') as dest_file:
|
||||||
with file(filename, 'rb') as source_file:
|
with file(filename, 'rb') as source_file:
|
||||||
# Copy to storage system in 4096 byte chunks
|
# Copy to storage system in 4096 byte chunks
|
||||||
@ -196,6 +197,10 @@ class CloudFilesStorageObjectWrapper():
|
|||||||
Currently this method does not support any write modes except "append".
|
Currently this method does not support any write modes except "append".
|
||||||
However if we should need it it would be easy implement.
|
However if we should need it it would be easy implement.
|
||||||
"""
|
"""
|
||||||
|
_log.warn(
|
||||||
|
'{0}.write() has bad performance! Use .send instead for now'\
|
||||||
|
.format(self.__class__.__name__))
|
||||||
|
|
||||||
if self.storage_object.size and type(data) == str:
|
if self.storage_object.size and type(data) == str:
|
||||||
_log.debug('{0} is > 0 in size, appending data'.format(
|
_log.debug('{0} is > 0 in size, appending data'.format(
|
||||||
self.storage_object.name))
|
self.storage_object.name))
|
||||||
@ -205,9 +210,12 @@ class CloudFilesStorageObjectWrapper():
|
|||||||
self.storage_object.name))
|
self.storage_object.name))
|
||||||
self.storage_object.write(data, *args, **kwargs)
|
self.storage_object.write(data, *args, **kwargs)
|
||||||
|
|
||||||
|
def send(self, *args, **kw):
|
||||||
|
self.storage_object.send(*args, **kw)
|
||||||
|
|
||||||
def close(self):
|
def close(self):
|
||||||
"""
|
"""
|
||||||
Not implemented.
|
Not sure we need anything here.
|
||||||
"""
|
"""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user