diff options
Diffstat (limited to 'src/include/rados/librados.hpp')
-rw-r--r-- | src/include/rados/librados.hpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/include/rados/librados.hpp b/src/include/rados/librados.hpp index fb585d09811..d1b0d010498 100644 --- a/src/include/rados/librados.hpp +++ b/src/include/rados/librados.hpp @@ -115,6 +115,13 @@ namespace librados OP_FAILOK = 2, }; + + class ObjectOperationCompletion { + public: + virtual ~ObjectOperationCompletion() {} + virtual void handle_completion(int r, bufferlist& outbl) = 0; + }; + /* * ObjectOperation : compount object operation * Batch multiple object operations into a single request, to be applied @@ -136,6 +143,8 @@ namespace librados void src_cmpxattr(const std::string& src_oid, const char *name, int op, uint64_t v); void exec(const char *cls, const char *method, bufferlist& inbl); + void exec(const char *cls, const char *method, bufferlist& inbl, bufferlist *obl, int *prval); + void exec(const char *cls, const char *method, bufferlist& inbl, ObjectOperationCompletion *completion); /** * Guard operation with a check that object version == ver * |