completion_obj.rados_comp = completion
return completion_obj
+ @requires(('object_name', str_type), ('oncomplete', opt(Callable)))
def aio_stat(self, object_name, oncomplete):
"""
Asynchronously get object stats (size/mtime)
raise make_ex(ret, "error stating %s" % object_name)
return completion
+ @requires(('object_name', str_type), ('to_write', bytes), ('offset', int),
+ ('oncomplete', opt(Callable)), ('onsafe', opt(Callable)))
def aio_write(self, object_name, to_write, offset=0,
oncomplete=None, onsafe=None):
"""
raise make_ex(ret, "error writing object %s" % object_name)
return completion
+ @requires(('object_name', str_type), ('to_write', bytes), ('oncomplete', opt(Callable)),
+ ('onsafe', opt(Callable)))
def aio_write_full(self, object_name, to_write,
oncomplete=None, onsafe=None):
"""
raise make_ex(ret, "error writing object %s" % object_name)
return completion
+ @requires(('object_name', str_type), ('to_append', bytes), ('oncomplete', opt(Callable)),
+ ('onsafe', opt(Callable)))
def aio_append(self, object_name, to_append, oncomplete=None, onsafe=None):
"""
Asychronously append data to an object
if ret < 0:
raise make_ex(ret, "error flushing")
+ @requires(('object_name', str_type), ('length', int), ('offset', int),
+ ('oncomplete', opt(Callable)))
def aio_read(self, object_name, length, offset, oncomplete):
"""
Asychronously read data from an object
raise make_ex(ret, "error reading %s" % object_name)
return completion
- @requires(('object_name', str_type), ('cls', str_type), ('method', str_type), ('data', bytes))
+ @requires(('object_name', str_type), ('cls', str_type), ('method', str_type), ('data', bytes),
+ ('oncomplete', opt(Callable)), ('onsafe', opt(Callable)))
def aio_execute(self, object_name, cls, method, data,
length=8192, oncomplete=None, onsafe=None):
"""
raise make_ex(ret, "error executing %s::%s on %s" % (cls, method, object_name))
return completion
+ @requires(('object_name', str_type), ('oncomplete', opt(Callable)), ('onsafe', opt(Callable)))
def aio_remove(self, object_name, oncomplete=None, onsafe=None):
"""
Asychronously remove an object