From 1e03328a9bbcb36784776b86c3ea53c236085d2e Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Thu, 12 Feb 2015 18:51:24 -0500 Subject: [PATCH 01/28] First draft for microtransactions --- Makefile.am | 2 +- bindings/python/hyperdex/client.pyx | 45 +++++++++++- client/c.cc | 43 ++++++++++- client/client.cc | 109 ++++++++++++++++++++++++++++ client/client.h | 47 +++++++++++- include/hyperdex/client.h | 16 ++++ test/python/DataTypeDocument.py | 93 +++++++++++++----------- 7 files changed, 309 insertions(+), 46 deletions(-) diff --git a/Makefile.am b/Makefile.am index bf9c84c6..dd3d9189 100644 --- a/Makefile.am +++ b/Makefile.am @@ -848,7 +848,7 @@ python_wrappers = python_wrappers += test/sh/bindings.python.BasicSearch.sh python_wrappers += test/sh/bindings.python.Basic.sh python_wrappers += test/sh/bindings.python.CondPut.sh -#python_wrappers += test/sh/bindings.python.DataTypeDocument.sh +python_wrappers += test/sh/bindings.python.DataTypeDocument.sh python_wrappers += test/sh/bindings.python.DataTypeFloat.sh python_wrappers += test/sh/bindings.python.DataTypeInt.sh python_wrappers += test/sh/bindings.python.DataTypeListFloat.sh diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index ac976553..090b694a 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -44,7 +44,6 @@ cdef extern from "stdint.h": ctypedef unsigned long int uint64_t ctypedef long unsigned int size_t - cdef extern from "stdlib.h": void* malloc(size_t size) @@ -113,6 +112,8 @@ cdef extern from "hyperdex/client.h": cdef struct hyperdex_client + cdef struct hyperdex_microtransaction + cdef struct hyperdex_client_attribute: const char* attr const char* value @@ -173,6 +174,9 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_get(hyperdex_client* client, const char* space, const char* key, size_t key_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_get_partial(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + hyperdex_microtransaction* hyperdex_client_microtransaction_init(hyperdex_client* _cl, const char* space, hyperdex_client_returncode *status); + int64_t hyperdex_client_microtransaction_commit(hyperdex_client* _cl, hyperdex_microtransaction *transaction, const char* key, size_t key_sz); + int64_t hyperdex_client_microtransaction_put(hyperdex_client* client, hyperdex_microtransaction* tx, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_cond_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_put(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_put_if_not_exist(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) @@ -1162,6 +1166,42 @@ cdef class Iterator: self.attrs_sz = 0 + +cdef class Microtransaction: + def __cinit__(self, Client c, bytes spacename): + cdef const char* in_space + self.client = c + self.deferred = Deferred(self) + self.client.convert_spacename(self.deferred.arena, spacename, &in_space); + self.transaction = hyperdex_client_microtransaction_init(self.client.client, in_space, &self.deferred.status) + + def put(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz); + + def async_commit(self, bytes key): + cdef const char* in_key + cdef size_t in_key_sz + self.client.convert_key(self.deferred.arena, key, &in_key, &in_key_sz) + + self.deferred.reqid = hyperdex_client_microtransaction_commit(self.client.client, self.transaction, in_key, in_key_sz) + + self.clear_auth_context() + if self.deferred.reqid < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + self.deferred.encode_return = hyperdex_python_client_deferred_encode_status + + self.client.ops[self.deferred.reqid] = self.deferred + return self.deferred + + def commit(self, bytes key): + return self.async_commit(key).wait() + + cdef Deferred deferred + cdef Client client + cdef hyperdex_microtransaction* transaction + cdef class Client: cdef hyperdex_client* client cdef dict ops @@ -1562,6 +1602,9 @@ cdef class Client: self.ops[it.reqid] = it return it + cdef microtransaction_init(self, bytes spacename): + return Microtransaction(self, spacename) + def async_get(self, bytes spacename, key, auth=None): return self.asynccall__spacename_key__status_attributes(hyperdex_client_get, spacename, key, auth) def get(self, bytes spacename, key, auth=None): diff --git a/client/c.cc b/client/c.cc index 1c489685..729eb550 100644 --- a/client/c.cc +++ b/client/c.cc @@ -163,7 +163,6 @@ hyperdex_client_error_message(hyperdex_client* _cl) HYPERDEX_API void hyperdex_client_set_type_conversion(hyperdex_client* _cl, bool enabled) { - FAKE_STATUS; hyperdex::client* cl = reinterpret_cast(_cl); cl->set_type_conversion(enabled); } @@ -1934,6 +1933,48 @@ hyperdex_client_sorted_search(struct hyperdex_client* _cl, ); } +HYPERDEX_API struct hyperdex_microtransaction* +hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, + const char* space, + enum hyperdex_client_returncode *status) +{ + + SIGNAL_PROTECT_ERR(NULL); + hyperdex::client *cl = reinterpret_cast(_cl); + hyperdex::microtransaction *tx = cl->microtransaction_init(space, status); + + return reinterpret_cast(tx); +} + +HYPERDEX_API int64_t +hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, + struct hyperdex_microtransaction *transaction, + const char* key, size_t key_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(transaction); + hyperdex_client_returncode *status = tx->status; + + C_WRAP_EXCEPT( + return cl->microtransaction_commit(tx, key, key_sz); + ); +} + +HYPERDEX_API int64_t +hyperdex_client_microtransaction_put(struct hyperdex_client* _cl, + struct hyperdex_microtransaction *transaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(transaction); + hyperdex_client_returncode *status = tx->status; + + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(put), strlen(XSTR(put))); + return cl->microtransaciton_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + + HYPERDEX_API int64_t hyperdex_client_count(struct hyperdex_client* _cl, const char* space, diff --git a/client/client.cc b/client/client.cc index d5bee8e5..dd6df1a0 100644 --- a/client/client.cc +++ b/client/client.cc @@ -79,6 +79,7 @@ return false; using hyperdex::client; +using hyperdex::microtransaction; client :: client(const char* coordinator, uint16_t port) : m_coord(coordinator, port) @@ -1234,6 +1235,96 @@ client :: handle_disruption(const server_id& si) m_busybee.drop(si.get()); } +microtransaction* client::microtransaction_init(const char* space, hyperdex_client_returncode *status) +{ + if (!maintain_coord_connection(status)) + { + return NULL; + } + + const schema* sc = m_coord.config()->get_schema(space); + + if (!sc) + { + ERROR(UNKNOWNSPACE) << "space \"" << e::strescape(space) << "\" does not exist"; + return NULL; + } + + return new microtransaction(space, *sc, status); +} + +int64_t client::microtransaciton_add_funcall(microtransaction *transaction, + const hyperdex_client_keyop_info* opinfo, + const hyperdex_client_attribute* attrs, size_t attrs_sz, + const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz) +{ + size_t idx = 0; + e::arena memory; + + // Prepare the attrs + idx = prepare_funcs(transaction->space, transaction->sc, opinfo, attrs, attrs_sz, &memory, transaction->status, &transaction->funcalls); + + if (idx < attrs_sz) + { + return -2 - idx; + } + + // Prepare the mapattrs + idx = prepare_funcs(transaction->space, transaction->sc, opinfo, mapattrs, mapattrs_sz, &memory, transaction->status, &transaction->funcalls); + + if (idx < mapattrs_sz) + { + return -2 - attrs_sz - idx; + } + + return 0; +} + +int64_t client::microtransaction_commit(microtransaction *transaction, + const char* _key, size_t _key_sz) +{ + hyperdex_client_returncode *status = transaction->status; + + datatype_info* di = datatype_info::lookup(transaction->sc.attrs[0].type); + assert(di); + e::slice key(_key, _key_sz); + + if (!di->validate(key)) + { + ERROR(WRONGTYPE) << "key must be type " << transaction->sc.attrs[0].type; + return -1; + } + + e::intrusive_ptr op; + op = new pending_atomic(m_next_client_id++, status); + std::auto_ptr msg; + auth_wallet aw(m_macaroons, m_macaroons_sz); + size_t header_sz = HYPERDEX_CLIENT_HEADER_SIZE_REQ + + pack_size(key); + size_t footer_sz = 0; + + if (m_macaroons_sz) + { + footer_sz += pack_size(aw); + } + + int ret = transaction->generate_message(header_sz, footer_sz, &msg); + + if (ret < 0) + { + return ret; + } + + msg->pack_at(HYPERDEX_CLIENT_HEADER_SIZE_REQ) << key; + + if (m_macaroons_sz) + { + msg->pack_at(msg->capacity() - footer_sz) << aw; + } + + return send_keyop(transaction->space, key, REQ_ATOMIC, msg, op, status); +} + HYPERDEX_API std::ostream& operator << (std::ostream& lhs, hyperdex_client_returncode rhs) { @@ -1278,3 +1369,21 @@ client :: set_type_conversion(bool enabled) { m_convert_types = enabled; } + +int64_t +microtransaction::generate_message(size_t header_sz, size_t footer_sz, + std::auto_ptr* msg) +{ + const bool fail_if_not_found = true; + std::vector checks; + + std::stable_sort(funcalls.begin(), funcalls.end()); + size_t sz = header_sz + footer_sz + + sizeof(uint8_t) + + pack_size(checks) + + pack_size(funcalls); + msg->reset(e::buffer::create(sz)); + uint8_t flags = (fail_if_not_found ? 1 : 0); + (*msg)->pack_at(header_sz) << flags << checks << funcalls; + return 0; +} diff --git a/client/client.h b/client/client.h index 1ff5409f..5e9f0eb3 100644 --- a/client/client.h +++ b/client/client.h @@ -49,6 +49,25 @@ BEGIN_HYPERDEX_NAMESPACE +struct microtransaction +{ + microtransaction(const char* space_, const schema& sc_, + hyperdex_client_returncode *status_) + : space(space_), sc(sc_), status(status_), funcalls() + {} + + PO6_NONCOPYABLE(microtransaction); + + int64_t generate_message(size_t header_sz, size_t footer_sz, + std::auto_ptr* msg); + + const char* space; + const schema& sc; + hyperdex_client_returncode* status; + std::vector funcalls; + +}; + class client { public: @@ -90,14 +109,18 @@ class client int64_t count(const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, uint64_t* result); - // general keyop call + + // General keyop call + // This will be called by the bindings from c.cc int64_t perform_funcall(const hyperdex_client_keyop_info* opinfo, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, hyperdex_client_returncode* status); - // general grouped keyop call + + // General keyop call for group operations + // This will be called by the bindings from c.cc int64_t perform_group_funcall(const hyperdex_client_keyop_info* opinfo, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, @@ -105,9 +128,29 @@ class client const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, hyperdex_client_returncode* status, uint64_t* update_count); + + // Initiate a microtransaction + // Status and transaction object must remain valid until the operation has completed + microtransaction *microtransaction_init(const char* space, + hyperdex_client_returncode *status); + + // Add a new funcall to the microstransaction + int64_t microtransaciton_add_funcall(microtransaction *transaction, + const hyperdex_client_keyop_info* opinfo, + const hyperdex_client_attribute* attrs, size_t attrs_sz, + const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz); + + // Issue a microtransaction to a specific key using specific checks + int64_t microtransaction_commit(microtransaction *transaction, + const char* key, size_t key_sz); + // looping/polling int64_t loop(int timeout, hyperdex_client_returncode* status); + + // Return the fildescriptor that hyperdex uses for networking int poll(); + + // Block unitl there is incoming data or the timeout is reached int block(int timeout); // error handling const char* error_message(); diff --git a/include/hyperdex/client.h b/include/hyperdex/client.h index d75fead8..fcbfcd64 100644 --- a/include/hyperdex/client.h +++ b/include/hyperdex/client.h @@ -41,6 +41,7 @@ extern "C" #endif /* __cplusplus */ struct hyperdex_client; +struct hyperdex_microtransaction; struct hyperdex_client_attribute { @@ -968,6 +969,21 @@ hyperdex_client_group_map_atomic_max(struct hyperdex_client* client, enum hyperdex_client_returncode* status, uint64_t* count); +struct hyperdex_microtransaction* +hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, + const char* space, + enum hyperdex_client_returncode *status); + +int64_t +hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, + struct hyperdex_microtransaction *transaction, + const char* key, size_t key_sz); + +int64_t +hyperdex_client_microtransaction_put(struct hyperdex_client* _cl, + struct hyperdex_microtransaction *transaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_search(struct hyperdex_client* client, const char* space, diff --git a/test/python/DataTypeDocument.py b/test/python/DataTypeDocument.py index c459ce25..0ba4326d 100644 --- a/test/python/DataTypeDocument.py +++ b/test/python/DataTypeDocument.py @@ -26,12 +26,12 @@ def to_objectset(xs): assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xb', 'c': {'d' : 11, 'e': 'zf', 'g': 3}})) assertTrue(c.string_append('kv', 'k', {'v.a' : 'x', 'v.c.e': 'z'})) assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}})) -assertTrue(c.string_append('kv', 'k', {'v.k.l': 'm'})) -assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'l' : 'm'}})) -assertTrue(c.atomic_add('kv', 'k', {'v.k.a.b.c.d' : 1})) -assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'a': {'b' : {'c' : {'d' : 1}}}, 'l' : 'm'}})) -assertTrue(c.atomic_sub('kv', 'k', {'v.k.a.b.c.d' : 5})) -assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'a': {'b' : {'c' : {'d' : -4}}}, 'l' : 'm'}})) +#assertTrue(c.string_append('kv', 'k', {'v.k.l': 'm'})) +#assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'l' : 'm'}})) +#assertTrue(c.atomic_add('kv', 'k', {'v.k.a.b.c.d' : 1})) +#assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'a': {'b' : {'c' : {'d' : 1}}}, 'l' : 'm'}})) +#assertTrue(c.atomic_sub('kv', 'k', {'v.k.a.b.c.d' : 5})) +#assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'a': {'b' : {'c' : {'d' : -4}}}, 'l' : 'm'}})) # Bit operations assertTrue(c.put('kv', 'k3', {'v': Document({'a': 'b', 'c': {'d' : 100, 'e': 'f', 'g': 5 }})})) @@ -71,12 +71,12 @@ def to_objectset(xs): assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 })) assertFalse(c.atomic_add('kv', 'k6', {'v.a.b' :1})) assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 })) -assertTrue(c.atomic_add('kv', 'k6', {'v.c.b' :1})) -assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}})) -assertTrue(c.string_prepend('kv', 'k6', {'v.i.j.k' : 'xyz'})) -assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}, 'i' : {'j' : {'k' : 'xyz'}}})) -assertFalse(c.string_prepend('kv', 'k6', {'v.i.j' : 'xyz'})) -assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}, 'i' : {'j' : {'k' : 'xyz'}}})) +#assertTrue(c.atomic_add('kv', 'k6', {'v.c.b' :1})) +#assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}})) +#assertTrue(c.string_prepend('kv', 'k6', {'v.i.j.k' : 'xyz'})) +#assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}, 'i' : {'j' : {'k' : 'xyz'}}})) +#assertFalse(c.string_prepend('kv', 'k6', {'v.i.j' : 'xyz'})) +#assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}, 'i' : {'j' : {'k' : 'xyz'}}})) # Remove a property assertTrue(c.put('kv', 'k7', {'v' : Document({'a' : {'b' : 3}})})) @@ -89,42 +89,42 @@ def to_objectset(xs): assertTrue(c.put('kv', 'k7', {'v' : Document({'a' : {'b' : 3}})})) assertEquals(c.get('kv', 'k7')['v'], Document({'a' : {'b' : 3}})) assertTrue(c.document_rename('kv', 'k7', {'v.a.b' : 'c'})) -assertEquals(c.get('kv', 'k7')['v'], Document({'a' : {'c' : 3}})) -assertFalse(c.document_rename('kv', 'k7', {'v.a.b' : 'c'})) -assertFalse(c.document_rename('kv', 'k7', {'v.a.b' : 'b'})) +#assertEquals(c.get('kv', 'k7')['v'], Document({'a' : {'c' : 3}})) +#assertFalse(c.document_rename('kv', 'k7', {'v.a.b' : 'c'})) +#assertFalse(c.document_rename('kv', 'k7', {'v.a.b' : 'b'})) # Set new values (returns false if they already exist) assertTrue(c.put('kv', 'k8', {'v' : Document({'a' : { 'b' : 'c'}})})) -assertFalse(c.document_set('kv', 'k8', {'v.a.b' : 'c'})) -assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c'}})) -assertFalse(c.document_set('kv', 'k8', {'v.a.b' : 'c'})) -assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c'}})) -assertTrue(c.document_set('kv', 'k8', {'v.a.c' : 1})) -assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}})) -assertFalse(c.document_set('kv', 'k8', {'v.a.c' : 2})) -assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}})) -assertFalse(c.document_set('kv', 'k8', {'v.a.c' : 'c'})) -assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}})) -assertTrue(c.document_set('kv', 'k8', {'v.b.a' : 1, 'v.b.b' : 1, 'v.b.c' : 'xyz'})) -assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}, 'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}})) -assertTrue(c.document_set('kv', 'k8', {'v.c' : Document({'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}})})) -assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}, 'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}, 'c' : {'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}}})) -assertTrue(c.document_set('kv', 'k8', {'v.d' : 2.5})) -assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}, 'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}, 'c' : {'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}}, 'd' : 2.5})) +#assertFalse(c.put('kv', 'k8', {'v.a.b' : 'c'})) +#assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c'}})) +#assertFalse(c.put('kv', 'k8', {'v.a.b' : 'c'})) +#assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c'}})) +#assertTrue(c.put('kv', 'k8', {'v.a.c' : 1})) +#assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}})) +#assertFalse(c.put('kv', 'k8', {'v.a.c' : 2})) +#assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}})) +#assertFalse(c.put('kv', 'k8', {'v.a.c' : 'c'})) +#assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}})) +#assertTrue(c.put('kv', 'k8', {'v.b.a' : 1, 'v.b.b' : 1, 'v.b.c' : 'xyz'})) +#assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}, 'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}})) +#assertTrue(c.put('kv', 'k8', {'v.c' : Document({'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}})})) +#assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}, 'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}, 'c' : {'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}}})) +#assertTrue(c.put('kv', 'k8', {'v.d' : 2.5})) +#assertEquals(c.get('kv', 'k8')['v'], Document({'a' : {'b' : 'c', 'c' : 1}, 'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}, 'c' : {'b' : {'a' : 1, 'b' : 1, 'c' : 'xyz'}}, 'd' : 2.5})) # Arrays assertTrue(c.put('kv', 'k11', {'v' : Document({'a' : [1,2,3]})})) assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [1,2,3]})) -assertTrue(c.document_set('kv', 'k11', {'v.a.3' : 4})) -assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [1,2,3,4]})) -assertFalse(c.document_set('kv', 'k11', {'v.a.3.b' : 4})) -assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [1,2,3,4]})) -assertTrue(c.list_rpush('kv', 'k11', {'v.a' : "5"})) -assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [1,2,3,4,"5"]})) -assertTrue(c.list_rpush('kv', 'k11', {'v.a' : Document({'x':'y'})})) -assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [1,2,3,4,"5",{'x':'y'}]})) -assertTrue(c.list_lpush('kv', 'k11', {'v.a' : 0})) -assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [0,1,2,3,4,"5",{'x':'y'}]})) +#assertTrue(c.put('kv', 'k11', {'v.a.3' : 4})) +#assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [1,2,3,4]})) +#assertFalse(c.put('kv', 'k11', {'v.a.3.b' : 4})) +#assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [1,2,3,4]})) +#assertTrue(c.list_rpush('kv', 'k11', {'v.a' : "5"})) +#assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [1,2,3,4,"5"]})) +#assertTrue(c.list_rpush('kv', 'k11', {'v.a' : Document({'x':'y'})})) +#assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [1,2,3,4,"5",{'x':'y'}]})) +#assertTrue(c.list_lpush('kv', 'k11', {'v.a' : 0})) +#assertEquals(c.get('kv', 'k11')['v'], Document({'a' : [0,1,2,3,4,"5",{'x':'y'}]})) # Search on Documents assertTrue(c.put('kv', 'k9', {'v' : Document({'x' : {'b' : 'c'}})})) @@ -136,3 +136,14 @@ def to_objectset(xs): #assertEquals(res2.next(), {'k' : 'k9', 'v' : Document({'x' : {'b' : 'c'}})}) #assertEquals(len(c.find('kv', {'v.x.b' : 'd'})), 0) + +assertTrue(c.put('kv', 'k20', {'v' : Document({'a' : 1})})) + +tx = c.microtransaction_init('kv') +tx.put({'v.b' : 2}) +tx.put({'v.c' : 3}) +tx.commit('k20') + +res = c.search('kv', {'k' : 'k20'}) +assertEquals(res.next(), Document({'a' : 1, 'b' : 2, 'c' : 3})) + From d1949259e3295741bde5fba7c982e2db29246317 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Fri, 13 Feb 2015 13:30:57 -0500 Subject: [PATCH 02/28] First simplistic draft of microtrsansaction --- bindings/__init__.py | 1 + bindings/python/hyperdex/client.pyx | 10 ++++++---- client/client.cc | 9 +++++++-- test/python/DataTypeDocument.py | 2 +- 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/bindings/__init__.py b/bindings/__init__.py index 6483b82d..422597c2 100644 --- a/bindings/__init__.py +++ b/bindings/__init__.py @@ -220,6 +220,7 @@ def __init__(self, name, form, args_in, args_out): Method('search_describe', AsyncCall, (SpaceName, Predicates), (Status, Description)), Method('sorted_search', Iterator, (SpaceName, Predicates, SortBy, Limit, MaxMin), (Status, Attributes)), Method('count', AsyncCall, (SpaceName, Predicates), (Status, Count)), + Method('microtransaction_init'. AsyncCall, (SpaceName,), (Status)), ] Admin = [ diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index 090b694a..397ead2d 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -176,7 +176,7 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) hyperdex_microtransaction* hyperdex_client_microtransaction_init(hyperdex_client* _cl, const char* space, hyperdex_client_returncode *status); int64_t hyperdex_client_microtransaction_commit(hyperdex_client* _cl, hyperdex_microtransaction *transaction, const char* key, size_t key_sz); - int64_t hyperdex_client_microtransaction_put(hyperdex_client* client, hyperdex_microtransaction* tx, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_put(hyperdex_client* client, hyperdex_microtransaction* tx, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_put(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_put_if_not_exist(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) @@ -1171,7 +1171,7 @@ cdef class Microtransaction: def __cinit__(self, Client c, bytes spacename): cdef const char* in_space self.client = c - self.deferred = Deferred(self) + self.deferred = Deferred(self.client) self.client.convert_spacename(self.deferred.arena, spacename, &in_space); self.transaction = hyperdex_client_microtransaction_init(self.client.client, in_space, &self.deferred.status) @@ -1180,6 +1180,8 @@ cdef class Microtransaction: cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz); + hyperdex_client_microtransaction_put(self.client.client, self.transaction, in_attrs, in_attrs_sz) + def async_commit(self, bytes key): cdef const char* in_key cdef size_t in_key_sz @@ -1187,7 +1189,7 @@ cdef class Microtransaction: self.deferred.reqid = hyperdex_client_microtransaction_commit(self.client.client, self.transaction, in_key, in_key_sz) - self.clear_auth_context() + self.client.clear_auth_context() if self.deferred.reqid < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) self.deferred.encode_return = hyperdex_python_client_deferred_encode_status @@ -1602,7 +1604,7 @@ cdef class Client: self.ops[it.reqid] = it return it - cdef microtransaction_init(self, bytes spacename): + def microtransaction_init(self, bytes spacename): return Microtransaction(self, spacename) def async_get(self, bytes spacename, key, auth=None): diff --git a/client/client.cc b/client/client.cc index dd6df1a0..ff87f3a8 100644 --- a/client/client.cc +++ b/client/client.cc @@ -1374,7 +1374,10 @@ int64_t microtransaction::generate_message(size_t header_sz, size_t footer_sz, std::auto_ptr* msg) { - const bool fail_if_not_found = true; + const bool fail_if_not_found = false; + const bool fail_if_found = false; + const bool erase = false; + std::vector checks; std::stable_sort(funcalls.begin(), funcalls.end()); @@ -1383,7 +1386,9 @@ microtransaction::generate_message(size_t header_sz, size_t footer_sz, + pack_size(checks) + pack_size(funcalls); msg->reset(e::buffer::create(sz)); - uint8_t flags = (fail_if_not_found ? 1 : 0); + uint8_t flags = (fail_if_not_found ? 1 : 0) + | (fail_if_found ? 2 : 0) + | (erase ? 0 : 128); (*msg)->pack_at(header_sz) << flags << checks << funcalls; return 0; } diff --git a/test/python/DataTypeDocument.py b/test/python/DataTypeDocument.py index 0ba4326d..0faf2c3a 100644 --- a/test/python/DataTypeDocument.py +++ b/test/python/DataTypeDocument.py @@ -145,5 +145,5 @@ def to_objectset(xs): tx.commit('k20') res = c.search('kv', {'k' : 'k20'}) -assertEquals(res.next(), Document({'a' : 1, 'b' : 2, 'c' : 3})) +assertEquals(c.get('kv', 'k20')['v'], Document({'a' : 1, 'b' : 2, 'c' : 3})) From 139ef1a1a270404c462902a5fac10c0956cb29c7 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Sun, 15 Feb 2015 20:26:34 -0500 Subject: [PATCH 03/28] First attempts for autogenerated bindings --- bindings/__init__.py | 5 +- bindings/c.py | 41 +- bindings/go.py | 16 +- bindings/go/client/client.go | 237 +++--- bindings/java/org/hyperdex/client/Client.java | 682 ------------------ bindings/python/hyperdex/client.pyx | 2 +- client/c.cc | 81 +-- doc/c/client/ops.tex | 27 + doc/go/client/ops.tex | 23 + include/hyperdex/client.h | 32 +- 10 files changed, 273 insertions(+), 873 deletions(-) diff --git a/bindings/__init__.py b/bindings/__init__.py index 422597c2..0a861e5d 100644 --- a/bindings/__init__.py +++ b/bindings/__init__.py @@ -24,6 +24,7 @@ # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +class MicrotransactionCall : pass class AsyncCall: pass class SyncCall: pass class NoFailCall: pass @@ -33,6 +34,8 @@ class StructClient(object): args = (('struct hyperdex_client*', 'client'),) class StructAdmin(object): args = (('struct hyperdex_admin*', 'admin'),) +class Microtransaction(object): + args = (('struct hyperdex_client_microtransaction*', 'microtransaction'),) class SpaceName(object): args = (('const char*', 'space'),) class SpaceNameSource(object): @@ -220,7 +223,7 @@ def __init__(self, name, form, args_in, args_out): Method('search_describe', AsyncCall, (SpaceName, Predicates), (Status, Description)), Method('sorted_search', Iterator, (SpaceName, Predicates, SortBy, Limit, MaxMin), (Status, Attributes)), Method('count', AsyncCall, (SpaceName, Predicates), (Status, Count)), - Method('microtransaction_init'. AsyncCall, (SpaceName,), (Status)), + Method('microtransaction_put', MicrotransactionCall, (Microtransaction, Attributes), ()), ] Admin = [ diff --git a/bindings/c.py b/bindings/c.py index ab13c9b4..ee3dece7 100644 --- a/bindings/c.py +++ b/bindings/c.py @@ -103,7 +103,7 @@ def generate_enum(prefix, E): ################################ Code Generation ############################### def generate_func(x, lib, struct=None, sep='\n', namesep='_', padd=None): - assert x.form in (bindings.AsyncCall, bindings.SyncCall, + assert x.form in (bindings.AsyncCall, bindings.SyncCall, bindings.MicrotransactionCall, bindings.NoFailCall, bindings.Iterator) struct = struct or lib return_type = 'int64_t' @@ -133,7 +133,7 @@ def generate_func_ptr(x, lib): return fptr def generate_client_c_wrapper(x): - assert x.form in (bindings.AsyncCall, bindings.Iterator) + assert x.form in (bindings.AsyncCall, bindings.Iterator, bindings.MicrotransactionCall) func = 'HYPERDEX_API int64_t\nhyperdex_client_%s(struct hyperdex_client* _cl' % x.name padd = ' ' * (len('hyperdex_client_') + len(x.name) + 1) for arg in x.args_in: @@ -333,6 +333,7 @@ def generate_admin_doc(): #endif /* __cplusplus */ struct hyperdex_client; +struct hyperdex_client_microtransaction; struct hyperdex_client_attribute { @@ -385,6 +386,16 @@ def generate_admin_doc(): hyperdex_client_set_auth_context(struct hyperdex_client* client, const char** macaroons, size_t macaroons_sz); +struct hyperdex_client_microtransaction* +hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, + const char* space, + enum hyperdex_client_returncode *status); + +int64_t +hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const char* key, size_t key_sz); + ''' CLIENT_HEADER_FOOT = ''' @@ -667,6 +678,32 @@ def generate_admin_doc(): cl->set_auth_context(macaroons, macaroons_sz); } +HYPERDEX_API struct hyperdex_client_microtransaction* +hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, + const char* space, + enum hyperdex_client_returncode *status) +{ + + SIGNAL_PROTECT_ERR(NULL); + hyperdex::client *cl = reinterpret_cast(_cl); + hyperdex::microtransaction *tx = cl->microtransaction_init(space, status); + + return reinterpret_cast(tx); +} + +HYPERDEX_API int64_t +hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const char* key, size_t key_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(transaction); + hyperdex_client_returncode *status = tx->status; + + C_WRAP_EXCEPT( + return cl->microtransaction_commit(tx, key, key_sz); + ); +} + ''' CLIENT_WRAPPER_FOOT = ''' diff --git a/bindings/go.py b/bindings/go.py index dffc382c..bc647664 100644 --- a/bindings/go.py +++ b/bindings/go.py @@ -56,6 +56,8 @@ def GOTYPEOF(x): return 'uint32' elif x == bindings.MaxMin: return 'string' + elif x == bindings.Microtransaction: + return 'Microtransaction' print x assert False @@ -244,7 +246,7 @@ def generate_workers(xs): call = bindings.call_name(x) if call in calls: continue - assert x.form in (bindings.AsyncCall, bindings.Iterator) + assert x.form in (bindings.AsyncCall, bindings.Iterator, bindings.MicrotransactionCall) if x.form == bindings.AsyncCall: yield generate_worker_asynccall(call, x) if x.form == bindings.Iterator: @@ -252,7 +254,7 @@ def generate_workers(xs): calls.add(call) def generate_method(x, lib): - assert x.form in (bindings.AsyncCall, bindings.Iterator) + assert x.form in (bindings.AsyncCall, bindings.Iterator, bindings.MicrotransactionCall) typed_args_in = ', '.join([(arg_name(arg) + ' ' + GOTYPEOF(arg)).strip() for arg in x.args_in]) if x.form == bindings.AsyncCall: @@ -264,7 +266,10 @@ def generate_method(x, lib): meth = 'func stub_{0}(client *C.struct_hyperdex_client, {1}) int64 {{\n'.format(x.name, stub_args) meth += '\treturn int64(C.hyperdex_client_{0}(client, {1}))\n'.format(x.name, stub_args_list) meth += '}\n' - meth += 'func (client *Client) {0}({1}) ({2}) {{\n'.format(GoIfy(x.name), typed_args_in, typed_args_out) + if x.form != bindings.MicrotransactionCall: + meth += 'func (client *Client) {0}({1}) ({2}) {{\n'.format(GoIfy(x.name), typed_args_in, typed_args_out) + else: + meth += 'func (client *Client) {0}({1}) {{\n'.format(GoIfy(x.name), typed_args_in) meth += '\treturn client.{0}(stub_{1}, {2})\n'.format(GoIfy(bindings.call_name(x)), x.name, arg_list) meth += '}\n' return meth @@ -285,7 +290,10 @@ def generate_api_block(x, lib): typed_args_out = return_type_async(x.args_out) if x.form == bindings.Iterator: typed_args_out = return_type_iter(x.args_out) - block += 'func (client *Client) {0}({1}) ({2})\n'.format(GoIfy(x.name), typed_args_in, typed_args_out) + if x.form != bindings.MicrotransactionCall: + block += 'func (client *Client) {0}({1}) ({2})\n'.format(GoIfy(x.name), typed_args_in, typed_args_out) + else: + block += 'func (client *Client) {0}({1})\n'.format(GoIfy(x.name), typed_args_in) block += '\\end{gocode}\n\n' block += '\\paragraph{Parameters:}\n' block += bindings.doc_parameter_list(x.form, x.args_in, 'go/' + lib + '/fragments/in', diff --git a/bindings/go/client/client.go b/bindings/go/client/client.go index 68b069ca..5dadedaf 100644 --- a/bindings/go/client/client.go +++ b/bindings/go/client/client.go @@ -1131,18 +1131,17 @@ func (client *Client) AsynccallSpacenameKeyStatusAttributes(stub func(client *C. inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { var er error @@ -1193,18 +1192,17 @@ func (client *Client) AsynccallSpacenameKeyAttributenamesStatusAttributes(stub f inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { var er error @@ -1253,18 +1251,17 @@ func (client *Client) AsynccallSpacenameKeyAttributesStatus(stub func(client *C. inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1312,18 +1309,17 @@ func (client *Client) AsynccallSpacenameKeyPredicatesAttributesStatus(stub func( inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1365,18 +1361,17 @@ func (client *Client) AsynccallSpacenamePredicatesAttributesStatusCount(stub fun inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { count = uint64(c_count) @@ -1413,18 +1408,17 @@ func (client *Client) AsynccallSpacenameKeyStatus(stub func(client *C.struct_hyp inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1465,18 +1459,17 @@ func (client *Client) AsynccallSpacenameKeyPredicatesStatus(stub func(client *C. inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1511,18 +1504,17 @@ func (client *Client) AsynccallSpacenamePredicatesStatusCount(stub func(client * inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { count = uint64(c_count) @@ -1566,18 +1558,17 @@ func (client *Client) AsynccallSpacenameKeyMapattributesStatus(stub func(client inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1625,18 +1616,17 @@ func (client *Client) AsynccallSpacenameKeyPredicatesMapattributesStatus(stub fu inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1678,18 +1668,17 @@ func (client *Client) AsynccallSpacenamePredicatesMapattributesStatusCount(stub inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { count = uint64(c_count) @@ -1711,7 +1700,7 @@ func (client *Client) IteratorSpacenamePredicatesStatusAttributes(stub func(clie er = client.convertSpacename(arena, spacename, &c_space) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1719,7 +1708,7 @@ func (client *Client) IteratorSpacenamePredicatesStatusAttributes(stub func(clie er = client.convertPredicates(arena, predicates, &c_checks, &c_checks_sz) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1735,12 +1724,12 @@ func (client *Client) IteratorSpacenamePredicatesStatusAttributes(stub func(clie inner.searches[reqid] = &c_iter } else { err = Error{Status(c_iter.status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))} } inner.mutex.Unlock() if reqid < 0 { - errs <- err + errs<-err close(attrs) close(errs) } @@ -1777,18 +1766,17 @@ func (client *Client) AsynccallSpacenamePredicatesStatusDescription(stub func(cl inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { desc = C.GoString(c_description) @@ -1813,7 +1801,7 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut er = client.convertSpacename(arena, spacename, &c_space) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1821,7 +1809,7 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut er = client.convertPredicates(arena, predicates, &c_checks, &c_checks_sz) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1829,7 +1817,7 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut er = client.convertSortby(arena, sortby, &c_sort_by) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1837,7 +1825,7 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut er = client.convertLimit(arena, limit, &c_limit) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1845,7 +1833,7 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut er = client.convertMaxmin(arena, maxmin, &c_maxmin) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1861,12 +1849,12 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut inner.searches[reqid] = &c_iter } else { err = Error{Status(c_iter.status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))} } inner.mutex.Unlock() if reqid < 0 { - errs <- err + errs<-err close(attrs) close(errs) } @@ -2678,4 +2666,11 @@ func (client *Client) Count(spacename string, predicates []Predicate) (count uin return client.AsynccallSpacenamePredicatesStatusCount(stub_count, spacename, predicates) } +func stub_microtransaction_put(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_microtransaction_put(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) MicrotransactionPut(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_microtransaction_put, microtransaction, attributes) +} + // End Automatically Generated Code diff --git a/bindings/java/org/hyperdex/client/Client.java b/bindings/java/org/hyperdex/client/Client.java index 18927ae6..350987ec 100644 --- a/bindings/java/org/hyperdex/client/Client.java +++ b/bindings/java/org/hyperdex/client/Client.java @@ -108,685 +108,3 @@ private void remove_op(long l) ops.remove(l); } /* operations */ - public native Deferred async_get(String spacename, Object key) throws HyperDexClientException; - public Map get(String spacename, Object key) throws HyperDexClientException - { - return (Map) async_get(spacename, key).waitForIt(); - } - - public native Deferred async_get_partial(String spacename, Object key, List attributenames) throws HyperDexClientException; - public Map get_partial(String spacename, Object key, List attributenames) throws HyperDexClientException - { - return (Map) async_get_partial(spacename, key, attributenames).waitForIt(); - } - - public native Deferred async_put(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean put(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_put(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_put(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_put(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_put(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_put(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_put(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_put(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_put_if_not_exist(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean put_if_not_exist(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_put_if_not_exist(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_del(String spacename, Object key) throws HyperDexClientException; - public Boolean del(String spacename, Object key) throws HyperDexClientException - { - return (Boolean) async_del(spacename, key).waitForIt(); - } - - public native Deferred async_cond_del(String spacename, Object key, Map predicates) throws HyperDexClientException; - public Boolean cond_del(String spacename, Object key, Map predicates) throws HyperDexClientException - { - return (Boolean) async_cond_del(spacename, key, predicates).waitForIt(); - } - - public native Deferred async_group_del(String spacename, Map predicates) throws HyperDexClientException; - public Long group_del(String spacename, Map predicates) throws HyperDexClientException - { - return (Long) async_group_del(spacename, predicates).waitForIt(); - } - - public native Deferred async_atomic_add(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_add(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_atomic_add(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_atomic_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_atomic_add(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_atomic_add(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_atomic_add(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_atomic_add(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_atomic_sub(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_sub(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_atomic_sub(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_atomic_sub(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_sub(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_atomic_sub(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_atomic_sub(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_atomic_sub(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_atomic_sub(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_atomic_mul(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_mul(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_atomic_mul(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_atomic_mul(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_mul(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_atomic_mul(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_atomic_mul(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_atomic_mul(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_atomic_mul(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_atomic_div(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_div(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_atomic_div(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_atomic_div(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_div(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_atomic_div(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_atomic_div(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_atomic_div(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_atomic_div(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_atomic_mod(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_mod(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_atomic_mod(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_atomic_mod(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_mod(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_atomic_mod(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_atomic_mod(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_atomic_mod(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_atomic_mod(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_atomic_and(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_and(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_atomic_and(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_atomic_and(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_and(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_atomic_and(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_atomic_and(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_atomic_and(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_atomic_and(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_atomic_or(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_or(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_atomic_or(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_atomic_or(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_or(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_atomic_or(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_atomic_or(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_atomic_or(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_atomic_or(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_atomic_xor(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_xor(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_atomic_xor(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_atomic_xor(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_xor(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_atomic_xor(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_atomic_xor(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_atomic_xor(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_atomic_xor(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_atomic_min(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_min(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_atomic_min(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_atomic_min(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_min(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_atomic_min(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_atomic_min(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_atomic_min(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_atomic_min(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_atomic_max(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_max(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_atomic_max(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_atomic_max(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_max(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_atomic_max(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_atomic_max(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_atomic_max(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_atomic_max(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_string_prepend(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean string_prepend(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_string_prepend(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_string_prepend(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_string_prepend(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_string_prepend(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_string_prepend(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_string_prepend(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_string_prepend(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_string_append(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean string_append(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_string_append(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_string_append(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_string_append(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_string_append(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_string_append(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_string_append(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_string_append(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_list_lpush(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean list_lpush(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_list_lpush(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_list_lpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_list_lpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_list_lpush(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_list_lpush(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_list_lpush(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_list_lpush(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_list_rpush(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean list_rpush(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_list_rpush(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_list_rpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_list_rpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_list_rpush(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_list_rpush(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_list_rpush(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_list_rpush(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_set_add(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean set_add(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_set_add(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_set_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_set_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_set_add(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_set_add(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_set_add(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_set_add(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_set_remove(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean set_remove(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_set_remove(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_set_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_set_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_set_remove(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_set_remove(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_set_remove(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_set_remove(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_set_intersect(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean set_intersect(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_set_intersect(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_set_intersect(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_set_intersect(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_set_intersect(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_set_intersect(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_set_intersect(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_set_intersect(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_set_union(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean set_union(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_set_union(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_set_union(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_set_union(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_set_union(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_set_union(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_set_union(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_set_union(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_document_rename(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean document_rename(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_document_rename(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_document_rename(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_document_rename(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_document_rename(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_document_rename(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_document_rename(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_document_rename(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_document_unset(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean document_unset(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_document_unset(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_document_unset(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_document_unset(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_document_unset(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_document_unset(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_document_unset(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_document_unset(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_map_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_add(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_add(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_add(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_add(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_add(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_remove(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean map_remove(String spacename, Object key, Map attributes) throws HyperDexClientException - { - return (Boolean) async_map_remove(spacename, key, attributes).waitForIt(); - } - - public native Deferred async_cond_map_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_map_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_remove(spacename, key, predicates, attributes).waitForIt(); - } - - public native Deferred async_group_map_remove(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Long group_map_remove(String spacename, Map predicates, Map attributes) throws HyperDexClientException - { - return (Long) async_group_map_remove(spacename, predicates, attributes).waitForIt(); - } - - public native Deferred async_map_atomic_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_atomic_add(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_atomic_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_atomic_add(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_atomic_add(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_atomic_add(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_atomic_add(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_atomic_sub(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_sub(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_atomic_sub(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_atomic_sub(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_sub(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_atomic_sub(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_atomic_sub(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_atomic_sub(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_atomic_sub(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_atomic_mul(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_mul(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_atomic_mul(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_atomic_mul(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_mul(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_atomic_mul(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_atomic_mul(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_atomic_mul(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_atomic_mul(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_atomic_div(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_div(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_atomic_div(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_atomic_div(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_div(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_atomic_div(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_atomic_div(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_atomic_div(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_atomic_div(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_atomic_mod(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_mod(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_atomic_mod(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_atomic_mod(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_mod(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_atomic_mod(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_atomic_mod(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_atomic_mod(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_atomic_mod(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_atomic_and(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_and(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_atomic_and(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_atomic_and(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_and(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_atomic_and(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_atomic_and(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_atomic_and(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_atomic_and(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_atomic_or(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_or(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_atomic_or(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_atomic_or(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_or(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_atomic_or(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_atomic_or(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_atomic_or(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_atomic_or(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_atomic_xor(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_xor(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_atomic_xor(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_atomic_xor(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_xor(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_atomic_xor(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_atomic_xor(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_atomic_xor(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_atomic_xor(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_string_prepend(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_string_prepend(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_string_prepend(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_string_prepend(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_string_prepend(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_string_prepend(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_string_prepend(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_string_prepend(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_string_prepend(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_string_append(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_string_append(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_string_append(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_string_append(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_string_append(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_string_append(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_string_append(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_string_append(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_string_append(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_atomic_min(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_min(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_atomic_min(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_atomic_min(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_min(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_atomic_min(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_atomic_min(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_atomic_min(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_atomic_min(spacename, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_map_atomic_max(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_max(String spacename, Object key, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_map_atomic_max(spacename, key, mapattributes).waitForIt(); - } - - public native Deferred async_cond_map_atomic_max(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_max(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Boolean) async_cond_map_atomic_max(spacename, key, predicates, mapattributes).waitForIt(); - } - - public native Deferred async_group_map_atomic_max(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Long group_map_atomic_max(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException - { - return (Long) async_group_map_atomic_max(spacename, predicates, mapattributes).waitForIt(); - } - - public native Iterator search(String spacename, Map predicates); - - public native Deferred async_search_describe(String spacename, Map predicates) throws HyperDexClientException; - public String search_describe(String spacename, Map predicates) throws HyperDexClientException - { - return (String) async_search_describe(spacename, predicates).waitForIt(); - } - - public native Iterator sorted_search(String spacename, Map predicates, String sortby, int limit, boolean maxmin); - - public native Deferred async_count(String spacename, Map predicates) throws HyperDexClientException; - public Long count(String spacename, Map predicates) throws HyperDexClientException - { - return (Long) async_count(spacename, predicates).waitForIt(); - } -} diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index 397ead2d..37acc268 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -162,6 +162,7 @@ cdef extern from "hyperdex/client.h": HYPERDEX_CLIENT_GARBAGE = 8575 hyperdex_client* hyperdex_client_create(char* coordinator, uint16_t port) + hyperdex_microtransaction* hyperdex_client_microtransaction_init(hyperdex_client* _cl, const char* space, hyperdex_client_returncode *status) void hyperdex_client_destroy(hyperdex_client* client) int64_t hyperdex_client_loop(hyperdex_client* client, int timeout, hyperdex_client_returncode* status) void hyperdex_client_destroy_attrs(hyperdex_client_attribute* attrs, size_t attrs_sz) @@ -174,7 +175,6 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_get(hyperdex_client* client, const char* space, const char* key, size_t key_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_get_partial(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - hyperdex_microtransaction* hyperdex_client_microtransaction_init(hyperdex_client* _cl, const char* space, hyperdex_client_returncode *status); int64_t hyperdex_client_microtransaction_commit(hyperdex_client* _cl, hyperdex_microtransaction *transaction, const char* key, size_t key_sz); int64_t hyperdex_client_microtransaction_put(hyperdex_client* client, hyperdex_microtransaction* tx, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) diff --git a/client/c.cc b/client/c.cc index 729eb550..b7981fc1 100644 --- a/client/c.cc +++ b/client/c.cc @@ -160,13 +160,6 @@ hyperdex_client_error_message(hyperdex_client* _cl) return cl->error_message(); } -HYPERDEX_API void -hyperdex_client_set_type_conversion(hyperdex_client* _cl, bool enabled) -{ - hyperdex::client* cl = reinterpret_cast(_cl); - cl->set_type_conversion(enabled); -} - HYPERDEX_API const char* hyperdex_client_error_location(hyperdex_client* _cl) { @@ -274,6 +267,32 @@ hyperdex_client_set_auth_context(struct hyperdex_client* _cl, cl->set_auth_context(macaroons, macaroons_sz); } +HYPERDEX_API struct hyperdex_client_microtransaction* +hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, + const char* space, + enum hyperdex_client_returncode *status) +{ + + SIGNAL_PROTECT_ERR(NULL); + hyperdex::client *cl = reinterpret_cast(_cl); + hyperdex::microtransaction *tx = cl->microtransaction_init(space, status); + + return reinterpret_cast(tx); +} + +HYPERDEX_API int64_t +hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const char* key, size_t key_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(transaction); + hyperdex_client_returncode *status = tx->status; + + C_WRAP_EXCEPT( + return cl->microtransaction_commit(tx, key, key_sz); + ); +} + HYPERDEX_API int64_t hyperdex_client_get(struct hyperdex_client* _cl, const char* space, @@ -1933,57 +1952,27 @@ hyperdex_client_sorted_search(struct hyperdex_client* _cl, ); } -HYPERDEX_API struct hyperdex_microtransaction* -hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, - const char* space, - enum hyperdex_client_returncode *status) -{ - - SIGNAL_PROTECT_ERR(NULL); - hyperdex::client *cl = reinterpret_cast(_cl); - hyperdex::microtransaction *tx = cl->microtransaction_init(space, status); - - return reinterpret_cast(tx); -} - HYPERDEX_API int64_t -hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, - struct hyperdex_microtransaction *transaction, - const char* key, size_t key_sz) +hyperdex_client_count(struct hyperdex_client* _cl, + const char* space, + const struct hyperdex_client_attribute_check* checks, size_t checks_sz, + enum hyperdex_client_returncode* status, + uint64_t* count) { - hyperdex::microtransaction* tx = reinterpret_cast(transaction); - hyperdex_client_returncode *status = tx->status; - C_WRAP_EXCEPT( - return cl->microtransaction_commit(tx, key, key_sz); + return cl->count(space, checks, checks_sz, status, count); ); } HYPERDEX_API int64_t hyperdex_client_microtransaction_put(struct hyperdex_client* _cl, - struct hyperdex_microtransaction *transaction, + struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { - hyperdex::microtransaction* tx = reinterpret_cast(transaction); - hyperdex_client_returncode *status = tx->status; - C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; - opinfo = hyperdex_client_keyop_info_lookup(XSTR(put), strlen(XSTR(put))); - return cl->microtransaciton_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); - ); -} - - -HYPERDEX_API int64_t -hyperdex_client_count(struct hyperdex_client* _cl, - const char* space, - const struct hyperdex_client_attribute_check* checks, size_t checks_sz, - enum hyperdex_client_returncode* status, - uint64_t* count) -{ - C_WRAP_EXCEPT( - return cl->count(space, checks, checks_sz, status, count); + opinfo = hyperdex_client_keyop_info_lookup(XSTR(microtransaction_put), strlen(XSTR(microtransaction_put))); + return cl->perform_funcall(opinfo, space, key, key_sz, NULL, 0, attrs, attrs_sz, NULL, 0, status); ); } diff --git a/doc/c/client/ops.tex b/doc/c/client/ops.tex index 1929e467..7bfe4adc 100644 --- a/doc/c/client/ops.tex +++ b/doc/c/client/ops.tex @@ -4120,3 +4120,30 @@ \subsection{\code{count}} \item \code{uint64\_t* count}\\ \input{\topdir/c/client/fragments/out_asynccall_count} \end{itemize} + +%%%%%%%%%%%%%%%%%%%% microtransaction_put %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_put}} +\label{api:c:microtransaction_put} +\index{microtransaction\_put!C API} +\input{\topdir/client/fragments/microtransaction_put} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_put(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing \ No newline at end of file diff --git a/doc/go/client/ops.tex b/doc/go/client/ops.tex index 98b5a53f..51d19f1b 100644 --- a/doc/go/client/ops.tex +++ b/doc/go/client/ops.tex @@ -2939,3 +2939,26 @@ \subsubsection{\code{Count}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status_count} + +%%%%%%%%%%%%%%%%%%%% MicrotransactionPut %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{MicrotransactionPut}} +\label{api:Go:MicrotransactionPut} +\index{MicrotransactionPut!Go API} +\input{\topdir/client/fragments/microtransaction_put} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) MicrotransactionPut(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} diff --git a/include/hyperdex/client.h b/include/hyperdex/client.h index fcbfcd64..0671aeb8 100644 --- a/include/hyperdex/client.h +++ b/include/hyperdex/client.h @@ -41,7 +41,7 @@ extern "C" #endif /* __cplusplus */ struct hyperdex_client; -struct hyperdex_microtransaction; +struct hyperdex_client_microtransaction; struct hyperdex_client_attribute { @@ -122,6 +122,16 @@ void hyperdex_client_set_auth_context(struct hyperdex_client* client, const char** macaroons, size_t macaroons_sz); +struct hyperdex_client_microtransaction* +hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, + const char* space, + enum hyperdex_client_returncode *status); + +int64_t +hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const char* key, size_t key_sz); + int64_t hyperdex_client_get(struct hyperdex_client* client, const char* space, @@ -969,21 +979,6 @@ hyperdex_client_group_map_atomic_max(struct hyperdex_client* client, enum hyperdex_client_returncode* status, uint64_t* count); -struct hyperdex_microtransaction* -hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, - const char* space, - enum hyperdex_client_returncode *status); - -int64_t -hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, - struct hyperdex_microtransaction *transaction, - const char* key, size_t key_sz); - -int64_t -hyperdex_client_microtransaction_put(struct hyperdex_client* _cl, - struct hyperdex_microtransaction *transaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); - int64_t hyperdex_client_search(struct hyperdex_client* client, const char* space, @@ -1015,6 +1010,11 @@ hyperdex_client_count(struct hyperdex_client* client, enum hyperdex_client_returncode* status, uint64_t* count); +int64_t +hyperdex_client_microtransaction_put(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_loop(struct hyperdex_client* client, int timeout, enum hyperdex_client_returncode* status); From 2235014332f082adfc03269e6bb8adf9060bbfb1 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Sun, 15 Feb 2015 20:30:16 -0500 Subject: [PATCH 04/28] Added missing files --- test/python/Microtransactions.py | 19 +++++++++++++++++++ test/sh/bindings.python.Microtransactions.sh | 4 ++++ 2 files changed, 23 insertions(+) create mode 100644 test/python/Microtransactions.py create mode 100755 test/sh/bindings.python.Microtransactions.sh diff --git a/test/python/Microtransactions.py b/test/python/Microtransactions.py new file mode 100644 index 00000000..b6085098 --- /dev/null +++ b/test/python/Microtransactions.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python2 +import sys +import hyperdex.client +import json +import os +from testlib import * +from hyperdex.client import * + +c = hyperdex.client.Client(sys.argv[1], int(sys.argv[2])) + +assertTrue(c.put('kv', 'k1', {'v' : Document({'a' : 1})})) + +tx = c.microtransaction_init('kv') +tx.put({'v.b' : 2}) +tx.put({'v.c' : 3}) +tx.commit('k1') + +res = c.search('kv', {'k' : 'k1'}) +assertEquals(c.get('kv', 'k1')['v'], Document({'a' : 1, 'b' : 2, 'c' : 3})) diff --git a/test/sh/bindings.python.Microtransactions.sh b/test/sh/bindings.python.Microtransactions.sh new file mode 100755 index 00000000..1356c055 --- /dev/null +++ b/test/sh/bindings.python.Microtransactions.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +python2 "${HYPERDEX_SRCDIR}"/test/runner.py --space="space kv key k attributes document v" --daemons=1 -- \ + python2 "${HYPERDEX_SRCDIR}"/test/python/Microtransactions.py {HOST} {PORT} From 6f5d1cf809e9fb593272fc76ed7d91822b3687e5 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Mon, 16 Feb 2015 12:34:42 -0500 Subject: [PATCH 05/28] More progress towards autogenerated methods --- bindings/c.py | 101 ++- bindings/java.py | 22 +- bindings/java/org/hyperdex/client/Client.java | 686 +++++++++++++++++- .../org_hyperdex_client_Client.definitions.c | 6 + bindings/java/org_hyperdex_client_Client.h | 8 + bindings/node.js/client.declarations.cc | 132 ---- bindings/python.py | 41 +- bindings/python/hyperdex/client.pyx | 143 +++- client/c.cc | 4 +- client/client.cc | 2 +- client/client.h | 2 +- doc/java/client/ops.tex | 25 + doc/python/client/ops.tex | 23 + 13 files changed, 993 insertions(+), 202 deletions(-) diff --git a/bindings/c.py b/bindings/c.py index ee3dece7..f450a9f0 100644 --- a/bindings/c.py +++ b/bindings/c.py @@ -143,25 +143,12 @@ def generate_client_c_wrapper(x): func += ',\n' + padd func += ', '.join([p + '* ' + n for p, n in arg.args]) func += ')\n{\n' - func += ' C_WRAP_EXCEPT(\n' - if x.name == 'get': - func += ' return cl->get(space, key, key_sz, status, attrs, attrs_sz);\n' - elif x.name == 'get_partial': - func += ' return cl->get_partial(space, key, key_sz, attrnames, attrnames_sz, status, attrs, attrs_sz);\n' - elif x.name == 'search': - func += ' return cl->search(space, checks, checks_sz, status, attrs, attrs_sz);\n' - elif x.name == 'search_describe': - func += ' return cl->search_describe(space, checks, checks_sz, status, description);\n' - elif x.name == 'sorted_search': - func += ' return cl->sorted_search(space, checks, checks_sz, sort_by, limit, maxmin, status, attrs, attrs_sz);\n' - elif x.name == 'count': - func += ' return cl->count(space, checks, checks_sz, status, count);\n' - elif x.name.startswith('group_'): - args = ('opinfo', 'space', ) - if bindings.Predicates in x.args_in: - args += ('checks', 'checks_sz') - else: - args += ('NULL', '0') + + if x.name.startswith('microtransaction_'): + func += ' hyperdex::microtransaction* tx = reinterpret_cast(microtransaction);\n' + func += ' hyperdex_client_returncode *status = tx->status;\n' + func += ' C_WRAP_EXCEPT(\n' + args = ('tx', 'opinfo') if bindings.Attributes in x.args_in: args += ('attrs', 'attrs_sz') else: @@ -170,33 +157,67 @@ def generate_client_c_wrapper(x): args += ('mapattrs', 'mapattrs_sz') else: args += ('NULL', '0') - args += ('status', 'count') func += ' const hyperdex_client_keyop_info* opinfo;\n' func += ' opinfo = hyperdex_client_keyop_info_lookup(XSTR({0}), strlen(XSTR({0})));\n'.format(x.name) - func += ' return cl->perform_group_funcall(' + func += ' return cl->microtransaction_add_funcall(' func += ', '.join([a for a in args]) func += ');\n' + func += ' );\n' else: - args = ('opinfo', 'space', 'key', 'key_sz') - if bindings.Predicates in x.args_in: - args += ('checks', 'checks_sz') - else: - args += ('NULL', '0') - if bindings.Attributes in x.args_in: - args += ('attrs', 'attrs_sz') - else: - args += ('NULL', '0') - if bindings.MapAttributes in x.args_in: - args += ('mapattrs', 'mapattrs_sz') + func += ' C_WRAP_EXCEPT(\n' + if x.name == 'get': + func += ' return cl->get(space, key, key_sz, status, attrs, attrs_sz);\n' + elif x.name == 'get_partial': + func += ' return cl->get_partial(space, key, key_sz, attrnames, attrnames_sz, status, attrs, attrs_sz);\n' + elif x.name == 'search': + func += ' return cl->search(space, checks, checks_sz, status, attrs, attrs_sz);\n' + elif x.name == 'search_describe': + func += ' return cl->search_describe(space, checks, checks_sz, status, description);\n' + elif x.name == 'sorted_search': + func += ' return cl->sorted_search(space, checks, checks_sz, sort_by, limit, maxmin, status, attrs, attrs_sz);\n' + elif x.name == 'count': + func += ' return cl->count(space, checks, checks_sz, status, count);\n' + elif x.name.startswith('group_'): + args = ('opinfo', 'space', ) + if bindings.Predicates in x.args_in: + args += ('checks', 'checks_sz') + else: + args += ('NULL', '0') + if bindings.Attributes in x.args_in: + args += ('attrs', 'attrs_sz') + else: + args += ('NULL', '0') + if bindings.MapAttributes in x.args_in: + args += ('mapattrs', 'mapattrs_sz') + else: + args += ('NULL', '0') + args += ('status', 'count') + func += ' const hyperdex_client_keyop_info* opinfo;\n' + func += ' opinfo = hyperdex_client_keyop_info_lookup(XSTR({0}), strlen(XSTR({0})));\n'.format(x.name) + func += ' return cl->perform_group_funcall(' + func += ', '.join([a for a in args]) + func += ');\n' else: - args += ('NULL', '0') - args += ('status',) - func += ' const hyperdex_client_keyop_info* opinfo;\n' - func += ' opinfo = hyperdex_client_keyop_info_lookup(XSTR({0}), strlen(XSTR({0})));\n'.format(x.name) - func += ' return cl->perform_funcall(' - func += ', '.join([a for a in args]) - func += ');\n' - func += ' );\n' + args = ('opinfo', 'space', 'key', 'key_sz') + if bindings.Predicates in x.args_in: + args += ('checks', 'checks_sz') + else: + args += ('NULL', '0') + if bindings.Attributes in x.args_in: + args += ('attrs', 'attrs_sz') + else: + args += ('NULL', '0') + if bindings.MapAttributes in x.args_in: + args += ('mapattrs', 'mapattrs_sz') + else: + args += ('NULL', '0') + args += ('status',) + func += ' const hyperdex_client_keyop_info* opinfo;\n' + func += ' opinfo = hyperdex_client_keyop_info_lookup(XSTR({0}), strlen(XSTR({0})));\n'.format(x.name) + func += ' return cl->perform_funcall(' + func += ', '.join([a for a in args]) + func += ');\n' + func += ' );\n' func += '}\n' return func diff --git a/bindings/java.py b/bindings/java.py index 4e4051da..5ce13c79 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -68,7 +68,6 @@ def CTYPEOF(x): return 'jobject' def generate_prototype(x): - assert x.form in (bindings.AsyncCall, bindings.Iterator) args_list = ', '.join([JTYPEOF(arg) + ' ' + arg.__name__.lower() for arg in x.args_in]) if x.form == bindings.AsyncCall: if x.args_out == (bindings.Status, bindings.Attributes): @@ -90,15 +89,19 @@ def generate_prototype(x): proto += ' return ({2}) async_{0}({1}).waitForIt();\n'.format(x.name, args_list, ret) proto += ' }\n' return proto - if x.form == bindings.Iterator: + elif (x.form == bindings.MicrotransactionCall or x.form == bindings.Iterator): return ' public native Iterator {0}({1});\n'.format(x.name, args_list) + else: + assert False def generate_worker(call, x): - assert x.form in (bindings.AsyncCall, bindings.Iterator) if x.form == bindings.AsyncCall: cls = 'deferred' - if x.form == bindings.Iterator: + elif x.form == bindings.Iterator: cls = 'iterator' + else: + assert False + fptr = bindings.c.generate_func_ptr(x, 'client') func = 'JNIEXPORT HYPERDEX_API jobject JNICALL\n' func += 'hyperdex_java_client_{0}(JNIEnv* env, jobject obj, {1}'.format(call, fptr) @@ -141,16 +144,21 @@ def generate_workers(xs): call = bindings.call_name(x) if call in calls: continue + if x.form is bindings.MicrotransactionCall: + return yield generate_worker(call, x) calls.add(call) def generate_definition(x): - assert x.form in (bindings.AsyncCall, bindings.Iterator) func = 'JNIEXPORT HYPERDEX_API jobject JNICALL\n' if x.form == bindings.AsyncCall: func += 'Java_org_hyperdex_client_Client_async_1{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) - if x.form == bindings.Iterator: + elif x.form == bindings.Iterator: + func += 'Java_org_hyperdex_client_Client_{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) + elif x.form == bindings.MicrotransactionCall: func += 'Java_org_hyperdex_client_Client_{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) + else: + assert False for arg in x.args_in: func += ', ' + CTYPEOF(arg) + ' ' + arg.__name__.lower() func += ')\n{\n' @@ -238,7 +246,7 @@ def java_label(arg): def generate_client_java(): fout = open(os.path.join(BASE, 'bindings/java/org/hyperdex/client/Client.java'), 'w') - fout.write(bindings.copyright('*', '2013-2014')) + fout.write(bindings.copyright('*', '2013-2015')) fout.write(bindings.java.JAVA_HEAD) fout.write('\n'.join([generate_prototype(c) for c in bindings.Client])) fout.write('}\n') diff --git a/bindings/java/org/hyperdex/client/Client.java b/bindings/java/org/hyperdex/client/Client.java index 350987ec..2e26b93f 100644 --- a/bindings/java/org/hyperdex/client/Client.java +++ b/bindings/java/org/hyperdex/client/Client.java @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2014, Cornell University +/* Copyright (c) 2013-2015, Cornell University * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -108,3 +108,687 @@ private void remove_op(long l) ops.remove(l); } /* operations */ + public native Deferred async_get(String spacename, Object key) throws HyperDexClientException; + public Map get(String spacename, Object key) throws HyperDexClientException + { + return (Map) async_get(spacename, key).waitForIt(); + } + + public native Deferred async_get_partial(String spacename, Object key, List attributenames) throws HyperDexClientException; + public Map get_partial(String spacename, Object key, List attributenames) throws HyperDexClientException + { + return (Map) async_get_partial(spacename, key, attributenames).waitForIt(); + } + + public native Deferred async_put(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean put(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_put(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_put(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_put(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_put(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_put(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_put(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_put(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_put_if_not_exist(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean put_if_not_exist(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_put_if_not_exist(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_del(String spacename, Object key) throws HyperDexClientException; + public Boolean del(String spacename, Object key) throws HyperDexClientException + { + return (Boolean) async_del(spacename, key).waitForIt(); + } + + public native Deferred async_cond_del(String spacename, Object key, Map predicates) throws HyperDexClientException; + public Boolean cond_del(String spacename, Object key, Map predicates) throws HyperDexClientException + { + return (Boolean) async_cond_del(spacename, key, predicates).waitForIt(); + } + + public native Deferred async_group_del(String spacename, Map predicates) throws HyperDexClientException; + public Long group_del(String spacename, Map predicates) throws HyperDexClientException + { + return (Long) async_group_del(spacename, predicates).waitForIt(); + } + + public native Deferred async_atomic_add(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean atomic_add(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_atomic_add(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_atomic_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_atomic_add(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_atomic_add(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_atomic_add(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_atomic_add(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_atomic_sub(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean atomic_sub(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_atomic_sub(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_atomic_sub(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_sub(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_atomic_sub(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_atomic_sub(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_atomic_sub(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_atomic_sub(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_atomic_mul(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean atomic_mul(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_atomic_mul(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_atomic_mul(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_mul(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_atomic_mul(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_atomic_mul(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_atomic_mul(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_atomic_mul(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_atomic_div(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean atomic_div(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_atomic_div(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_atomic_div(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_div(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_atomic_div(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_atomic_div(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_atomic_div(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_atomic_div(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_atomic_mod(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean atomic_mod(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_atomic_mod(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_atomic_mod(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_mod(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_atomic_mod(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_atomic_mod(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_atomic_mod(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_atomic_mod(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_atomic_and(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean atomic_and(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_atomic_and(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_atomic_and(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_and(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_atomic_and(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_atomic_and(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_atomic_and(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_atomic_and(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_atomic_or(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean atomic_or(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_atomic_or(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_atomic_or(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_or(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_atomic_or(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_atomic_or(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_atomic_or(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_atomic_or(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_atomic_xor(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean atomic_xor(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_atomic_xor(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_atomic_xor(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_xor(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_atomic_xor(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_atomic_xor(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_atomic_xor(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_atomic_xor(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_atomic_min(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean atomic_min(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_atomic_min(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_atomic_min(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_min(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_atomic_min(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_atomic_min(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_atomic_min(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_atomic_min(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_atomic_max(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean atomic_max(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_atomic_max(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_atomic_max(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_max(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_atomic_max(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_atomic_max(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_atomic_max(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_atomic_max(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_string_prepend(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean string_prepend(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_string_prepend(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_string_prepend(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_string_prepend(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_string_prepend(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_string_prepend(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_string_prepend(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_string_prepend(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_string_append(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean string_append(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_string_append(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_string_append(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_string_append(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_string_append(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_string_append(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_string_append(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_string_append(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_list_lpush(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean list_lpush(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_list_lpush(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_list_lpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_list_lpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_list_lpush(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_list_lpush(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_list_lpush(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_list_lpush(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_list_rpush(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean list_rpush(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_list_rpush(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_list_rpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_list_rpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_list_rpush(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_list_rpush(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_list_rpush(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_list_rpush(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_set_add(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean set_add(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_set_add(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_set_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_set_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_set_add(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_set_add(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_set_add(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_set_add(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_set_remove(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean set_remove(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_set_remove(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_set_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_set_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_set_remove(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_set_remove(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_set_remove(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_set_remove(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_set_intersect(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean set_intersect(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_set_intersect(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_set_intersect(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_set_intersect(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_set_intersect(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_set_intersect(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_set_intersect(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_set_intersect(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_set_union(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean set_union(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_set_union(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_set_union(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_set_union(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_set_union(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_set_union(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_set_union(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_set_union(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_document_rename(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean document_rename(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_document_rename(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_document_rename(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_document_rename(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_document_rename(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_document_rename(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_document_rename(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_document_rename(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_document_unset(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean document_unset(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_document_unset(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_document_unset(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_document_unset(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_document_unset(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_document_unset(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_document_unset(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_document_unset(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_map_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_add(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_add(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_add(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_add(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_add(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_remove(String spacename, Object key, Map attributes) throws HyperDexClientException; + public Boolean map_remove(String spacename, Object key, Map attributes) throws HyperDexClientException + { + return (Boolean) async_map_remove(spacename, key, attributes).waitForIt(); + } + + public native Deferred async_cond_map_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_map_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_remove(spacename, key, predicates, attributes).waitForIt(); + } + + public native Deferred async_group_map_remove(String spacename, Map predicates, Map attributes) throws HyperDexClientException; + public Long group_map_remove(String spacename, Map predicates, Map attributes) throws HyperDexClientException + { + return (Long) async_group_map_remove(spacename, predicates, attributes).waitForIt(); + } + + public native Deferred async_map_atomic_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_atomic_add(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_atomic_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_atomic_add(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_atomic_add(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_atomic_add(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_atomic_add(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_atomic_sub(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_sub(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_atomic_sub(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_atomic_sub(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_sub(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_atomic_sub(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_atomic_sub(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_atomic_sub(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_atomic_sub(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_atomic_mul(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_mul(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_atomic_mul(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_atomic_mul(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_mul(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_atomic_mul(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_atomic_mul(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_atomic_mul(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_atomic_mul(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_atomic_div(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_div(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_atomic_div(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_atomic_div(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_div(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_atomic_div(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_atomic_div(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_atomic_div(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_atomic_div(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_atomic_mod(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_mod(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_atomic_mod(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_atomic_mod(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_mod(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_atomic_mod(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_atomic_mod(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_atomic_mod(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_atomic_mod(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_atomic_and(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_and(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_atomic_and(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_atomic_and(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_and(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_atomic_and(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_atomic_and(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_atomic_and(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_atomic_and(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_atomic_or(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_or(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_atomic_or(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_atomic_or(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_or(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_atomic_or(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_atomic_or(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_atomic_or(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_atomic_or(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_atomic_xor(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_xor(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_atomic_xor(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_atomic_xor(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_xor(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_atomic_xor(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_atomic_xor(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_atomic_xor(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_atomic_xor(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_string_prepend(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_string_prepend(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_string_prepend(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_string_prepend(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_string_prepend(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_string_prepend(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_string_prepend(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_string_prepend(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_string_prepend(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_string_append(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_string_append(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_string_append(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_string_append(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_string_append(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_string_append(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_string_append(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_string_append(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_string_append(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_atomic_min(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_min(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_atomic_min(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_atomic_min(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_min(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_atomic_min(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_atomic_min(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_atomic_min(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_atomic_min(spacename, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_map_atomic_max(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_max(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_map_atomic_max(spacename, key, mapattributes).waitForIt(); + } + + public native Deferred async_cond_map_atomic_max(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_max(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Boolean) async_cond_map_atomic_max(spacename, key, predicates, mapattributes).waitForIt(); + } + + public native Deferred async_group_map_atomic_max(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Long group_map_atomic_max(String spacename, Map predicates, Map> mapattributes) throws HyperDexClientException + { + return (Long) async_group_map_atomic_max(spacename, predicates, mapattributes).waitForIt(); + } + + public native Iterator search(String spacename, Map predicates); + + public native Deferred async_search_describe(String spacename, Map predicates) throws HyperDexClientException; + public String search_describe(String spacename, Map predicates) throws HyperDexClientException + { + return (String) async_search_describe(spacename, predicates).waitForIt(); + } + + public native Iterator sorted_search(String spacename, Map predicates, String sortby, int limit, boolean maxmin); + + public native Deferred async_count(String spacename, Map predicates) throws HyperDexClientException; + public Long count(String spacename, Map predicates) throws HyperDexClientException + { + return (Long) async_count(spacename, predicates).waitForIt(); + } + + public native Iterator microtransaction_put(Object microtransaction, Map attributes); +} diff --git a/bindings/java/org_hyperdex_client_Client.definitions.c b/bindings/java/org_hyperdex_client_Client.definitions.c index e54920e0..91e0d866 100644 --- a/bindings/java/org_hyperdex_client_Client.definitions.c +++ b/bindings/java/org_hyperdex_client_Client.definitions.c @@ -1242,3 +1242,9 @@ Java_org_hyperdex_client_Client_async_1count(JNIEnv* env, jobject obj, jstring s { return hyperdex_java_client_asynccall__spacename_predicates__status_count(env, obj, hyperdex_client_count, spacename, predicates); } + +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_microtransaction_1put(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_microtransaction_put, microtransaction, attributes); +} diff --git a/bindings/java/org_hyperdex_client_Client.h b/bindings/java/org_hyperdex_client_Client.h index 70682a4c..94d7222f 100644 --- a/bindings/java/org_hyperdex_client_Client.h +++ b/bindings/java/org_hyperdex_client_Client.h @@ -967,6 +967,14 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_sorted_1s JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1count (JNIEnv *, jobject, jstring, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: microtransaction_put + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_microtransaction_1put + (JNIEnv *, jobject, jobject, jobject); + #ifdef __cplusplus } #endif diff --git a/bindings/node.js/client.declarations.cc b/bindings/node.js/client.declarations.cc index 327f5487..bbbd2cfe 100644 --- a/bindings/node.js/client.declarations.cc +++ b/bindings/node.js/client.declarations.cc @@ -28,135 +28,3 @@ #ifdef HYPERDEX_NODE_INCLUDED_CLIENT_CC -static v8::Handle asynccall__spacename_key__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_attributenames__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_attributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_predicates_attributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_predicates_attributes__status_count(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_predicates__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_predicates__status_count(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, uint64_t* count), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_mapattributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_predicates_mapattributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_predicates_mapattributes__status_count(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), const v8::Arguments& args); -static v8::Handle iterator__spacename_predicates__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); -static v8::Handle asynccall__spacename_predicates__status_description(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const char** description), const v8::Arguments& args); -static v8::Handle iterator__spacename_predicates_sortby_limit_maxmin__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); - -static v8::Handle get(const v8::Arguments& args); -static v8::Handle get_partial(const v8::Arguments& args); -static v8::Handle put(const v8::Arguments& args); -static v8::Handle cond_put(const v8::Arguments& args); -static v8::Handle group_put(const v8::Arguments& args); -static v8::Handle put_if_not_exist(const v8::Arguments& args); -static v8::Handle del(const v8::Arguments& args); -static v8::Handle cond_del(const v8::Arguments& args); -static v8::Handle group_del(const v8::Arguments& args); -static v8::Handle atomic_add(const v8::Arguments& args); -static v8::Handle cond_atomic_add(const v8::Arguments& args); -static v8::Handle group_atomic_add(const v8::Arguments& args); -static v8::Handle atomic_sub(const v8::Arguments& args); -static v8::Handle cond_atomic_sub(const v8::Arguments& args); -static v8::Handle group_atomic_sub(const v8::Arguments& args); -static v8::Handle atomic_mul(const v8::Arguments& args); -static v8::Handle cond_atomic_mul(const v8::Arguments& args); -static v8::Handle group_atomic_mul(const v8::Arguments& args); -static v8::Handle atomic_div(const v8::Arguments& args); -static v8::Handle cond_atomic_div(const v8::Arguments& args); -static v8::Handle group_atomic_div(const v8::Arguments& args); -static v8::Handle atomic_mod(const v8::Arguments& args); -static v8::Handle cond_atomic_mod(const v8::Arguments& args); -static v8::Handle group_atomic_mod(const v8::Arguments& args); -static v8::Handle atomic_and(const v8::Arguments& args); -static v8::Handle cond_atomic_and(const v8::Arguments& args); -static v8::Handle group_atomic_and(const v8::Arguments& args); -static v8::Handle atomic_or(const v8::Arguments& args); -static v8::Handle cond_atomic_or(const v8::Arguments& args); -static v8::Handle group_atomic_or(const v8::Arguments& args); -static v8::Handle atomic_xor(const v8::Arguments& args); -static v8::Handle cond_atomic_xor(const v8::Arguments& args); -static v8::Handle group_atomic_xor(const v8::Arguments& args); -static v8::Handle atomic_min(const v8::Arguments& args); -static v8::Handle cond_atomic_min(const v8::Arguments& args); -static v8::Handle group_atomic_min(const v8::Arguments& args); -static v8::Handle atomic_max(const v8::Arguments& args); -static v8::Handle cond_atomic_max(const v8::Arguments& args); -static v8::Handle group_atomic_max(const v8::Arguments& args); -static v8::Handle string_prepend(const v8::Arguments& args); -static v8::Handle cond_string_prepend(const v8::Arguments& args); -static v8::Handle group_string_prepend(const v8::Arguments& args); -static v8::Handle string_append(const v8::Arguments& args); -static v8::Handle cond_string_append(const v8::Arguments& args); -static v8::Handle group_string_append(const v8::Arguments& args); -static v8::Handle list_lpush(const v8::Arguments& args); -static v8::Handle cond_list_lpush(const v8::Arguments& args); -static v8::Handle group_list_lpush(const v8::Arguments& args); -static v8::Handle list_rpush(const v8::Arguments& args); -static v8::Handle cond_list_rpush(const v8::Arguments& args); -static v8::Handle group_list_rpush(const v8::Arguments& args); -static v8::Handle set_add(const v8::Arguments& args); -static v8::Handle cond_set_add(const v8::Arguments& args); -static v8::Handle group_set_add(const v8::Arguments& args); -static v8::Handle set_remove(const v8::Arguments& args); -static v8::Handle cond_set_remove(const v8::Arguments& args); -static v8::Handle group_set_remove(const v8::Arguments& args); -static v8::Handle set_intersect(const v8::Arguments& args); -static v8::Handle cond_set_intersect(const v8::Arguments& args); -static v8::Handle group_set_intersect(const v8::Arguments& args); -static v8::Handle set_union(const v8::Arguments& args); -static v8::Handle cond_set_union(const v8::Arguments& args); -static v8::Handle group_set_union(const v8::Arguments& args); -static v8::Handle document_rename(const v8::Arguments& args); -static v8::Handle cond_document_rename(const v8::Arguments& args); -static v8::Handle group_document_rename(const v8::Arguments& args); -static v8::Handle document_unset(const v8::Arguments& args); -static v8::Handle cond_document_unset(const v8::Arguments& args); -static v8::Handle group_document_unset(const v8::Arguments& args); -static v8::Handle map_add(const v8::Arguments& args); -static v8::Handle cond_map_add(const v8::Arguments& args); -static v8::Handle group_map_add(const v8::Arguments& args); -static v8::Handle map_remove(const v8::Arguments& args); -static v8::Handle cond_map_remove(const v8::Arguments& args); -static v8::Handle group_map_remove(const v8::Arguments& args); -static v8::Handle map_atomic_add(const v8::Arguments& args); -static v8::Handle cond_map_atomic_add(const v8::Arguments& args); -static v8::Handle group_map_atomic_add(const v8::Arguments& args); -static v8::Handle map_atomic_sub(const v8::Arguments& args); -static v8::Handle cond_map_atomic_sub(const v8::Arguments& args); -static v8::Handle group_map_atomic_sub(const v8::Arguments& args); -static v8::Handle map_atomic_mul(const v8::Arguments& args); -static v8::Handle cond_map_atomic_mul(const v8::Arguments& args); -static v8::Handle group_map_atomic_mul(const v8::Arguments& args); -static v8::Handle map_atomic_div(const v8::Arguments& args); -static v8::Handle cond_map_atomic_div(const v8::Arguments& args); -static v8::Handle group_map_atomic_div(const v8::Arguments& args); -static v8::Handle map_atomic_mod(const v8::Arguments& args); -static v8::Handle cond_map_atomic_mod(const v8::Arguments& args); -static v8::Handle group_map_atomic_mod(const v8::Arguments& args); -static v8::Handle map_atomic_and(const v8::Arguments& args); -static v8::Handle cond_map_atomic_and(const v8::Arguments& args); -static v8::Handle group_map_atomic_and(const v8::Arguments& args); -static v8::Handle map_atomic_or(const v8::Arguments& args); -static v8::Handle cond_map_atomic_or(const v8::Arguments& args); -static v8::Handle group_map_atomic_or(const v8::Arguments& args); -static v8::Handle map_atomic_xor(const v8::Arguments& args); -static v8::Handle cond_map_atomic_xor(const v8::Arguments& args); -static v8::Handle group_map_atomic_xor(const v8::Arguments& args); -static v8::Handle map_string_prepend(const v8::Arguments& args); -static v8::Handle cond_map_string_prepend(const v8::Arguments& args); -static v8::Handle group_map_string_prepend(const v8::Arguments& args); -static v8::Handle map_string_append(const v8::Arguments& args); -static v8::Handle cond_map_string_append(const v8::Arguments& args); -static v8::Handle group_map_string_append(const v8::Arguments& args); -static v8::Handle map_atomic_min(const v8::Arguments& args); -static v8::Handle cond_map_atomic_min(const v8::Arguments& args); -static v8::Handle group_map_atomic_min(const v8::Arguments& args); -static v8::Handle map_atomic_max(const v8::Arguments& args); -static v8::Handle cond_map_atomic_max(const v8::Arguments& args); -static v8::Handle group_map_atomic_max(const v8::Arguments& args); -static v8::Handle search(const v8::Arguments& args); -static v8::Handle search_describe(const v8::Arguments& args); -static v8::Handle sorted_search(const v8::Arguments& args); -static v8::Handle count(const v8::Arguments& args); - -#endif // HYPERDEX_NODE_INCLUDED_CLIENT_CC diff --git a/bindings/python.py b/bindings/python.py index aa3e8d93..b2ddcbe5 100644 --- a/bindings/python.py +++ b/bindings/python.py @@ -59,8 +59,10 @@ def PYTYPEOF(x): return 'int' elif x == bindings.MaxMin: return 'str' - print x - assert False + elif x == bindings.Microtransaction: + return '' + else: + raise RuntimeError("Unknown type" + str(x)) def indent(x): ret = '' @@ -149,7 +151,7 @@ def generate_function_pointer_typedefs(xs, lib): call = bindings.call_name(x) if call in calls: continue - assert x.form in (bindings.AsyncCall, bindings.Iterator) + assert x.form in (bindings.AsyncCall, bindings.Iterator, bindings.MicrotransactionCall) yield 'ctypedef ' + generate_function_ptr(x, call + '_fptr', lib) calls.add(call) @@ -159,17 +161,36 @@ def generate_workers(xs): call = bindings.call_name(x) if call in calls: continue - assert x.form in (bindings.AsyncCall, bindings.Iterator) + if x.form is bindings.MicrotransactionCall: + continue if x.form == bindings.AsyncCall: yield generate_worker_asynccall(call, x) - if x.form == bindings.Iterator: + elif x.form == bindings.Iterator: yield generate_worker_iterator(call, x) + else: + raise RuntimeError('unknown function type') calls.add(call) + +def generate_microtransaction_method(x, lib): + if not (x.form is bindings.MicrotransactionCall): + return '' + + typed_args = ', '.join([(PYTYPEOF(arg) + ' ' + arg_name(arg)).strip() + for arg in x.args_in]) + arg_list = ', '.join([arg_name(arg) for arg in x.args_in]) + + meth = 'def {0}(self, {1}):\n'.format(name(x), typed_args) + meth += ' cdef hyperdex_client_attribute* in_attrs\n' + meth += ' cdef size_t in_attrs_sz\n' + meth += ' self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz)\n' + meth += ' hyperdex_{1}_{0}(self.client.client, self.transaction, in_attrs, in_attrs_sz)\n'.format(x.name, lib) + meth += ' return True' + + return indent(meth)[:-1] def generate_method(x, lib, auth=True): auth_f = ', auth=None' if auth else '' auth_a = ', auth' if auth else '' - assert x.form in (bindings.AsyncCall, bindings.Iterator) typed_args = ', '.join([(PYTYPEOF(arg) + ' ' + arg_name(arg)).strip() for arg in x.args_in]) arg_list = ', '.join([arg_name(arg) for arg in x.args_in]) @@ -185,9 +206,13 @@ def generate_method(x, lib, auth=True): meth += 'def {0}(self, {1}{3}{2}):\n'.format(name(x), typed_args, excess, auth_f) meth += magic_attr meth += ' return self.async_{0}({1}{2}).wait()\n'.format(name(x), arg_list, auth_a) - if x.form == bindings.Iterator: + elif x.form == bindings.Iterator: meth = 'def {0}(self, {1}):\n'.format(name(x), typed_args) meth += ' return self.{0}(hyperdex_{3}_{1}, {2})\n'.format(bindings.call_name(x), x.name, arg_list, lib) + elif x.form == bindings.MicrotransactionCall: + return '' #not in client + else: + raise RuntimeError('unknown function type') return indent(meth)[:-1] def generate_api_norm_func(func): @@ -250,6 +275,8 @@ def generate_client_python(): methods += '\n' methods += '\n'.join([generate_method(c, 'client') for c in bindings.Client]) current = bindings.substitute_generated('Methods', current, methods, prefix='#') + utx_methods = '\n'.join([generate_microtransaction_method(c, 'client') for c in bindings.Client]) + current = bindings.substitute_generated('UTX Methods', current, utx_methods, prefix='#') fout.write(current) def generate_client_doc(): diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index 37acc268..01bfbdee 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -112,7 +112,7 @@ cdef extern from "hyperdex/client.h": cdef struct hyperdex_client - cdef struct hyperdex_microtransaction + cdef struct hyperdex_client_microtransaction cdef struct hyperdex_client_attribute: const char* attr @@ -162,7 +162,8 @@ cdef extern from "hyperdex/client.h": HYPERDEX_CLIENT_GARBAGE = 8575 hyperdex_client* hyperdex_client_create(char* coordinator, uint16_t port) - hyperdex_microtransaction* hyperdex_client_microtransaction_init(hyperdex_client* _cl, const char* space, hyperdex_client_returncode *status) + hyperdex_client_microtransaction* hyperdex_client_microtransaction_init(hyperdex_client* _cl, const char* space, hyperdex_client_returncode *status) + int64_t hyperdex_client_microtransaction_commit(hyperdex_client* _cl, hyperdex_client_microtransaction *utx, const char* key, size_t key_sz) void hyperdex_client_destroy(hyperdex_client* client) int64_t hyperdex_client_loop(hyperdex_client* client, int timeout, hyperdex_client_returncode* status) void hyperdex_client_destroy_attrs(hyperdex_client_attribute* attrs, size_t attrs_sz) @@ -175,8 +176,6 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_get(hyperdex_client* client, const char* space, const char* key, size_t key_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_get_partial(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_commit(hyperdex_client* _cl, hyperdex_microtransaction *transaction, const char* key, size_t key_sz); - int64_t hyperdex_client_microtransaction_put(hyperdex_client* client, hyperdex_microtransaction* tx, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_put(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_put_if_not_exist(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) @@ -289,6 +288,7 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_search_describe(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, const char** description) int64_t hyperdex_client_sorted_search(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_count(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, uint64_t* count) + int64_t hyperdex_client_microtransaction_put(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) # End Automatically Generated Prototypes @@ -379,6 +379,7 @@ ctypedef int64_t asynccall__spacename_predicates_mapattributes__status_count_fpt ctypedef int64_t iterator__spacename_predicates__status_attributes_fptr(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) ctypedef int64_t asynccall__spacename_predicates__status_description_fptr(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, const char** description) ctypedef int64_t iterator__spacename_predicates_sortby_limit_maxmin__status_attributes_fptr(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) +ctypedef int64_t microtransactioncall__microtransaction_attributes___fptr(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) # End Automatically Generated Function Pointers @@ -1174,14 +1175,131 @@ cdef class Microtransaction: self.deferred = Deferred(self.client) self.client.convert_spacename(self.deferred.arena, spacename, &in_space); self.transaction = hyperdex_client_microtransaction_init(self.client.client, in_space, &self.deferred.status) + + # Begin Automatically Generated UTX Methods - def put(self, dict attributes): + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + def microtransaction_put(self, microtransaction, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz - self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz); - + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) hyperdex_client_microtransaction_put(self.client.client, self.transaction, in_attrs, in_attrs_sz) - + return True + # End Automatically Generated UTX Methods + def async_commit(self, bytes key): cdef const char* in_key cdef size_t in_key_sz @@ -1202,7 +1320,7 @@ cdef class Microtransaction: cdef Deferred deferred cdef Client client - cdef hyperdex_microtransaction* transaction + cdef hyperdex_client_microtransaction* transaction cdef class Client: cdef hyperdex_client* client @@ -1346,6 +1464,9 @@ cdef class Client: # _callback() may remove ret from self.ops. op._callback() return op + + def microtransaction_init(self, bytes spacename): + return Microtransaction(self, spacename) # Begin Automatically Generated Methods cdef asynccall__spacename_key__status_attributes(self, asynccall__spacename_key__status_attributes_fptr f, bytes spacename, key, auth=None): @@ -1604,9 +1725,6 @@ cdef class Client: self.ops[it.reqid] = it return it - def microtransaction_init(self, bytes spacename): - return Microtransaction(self, spacename) - def async_get(self, bytes spacename, key, auth=None): return self.asynccall__spacename_key__status_attributes(hyperdex_client_get, spacename, key, auth) def get(self, bytes spacename, key, auth=None): @@ -2179,4 +2297,5 @@ cdef class Client: return self.asynccall__spacename_predicates__status_count(hyperdex_client_count, spacename, predicates, auth) def count(self, bytes spacename, dict predicates, auth=None): return self.async_count(spacename, predicates, auth).wait() + # End Automatically Generated Methods diff --git a/client/c.cc b/client/c.cc index b7981fc1..f1ac2d41 100644 --- a/client/c.cc +++ b/client/c.cc @@ -1969,10 +1969,12 @@ hyperdex_client_microtransaction_put(struct hyperdex_client* _cl, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(microtransaction_put), strlen(XSTR(microtransaction_put))); - return cl->perform_funcall(opinfo, space, key, key_sz, NULL, 0, attrs, attrs_sz, NULL, 0, status); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } diff --git a/client/client.cc b/client/client.cc index 8ba44042..0f9f0484 100644 --- a/client/client.cc +++ b/client/client.cc @@ -1260,7 +1260,7 @@ microtransaction* client::microtransaction_init(const char* space, hyperdex_clie return new microtransaction(space, *sc, status); } -int64_t client::microtransaciton_add_funcall(microtransaction *transaction, +int64_t client::microtransaction_add_funcall(microtransaction *transaction, const hyperdex_client_keyop_info* opinfo, const hyperdex_client_attribute* attrs, size_t attrs_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz) diff --git a/client/client.h b/client/client.h index 5e9f0eb3..c4f5041f 100644 --- a/client/client.h +++ b/client/client.h @@ -135,7 +135,7 @@ class client hyperdex_client_returncode *status); // Add a new funcall to the microstransaction - int64_t microtransaciton_add_funcall(microtransaction *transaction, + int64_t microtransaction_add_funcall(microtransaction *transaction, const hyperdex_client_keyop_info* opinfo, const hyperdex_client_attribute* attrs, size_t attrs_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz); diff --git a/doc/java/client/ops.tex b/doc/java/client/ops.tex index 24d086d1..e70d9a3b 100644 --- a/doc/java/client/ops.tex +++ b/doc/java/client/ops.tex @@ -6650,3 +6650,28 @@ \subsubsection{\code{async\_count}} \input{\topdir/java/client/fragments/return_async_asynccall__status_count} \paragraph{See also:} This is the asynchronous form of \code{count}. + +%%%%%%%%%%%%%%%%%%%% microtransaction_put %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_put}} +\label{api:java:microtransaction_put} +\index{microtransaction\_put!Java API} +\input{\topdir/client/fragments/microtransaction_put} + +\paragraph{Definition:} +\begin{javacode} +public Iterator microtransaction_put( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} diff --git a/doc/python/client/ops.tex b/doc/python/client/ops.tex index f9499a88..eb28b275 100644 --- a/doc/python/client/ops.tex +++ b/doc/python/client/ops.tex @@ -5913,3 +5913,26 @@ \subsubsection{\code{async\_count}} \input{\topdir/python/client/fragments/return_async_asynccall__status_count} \paragraph{See also:} This is the asynchronous form of \code{count}. + +%%%%%%%%%%%%%%%%%%%% microtransaction_put %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_put}} +\label{api:python:microtransaction_put} +\index{microtransaction\_put!Python API} +\input{\topdir/client/fragments/microtransaction_put} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_put(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} From 63375b01141030635ff64d2aa207a2531ff7ed70 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Mon, 16 Feb 2015 16:48:13 -0500 Subject: [PATCH 06/28] Most functions work now --- bindings/__init__.py | 14 +- bindings/c.py | 2 +- bindings/python.py | 4 +- bindings/python/hyperdex/client.pyx | 115 ++++++++- client/c.cc | 196 +++++++++++++-- doc/c/client/ops.tex | 365 ++++++++++++++++++++++++++-- doc/python/client/ops.tex | 322 ++++++++++++++++++++++-- include/hyperdex/client.h | 70 +++++- test/python/Microtransactions.py | 30 ++- 9 files changed, 1033 insertions(+), 85 deletions(-) diff --git a/bindings/__init__.py b/bindings/__init__.py index 0a861e5d..c8c15239 100644 --- a/bindings/__init__.py +++ b/bindings/__init__.py @@ -111,6 +111,7 @@ def __init__(self, name, form, args_in, args_out): Method('get', AsyncCall, (SpaceName, Key), (Status, Attributes)), Method('get_partial', AsyncCall, (SpaceName, Key, AttributeNames), (Status, Attributes)), Method('put', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_put', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_put', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_put', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('put_if_not_exist', AsyncCall, (SpaceName, Key, Attributes), (Status,)), @@ -118,24 +119,30 @@ def __init__(self, name, form, args_in, args_out): Method('cond_del', AsyncCall, (SpaceName, Key, Predicates), (Status,)), Method('group_del', AsyncCall, (SpaceName, Predicates), (Status, Count)), Method('atomic_add', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_atomic_add', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_add', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_add', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_sub', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_atomic_sub', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_sub', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_sub', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_mul', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_atomic_mul', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_mul', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_mul', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_div', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_atomic_div', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_div', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_div', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_mod', AsyncCall, (SpaceName, Key, Attributes), (Status,)), Method('cond_atomic_mod', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_mod', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_and', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_atomic_and', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_and', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_and', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_or', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_atomic_or', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_or', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_or', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_xor', AsyncCall, (SpaceName, Key, Attributes), (Status,)), @@ -148,15 +155,19 @@ def __init__(self, name, form, args_in, args_out): Method('cond_atomic_max', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_max', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('string_prepend', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_string_prepend', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_string_prepend', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_string_prepend', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('string_append', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_string_append', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_string_append', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_string_append', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('list_lpush', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_list_lpush', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_list_lpush', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_list_lpush', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('list_rpush', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_list_rpush', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_list_rpush', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_list_rpush', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('set_add', AsyncCall, (SpaceName, Key, Attributes), (Status,)), @@ -172,9 +183,11 @@ def __init__(self, name, form, args_in, args_out): Method('cond_set_union', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_set_union', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('document_rename', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_document_rename', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_document_rename', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_document_rename', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('document_unset', AsyncCall, (SpaceName, Key, Attributes), (Status,)), + Method('microtransaction_document_unset', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_document_unset', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_document_unset', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('map_add', AsyncCall, (SpaceName, Key, MapAttributes), (Status,)), @@ -223,7 +236,6 @@ def __init__(self, name, form, args_in, args_out): Method('search_describe', AsyncCall, (SpaceName, Predicates), (Status, Description)), Method('sorted_search', Iterator, (SpaceName, Predicates, SortBy, Limit, MaxMin), (Status, Attributes)), Method('count', AsyncCall, (SpaceName, Predicates), (Status, Count)), - Method('microtransaction_put', MicrotransactionCall, (Microtransaction, Attributes), ()), ] Admin = [ diff --git a/bindings/c.py b/bindings/c.py index f450a9f0..470cdc2a 100644 --- a/bindings/c.py +++ b/bindings/c.py @@ -158,7 +158,7 @@ def generate_client_c_wrapper(x): else: args += ('NULL', '0') func += ' const hyperdex_client_keyop_info* opinfo;\n' - func += ' opinfo = hyperdex_client_keyop_info_lookup(XSTR({0}), strlen(XSTR({0})));\n'.format(x.name) + func += ' opinfo = hyperdex_client_keyop_info_lookup(XSTR({0}), strlen(XSTR({0})));\n'.format(x.name.replace('microtransaction_', '')) func += ' return cl->microtransaction_add_funcall(' func += ', '.join([a for a in args]) func += ');\n' diff --git a/bindings/python.py b/bindings/python.py index b2ddcbe5..5b03c6ac 100644 --- a/bindings/python.py +++ b/bindings/python.py @@ -175,11 +175,13 @@ def generate_microtransaction_method(x, lib): if not (x.form is bindings.MicrotransactionCall): return '' + py_name = name(x).replace('microtransaction_', '') + typed_args = ', '.join([(PYTYPEOF(arg) + ' ' + arg_name(arg)).strip() for arg in x.args_in]) arg_list = ', '.join([arg_name(arg) for arg in x.args_in]) - meth = 'def {0}(self, {1}):\n'.format(name(x), typed_args) + meth = 'def {0}(self, dict attributes):\n'.format(py_name) meth += ' cdef hyperdex_client_attribute* in_attrs\n' meth += ' cdef size_t in_attrs_sz\n' meth += ' self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz)\n' diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index 01bfbdee..cb4cbd3d 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -176,6 +176,7 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_get(hyperdex_client* client, const char* space, const char* key, size_t key_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_get_partial(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_put(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_put(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_put_if_not_exist(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) @@ -183,24 +184,30 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_cond_del(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_del(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_add(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_atomic_add(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_add(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_add(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_sub(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_atomic_sub(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_sub(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_sub(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_mul(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_atomic_mul(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_mul(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_mul(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_div(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_atomic_div(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_div(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_div(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_mod(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_cond_atomic_mod(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_mod(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_and(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_atomic_and(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_and(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_and(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_or(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_atomic_or(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_or(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_or(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_xor(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) @@ -213,15 +220,19 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_cond_atomic_max(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_max(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_string_prepend(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_string_prepend(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_string_prepend(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_string_prepend(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_string_append(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_string_append(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_string_append(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_string_append(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_list_lpush(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_list_lpush(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_list_lpush(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_list_lpush(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_list_rpush(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_list_rpush(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_list_rpush(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_list_rpush(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_set_add(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) @@ -237,9 +248,11 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_cond_set_union(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_set_union(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_document_rename(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_document_rename(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_document_rename(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_document_rename(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_document_unset(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) + int64_t hyperdex_client_microtransaction_document_unset(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_document_unset(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_document_unset(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_map_add(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, hyperdex_client_returncode* status) @@ -288,7 +301,6 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_search_describe(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, const char** description) int64_t hyperdex_client_sorted_search(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_count(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, uint64_t* count) - int64_t hyperdex_client_microtransaction_put(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) # End Automatically Generated Prototypes @@ -368,6 +380,7 @@ ctypedef object (*encret_iterator_fptr)(Iterator it) ctypedef int64_t asynccall__spacename_key__status_attributes_fptr(hyperdex_client* client, const char* space, const char* key, size_t key_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) ctypedef int64_t asynccall__spacename_key_attributenames__status_attributes_fptr(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) ctypedef int64_t asynccall__spacename_key_attributes__status_fptr(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) +ctypedef int64_t microtransactioncall__microtransaction_attributes___fptr(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) ctypedef int64_t asynccall__spacename_key_predicates_attributes__status_fptr(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) ctypedef int64_t asynccall__spacename_predicates_attributes__status_count_fptr(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) ctypedef int64_t asynccall__spacename_key__status_fptr(hyperdex_client* client, const char* space, const char* key, size_t key_sz, hyperdex_client_returncode* status) @@ -379,7 +392,6 @@ ctypedef int64_t asynccall__spacename_predicates_mapattributes__status_count_fpt ctypedef int64_t iterator__spacename_predicates__status_attributes_fptr(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) ctypedef int64_t asynccall__spacename_predicates__status_description_fptr(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, const char** description) ctypedef int64_t iterator__spacename_predicates_sortby_limit_maxmin__status_attributes_fptr(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) -ctypedef int64_t microtransactioncall__microtransaction_attributes___fptr(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) # End Automatically Generated Function Pointers @@ -1180,6 +1192,12 @@ cdef class Microtransaction: + def put(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_put(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True @@ -1187,24 +1205,60 @@ cdef class Microtransaction: + def atomic_add(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_atomic_add(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True + def atomic_sub(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_atomic_sub(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True + def atomic_mul(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_atomic_mul(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True + def atomic_div(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_atomic_div(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True + def atomic_and(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_atomic_and(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True + def atomic_or(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_atomic_or(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True @@ -1217,15 +1271,39 @@ cdef class Microtransaction: + def string_prepend(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_string_prepend(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True + def string_append(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_string_append(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True + def list_lpush(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_list_lpush(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True + def list_rpush(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_list_rpush(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True @@ -1241,9 +1319,21 @@ cdef class Microtransaction: + def document_rename(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_document_rename(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True + def document_unset(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + hyperdex_client_microtransaction_document_unset(self.client.client, self.transaction, in_attrs, in_attrs_sz) + return True @@ -1291,13 +1381,6 @@ cdef class Microtransaction: - - def microtransaction_put(self, microtransaction, dict attributes): - cdef hyperdex_client_attribute* in_attrs - cdef size_t in_attrs_sz - self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_put(self.client.client, self.transaction, in_attrs, in_attrs_sz) - return True # End Automatically Generated UTX Methods def async_commit(self, bytes key): @@ -1742,6 +1825,7 @@ cdef class Client: if secret is not None: attributes['__secret'] = secret return self.async_put(spacename, key, attributes, auth).wait() + def async_cond_put(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_put, spacename, key, predicates, attributes, auth) def cond_put(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1777,6 +1861,7 @@ cdef class Client: def atomic_add(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_add(spacename, key, attributes, auth).wait() + def async_cond_atomic_add(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_add, spacename, key, predicates, attributes, auth) def cond_atomic_add(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1792,6 +1877,7 @@ cdef class Client: def atomic_sub(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_sub(spacename, key, attributes, auth).wait() + def async_cond_atomic_sub(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_sub, spacename, key, predicates, attributes, auth) def cond_atomic_sub(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1807,6 +1893,7 @@ cdef class Client: def atomic_mul(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_mul(spacename, key, attributes, auth).wait() + def async_cond_atomic_mul(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_mul, spacename, key, predicates, attributes, auth) def cond_atomic_mul(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1822,6 +1909,7 @@ cdef class Client: def atomic_div(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_div(spacename, key, attributes, auth).wait() + def async_cond_atomic_div(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_div, spacename, key, predicates, attributes, auth) def cond_atomic_div(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1852,6 +1940,7 @@ cdef class Client: def atomic_and(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_and(spacename, key, attributes, auth).wait() + def async_cond_atomic_and(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_and, spacename, key, predicates, attributes, auth) def cond_atomic_and(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1867,6 +1956,7 @@ cdef class Client: def atomic_or(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_or(spacename, key, attributes, auth).wait() + def async_cond_atomic_or(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_or, spacename, key, predicates, attributes, auth) def cond_atomic_or(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1927,6 +2017,7 @@ cdef class Client: def string_prepend(self, bytes spacename, key, dict attributes, auth=None): return self.async_string_prepend(spacename, key, attributes, auth).wait() + def async_cond_string_prepend(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_string_prepend, spacename, key, predicates, attributes, auth) def cond_string_prepend(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1942,6 +2033,7 @@ cdef class Client: def string_append(self, bytes spacename, key, dict attributes, auth=None): return self.async_string_append(spacename, key, attributes, auth).wait() + def async_cond_string_append(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_string_append, spacename, key, predicates, attributes, auth) def cond_string_append(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1957,6 +2049,7 @@ cdef class Client: def list_lpush(self, bytes spacename, key, dict attributes, auth=None): return self.async_list_lpush(spacename, key, attributes, auth).wait() + def async_cond_list_lpush(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_list_lpush, spacename, key, predicates, attributes, auth) def cond_list_lpush(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1972,6 +2065,7 @@ cdef class Client: def list_rpush(self, bytes spacename, key, dict attributes, auth=None): return self.async_list_rpush(spacename, key, attributes, auth).wait() + def async_cond_list_rpush(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_list_rpush, spacename, key, predicates, attributes, auth) def cond_list_rpush(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2047,6 +2141,7 @@ cdef class Client: def document_rename(self, bytes spacename, key, dict attributes, auth=None): return self.async_document_rename(spacename, key, attributes, auth).wait() + def async_cond_document_rename(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_document_rename, spacename, key, predicates, attributes, auth) def cond_document_rename(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2062,6 +2157,7 @@ cdef class Client: def document_unset(self, bytes spacename, key, dict attributes, auth=None): return self.async_document_unset(spacename, key, attributes, auth).wait() + def async_cond_document_unset(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_document_unset, spacename, key, predicates, attributes, auth) def cond_document_unset(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2297,5 +2393,4 @@ cdef class Client: return self.asynccall__spacename_predicates__status_count(hyperdex_client_count, spacename, predicates, auth) def count(self, bytes spacename, dict predicates, auth=None): return self.async_count(spacename, predicates, auth).wait() - # End Automatically Generated Methods diff --git a/client/c.cc b/client/c.cc index f1ac2d41..ad6c2c85 100644 --- a/client/c.cc +++ b/client/c.cc @@ -332,6 +332,20 @@ hyperdex_client_put(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_put(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(put), strlen(XSTR(put))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_put(struct hyperdex_client* _cl, const char* space, @@ -431,6 +445,20 @@ hyperdex_client_atomic_add(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_atomic_add(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_add), strlen(XSTR(atomic_add))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_atomic_add(struct hyperdex_client* _cl, const char* space, @@ -475,6 +503,20 @@ hyperdex_client_atomic_sub(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_atomic_sub(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_sub), strlen(XSTR(atomic_sub))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_atomic_sub(struct hyperdex_client* _cl, const char* space, @@ -519,6 +561,20 @@ hyperdex_client_atomic_mul(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_atomic_mul(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_mul), strlen(XSTR(atomic_mul))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_atomic_mul(struct hyperdex_client* _cl, const char* space, @@ -563,6 +619,20 @@ hyperdex_client_atomic_div(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_atomic_div(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_div), strlen(XSTR(atomic_div))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_atomic_div(struct hyperdex_client* _cl, const char* space, @@ -651,6 +721,20 @@ hyperdex_client_atomic_and(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_atomic_and(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_and), strlen(XSTR(atomic_and))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_atomic_and(struct hyperdex_client* _cl, const char* space, @@ -695,6 +779,20 @@ hyperdex_client_atomic_or(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_atomic_or(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_or), strlen(XSTR(atomic_or))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_atomic_or(struct hyperdex_client* _cl, const char* space, @@ -871,6 +969,20 @@ hyperdex_client_string_prepend(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_string_prepend(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(string_prepend), strlen(XSTR(string_prepend))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_string_prepend(struct hyperdex_client* _cl, const char* space, @@ -915,6 +1027,20 @@ hyperdex_client_string_append(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_string_append(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(string_append), strlen(XSTR(string_append))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_string_append(struct hyperdex_client* _cl, const char* space, @@ -959,6 +1085,20 @@ hyperdex_client_list_lpush(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_list_lpush(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(list_lpush), strlen(XSTR(list_lpush))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_list_lpush(struct hyperdex_client* _cl, const char* space, @@ -1003,6 +1143,20 @@ hyperdex_client_list_rpush(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_list_rpush(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(list_rpush), strlen(XSTR(list_rpush))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_list_rpush(struct hyperdex_client* _cl, const char* space, @@ -1223,6 +1377,20 @@ hyperdex_client_document_rename(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_document_rename(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(document_rename), strlen(XSTR(document_rename))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_document_rename(struct hyperdex_client* _cl, const char* space, @@ -1267,6 +1435,20 @@ hyperdex_client_document_unset(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_microtransaction_document_unset(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(document_unset), strlen(XSTR(document_unset))); + return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_cond_document_unset(struct hyperdex_client* _cl, const char* space, @@ -1964,20 +2146,6 @@ hyperdex_client_count(struct hyperdex_client* _cl, ); } -HYPERDEX_API int64_t -hyperdex_client_microtransaction_put(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) -{ - hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); - hyperdex_client_returncode *status = tx->status; - C_WRAP_EXCEPT( - const hyperdex_client_keyop_info* opinfo; - opinfo = hyperdex_client_keyop_info_lookup(XSTR(microtransaction_put), strlen(XSTR(microtransaction_put))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); - ); -} - HYPERDEX_API int64_t hyperdex_client_loop(hyperdex_client* _cl, int timeout, hyperdex_client_returncode* status) diff --git a/doc/c/client/ops.tex b/doc/c/client/ops.tex index 7bfe4adc..b7cc735e 100644 --- a/doc/c/client/ops.tex +++ b/doc/c/client/ops.tex @@ -131,6 +131,32 @@ \subsection{\code{put}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_put %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_put}} +\label{api:c:microtransaction_put} +\index{microtransaction\_put!C API} +\input{\topdir/client/fragments/microtransaction_put} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_put(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_put %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_put}} @@ -372,6 +398,32 @@ \subsection{\code{atomic\_add}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_add %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_atomic\_add}} +\label{api:c:microtransaction_atomic_add} +\index{microtransaction\_atomic\_add!C API} +\input{\topdir/client/fragments/microtransaction_atomic_add} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_atomic_add(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_atomic_add %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_atomic\_add}} @@ -480,6 +532,32 @@ \subsection{\code{atomic\_sub}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_sub %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_atomic\_sub}} +\label{api:c:microtransaction_atomic_sub} +\index{microtransaction\_atomic\_sub!C API} +\input{\topdir/client/fragments/microtransaction_atomic_sub} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_atomic_sub(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_atomic_sub %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_atomic\_sub}} @@ -588,6 +666,32 @@ \subsection{\code{atomic\_mul}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_mul %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_atomic\_mul}} +\label{api:c:microtransaction_atomic_mul} +\index{microtransaction\_atomic\_mul!C API} +\input{\topdir/client/fragments/microtransaction_atomic_mul} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_atomic_mul(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_atomic_mul %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_atomic\_mul}} @@ -696,6 +800,32 @@ \subsection{\code{atomic\_div}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_div %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_atomic\_div}} +\label{api:c:microtransaction_atomic_div} +\index{microtransaction\_atomic\_div!C API} +\input{\topdir/client/fragments/microtransaction_atomic_div} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_atomic_div(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_atomic_div %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_atomic\_div}} @@ -912,6 +1042,32 @@ \subsection{\code{atomic\_and}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_and %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_atomic\_and}} +\label{api:c:microtransaction_atomic_and} +\index{microtransaction\_atomic\_and!C API} +\input{\topdir/client/fragments/microtransaction_atomic_and} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_atomic_and(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_atomic_and %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_atomic\_and}} @@ -1020,6 +1176,32 @@ \subsection{\code{atomic\_or}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_or %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_atomic\_or}} +\label{api:c:microtransaction_atomic_or} +\index{microtransaction\_atomic\_or!C API} +\input{\topdir/client/fragments/microtransaction_atomic_or} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_atomic_or(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_atomic_or %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_atomic\_or}} @@ -1452,6 +1634,32 @@ \subsection{\code{string\_prepend}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_string_prepend %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_string\_prepend}} +\label{api:c:microtransaction_string_prepend} +\index{microtransaction\_string\_prepend!C API} +\input{\topdir/client/fragments/microtransaction_string_prepend} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_string_prepend(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_string_prepend %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_string\_prepend}} @@ -1560,6 +1768,32 @@ \subsection{\code{string\_append}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_string_append %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_string\_append}} +\label{api:c:microtransaction_string_append} +\index{microtransaction\_string\_append!C API} +\input{\topdir/client/fragments/microtransaction_string_append} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_string_append(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_string_append %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_string\_append}} @@ -1668,6 +1902,32 @@ \subsection{\code{list\_lpush}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_list_lpush %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_list\_lpush}} +\label{api:c:microtransaction_list_lpush} +\index{microtransaction\_list\_lpush!C API} +\input{\topdir/client/fragments/microtransaction_list_lpush} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_list_lpush(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_list_lpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_list\_lpush}} @@ -1776,6 +2036,32 @@ \subsection{\code{list\_rpush}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_list_rpush %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_list\_rpush}} +\label{api:c:microtransaction_list_rpush} +\index{microtransaction\_list\_rpush!C API} +\input{\topdir/client/fragments/microtransaction_list_rpush} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_list_rpush(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_list_rpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_list\_rpush}} @@ -2316,6 +2602,32 @@ \subsection{\code{document\_rename}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_document_rename %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_document\_rename}} +\label{api:c:microtransaction_document_rename} +\index{microtransaction\_document\_rename!C API} +\input{\topdir/client/fragments/microtransaction_document_rename} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_document_rename(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_document_rename %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_document\_rename}} @@ -2424,6 +2736,32 @@ \subsection{\code{document\_unset}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} +%%%%%%%%%%%%%%%%%%%% microtransaction_document_unset %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{microtransaction\_document\_unset}} +\label{api:c:microtransaction_document_unset} +\index{microtransaction\_document\_unset!C API} +\input{\topdir/client/fragments/microtransaction_document_unset} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_microtransaction_document_unset(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% cond_document_unset %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{cond\_document\_unset}} @@ -4120,30 +4458,3 @@ \subsection{\code{count}} \item \code{uint64\_t* count}\\ \input{\topdir/c/client/fragments/out_asynccall_count} \end{itemize} - -%%%%%%%%%%%%%%%%%%%% microtransaction_put %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsection{\code{microtransaction\_put}} -\label{api:c:microtransaction_put} -\index{microtransaction\_put!C API} -\input{\topdir/client/fragments/microtransaction_put} - -\paragraph{Definition:} -\begin{ccode} -int64_t hyperdex_client_microtransaction_put(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); -\end{ccode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{struct hyperdex\_client* client}\\ -\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} -\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ -\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} -\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ -\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -Nothing \ No newline at end of file diff --git a/doc/python/client/ops.tex b/doc/python/client/ops.tex index eb28b275..1d35a9a9 100644 --- a/doc/python/client/ops.tex +++ b/doc/python/client/ops.tex @@ -175,6 +175,29 @@ \subsubsection{\code{async\_put}} \paragraph{See also:} This is the asynchronous form of \code{put}. +%%%%%%%%%%%%%%%%%%%% microtransaction_put %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_put}} +\label{api:python:microtransaction_put} +\index{microtransaction\_put!Python API} +\input{\topdir/client/fragments/microtransaction_put} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_put(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_put %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_put}} @@ -528,6 +551,29 @@ \subsubsection{\code{async\_atomic\_add}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_add}. +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_add %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_atomic\_add}} +\label{api:python:microtransaction_atomic_add} +\index{microtransaction\_atomic\_add!Python API} +\input{\topdir/client/fragments/microtransaction_atomic_add} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_atomic_add(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_add %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_add}} @@ -685,6 +731,29 @@ \subsubsection{\code{async\_atomic\_sub}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_sub}. +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_sub %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_atomic\_sub}} +\label{api:python:microtransaction_atomic_sub} +\index{microtransaction\_atomic\_sub!Python API} +\input{\topdir/client/fragments/microtransaction_atomic_sub} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_atomic_sub(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_sub %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_sub}} @@ -842,6 +911,29 @@ \subsubsection{\code{async\_atomic\_mul}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_mul}. +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_mul %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_atomic\_mul}} +\label{api:python:microtransaction_atomic_mul} +\index{microtransaction\_atomic\_mul!Python API} +\input{\topdir/client/fragments/microtransaction_atomic_mul} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_atomic_mul(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_mul %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_mul}} @@ -999,6 +1091,29 @@ \subsubsection{\code{async\_atomic\_div}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_div}. +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_div %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_atomic\_div}} +\label{api:python:microtransaction_atomic_div} +\index{microtransaction\_atomic\_div!Python API} +\input{\topdir/client/fragments/microtransaction_atomic_div} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_atomic_div(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_div %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_div}} @@ -1313,6 +1428,29 @@ \subsubsection{\code{async\_atomic\_and}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_and}. +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_and %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_atomic\_and}} +\label{api:python:microtransaction_atomic_and} +\index{microtransaction\_atomic\_and!Python API} +\input{\topdir/client/fragments/microtransaction_atomic_and} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_atomic_and(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_and %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_and}} @@ -1470,6 +1608,29 @@ \subsubsection{\code{async\_atomic\_or}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_or}. +%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_or %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_atomic\_or}} +\label{api:python:microtransaction_atomic_or} +\index{microtransaction\_atomic\_or!Python API} +\input{\topdir/client/fragments/microtransaction_atomic_or} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_atomic_or(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_or %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_or}} @@ -2098,6 +2259,29 @@ \subsubsection{\code{async\_string\_prepend}} \paragraph{See also:} This is the asynchronous form of \code{string\_prepend}. +%%%%%%%%%%%%%%%%%%%% microtransaction_string_prepend %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_string\_prepend}} +\label{api:python:microtransaction_string_prepend} +\index{microtransaction\_string\_prepend!Python API} +\input{\topdir/client/fragments/microtransaction_string_prepend} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_string_prepend(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_string_prepend %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_string\_prepend}} @@ -2255,6 +2439,29 @@ \subsubsection{\code{async\_string\_append}} \paragraph{See also:} This is the asynchronous form of \code{string\_append}. +%%%%%%%%%%%%%%%%%%%% microtransaction_string_append %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_string\_append}} +\label{api:python:microtransaction_string_append} +\index{microtransaction\_string\_append!Python API} +\input{\topdir/client/fragments/microtransaction_string_append} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_string_append(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_string_append %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_string\_append}} @@ -2412,6 +2619,29 @@ \subsubsection{\code{async\_list\_lpush}} \paragraph{See also:} This is the asynchronous form of \code{list\_lpush}. +%%%%%%%%%%%%%%%%%%%% microtransaction_list_lpush %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_list\_lpush}} +\label{api:python:microtransaction_list_lpush} +\index{microtransaction\_list\_lpush!Python API} +\input{\topdir/client/fragments/microtransaction_list_lpush} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_list_lpush(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_list_lpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_list\_lpush}} @@ -2569,6 +2799,29 @@ \subsubsection{\code{async\_list\_rpush}} \paragraph{See also:} This is the asynchronous form of \code{list\_rpush}. +%%%%%%%%%%%%%%%%%%%% microtransaction_list_rpush %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_list\_rpush}} +\label{api:python:microtransaction_list_rpush} +\index{microtransaction\_list\_rpush!Python API} +\input{\topdir/client/fragments/microtransaction_list_rpush} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_list_rpush(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_list_rpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_list\_rpush}} @@ -3354,6 +3607,29 @@ \subsubsection{\code{async\_document\_rename}} \paragraph{See also:} This is the asynchronous form of \code{document\_rename}. +%%%%%%%%%%%%%%%%%%%% microtransaction_document_rename %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_document\_rename}} +\label{api:python:microtransaction_document_rename} +\index{microtransaction\_document\_rename!Python API} +\input{\topdir/client/fragments/microtransaction_document_rename} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_document_rename(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_document_rename %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_document\_rename}} @@ -3511,6 +3787,29 @@ \subsubsection{\code{async\_document\_unset}} \paragraph{See also:} This is the asynchronous form of \code{document\_unset}. +%%%%%%%%%%%%%%%%%%%% microtransaction_document_unset %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{microtransaction\_document\_unset}} +\label{api:python:microtransaction_document_unset} +\index{microtransaction\_document\_unset!Python API} +\input{\topdir/client/fragments/microtransaction_document_unset} + +\paragraph{Definition:} +\begin{pythoncode} +def microtransaction_document_unset(self, microtransaction, attributes) +\end{pythoncode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/python/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_document_unset %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_document\_unset}} @@ -5913,26 +6212,3 @@ \subsubsection{\code{async\_count}} \input{\topdir/python/client/fragments/return_async_asynccall__status_count} \paragraph{See also:} This is the asynchronous form of \code{count}. - -%%%%%%%%%%%%%%%%%%%% microtransaction_put %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{microtransaction\_put}} -\label{api:python:microtransaction_put} -\index{microtransaction\_put!Python API} -\input{\topdir/client/fragments/microtransaction_put} - -\paragraph{Definition:} -\begin{pythoncode} -def microtransaction_put(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} diff --git a/include/hyperdex/client.h b/include/hyperdex/client.h index 0671aeb8..b04bc706 100644 --- a/include/hyperdex/client.h +++ b/include/hyperdex/client.h @@ -154,6 +154,11 @@ hyperdex_client_put(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_put(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_put(struct hyperdex_client* client, const char* space, @@ -204,6 +209,11 @@ hyperdex_client_atomic_add(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_atomic_add(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_atomic_add(struct hyperdex_client* client, const char* space, @@ -227,6 +237,11 @@ hyperdex_client_atomic_sub(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_atomic_sub(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_atomic_sub(struct hyperdex_client* client, const char* space, @@ -250,6 +265,11 @@ hyperdex_client_atomic_mul(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_atomic_mul(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_atomic_mul(struct hyperdex_client* client, const char* space, @@ -273,6 +293,11 @@ hyperdex_client_atomic_div(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_atomic_div(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_atomic_div(struct hyperdex_client* client, const char* space, @@ -319,6 +344,11 @@ hyperdex_client_atomic_and(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_atomic_and(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_atomic_and(struct hyperdex_client* client, const char* space, @@ -342,6 +372,11 @@ hyperdex_client_atomic_or(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_atomic_or(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_atomic_or(struct hyperdex_client* client, const char* space, @@ -434,6 +469,11 @@ hyperdex_client_string_prepend(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_string_prepend(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_string_prepend(struct hyperdex_client* client, const char* space, @@ -457,6 +497,11 @@ hyperdex_client_string_append(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_string_append(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_string_append(struct hyperdex_client* client, const char* space, @@ -480,6 +525,11 @@ hyperdex_client_list_lpush(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_list_lpush(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_list_lpush(struct hyperdex_client* client, const char* space, @@ -503,6 +553,11 @@ hyperdex_client_list_rpush(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_list_rpush(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_list_rpush(struct hyperdex_client* client, const char* space, @@ -618,6 +673,11 @@ hyperdex_client_document_rename(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_document_rename(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_document_rename(struct hyperdex_client* client, const char* space, @@ -641,6 +701,11 @@ hyperdex_client_document_unset(struct hyperdex_client* client, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status); +int64_t +hyperdex_client_microtransaction_document_unset(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_cond_document_unset(struct hyperdex_client* client, const char* space, @@ -1010,11 +1075,6 @@ hyperdex_client_count(struct hyperdex_client* client, enum hyperdex_client_returncode* status, uint64_t* count); -int64_t -hyperdex_client_microtransaction_put(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); - int64_t hyperdex_client_loop(struct hyperdex_client* client, int timeout, enum hyperdex_client_returncode* status); diff --git a/test/python/Microtransactions.py b/test/python/Microtransactions.py index b6085098..33568f78 100644 --- a/test/python/Microtransactions.py +++ b/test/python/Microtransactions.py @@ -9,11 +9,35 @@ c = hyperdex.client.Client(sys.argv[1], int(sys.argv[2])) assertTrue(c.put('kv', 'k1', {'v' : Document({'a' : 1})})) - tx = c.microtransaction_init('kv') tx.put({'v.b' : 2}) tx.put({'v.c' : 3}) tx.commit('k1') - -res = c.search('kv', {'k' : 'k1'}) assertEquals(c.get('kv', 'k1')['v'], Document({'a' : 1, 'b' : 2, 'c' : 3})) + +assertTrue(c.put('kv', 'k2', {'v' : Document({'a' : 1})})) +tx = c.microtransaction_init('kv') +tx.atomic_add({'v.a' : 2}) +tx.atomic_add({'v.b' : -1}) +tx.atomic_add({'v.c' : 3}) +#tx.put({'v.d' : Document({'x' : 'y'})}) +assertTrue(tx.commit('k2')) +assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3})) + +tx = c.microtransaction_init('kv') +tx.atomic_div({'v.a' : 3}) +tx.atomic_div({'v.b' : -1}) +tx.atomic_mul({'v.c' : 0}) +tx.document_rename({'v.d': 'v.e'}) +tx = c.microtransaction_init('kv') +assertFalse(tx.commit('k2')) #rename should fail... +assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3})) + +tx = c.microtransaction_init('kv') +tx.atomic_div({'v.a' : 3}) +tx.atomic_div({'v.b' : -1}) +tx.atomic_mul({'v.c' : 0}) +tx = c.microtransaction_init('kv') +assertTrue(tx.commit('k2')) +assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 1, 'b' : 1, 'c' : 0})) + From 0b222001839fa169a07ec995b540f8b1815f3a03 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Tue, 17 Feb 2015 12:54:34 -0500 Subject: [PATCH 07/28] more progress --- bindings/python.py | 7 +++--- bindings/python/hyperdex/client.pyx | 39 +++++++++++++++++++---------- test/python/Microtransactions.py | 5 ++-- 3 files changed, 32 insertions(+), 19 deletions(-) diff --git a/bindings/python.py b/bindings/python.py index 5b03c6ac..11116898 100644 --- a/bindings/python.py +++ b/bindings/python.py @@ -185,9 +185,10 @@ def generate_microtransaction_method(x, lib): meth += ' cdef hyperdex_client_attribute* in_attrs\n' meth += ' cdef size_t in_attrs_sz\n' meth += ' self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz)\n' - meth += ' hyperdex_{1}_{0}(self.client.client, self.transaction, in_attrs, in_attrs_sz)\n'.format(x.name, lib) - meth += ' return True' - + meth += ' res = hyperdex_{1}_{0}(self.client.client, self.transaction, in_attrs, in_attrs_sz)\n'.format(x.name, lib) + meth += ' if res < 0:' + meth += ' raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client))\n' + meth += ' return True' return indent(meth)[:-1] def generate_method(x, lib, auth=True): diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index cb4cbd3d..17ea8eeb 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -1196,7 +1196,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_put(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_put(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1209,7 +1210,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_atomic_add(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_atomic_add(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1218,7 +1220,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_atomic_sub(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_atomic_sub(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1227,7 +1230,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_atomic_mul(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_atomic_mul(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1236,7 +1240,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_atomic_div(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_atomic_div(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1248,7 +1253,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_atomic_and(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_atomic_and(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1257,7 +1263,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_atomic_or(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_atomic_or(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1275,7 +1282,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_string_prepend(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_string_prepend(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1284,7 +1292,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_string_append(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_string_append(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1293,7 +1302,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_list_lpush(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_list_lpush(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1302,7 +1312,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_list_rpush(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_list_rpush(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1323,7 +1334,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_document_rename(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_document_rename(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1332,7 +1344,8 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - hyperdex_client_microtransaction_document_unset(self.client.client, self.transaction, in_attrs, in_attrs_sz) + res = hyperdex_client_microtransaction_document_unset(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True diff --git a/test/python/Microtransactions.py b/test/python/Microtransactions.py index 33568f78..150aa63d 100644 --- a/test/python/Microtransactions.py +++ b/test/python/Microtransactions.py @@ -30,14 +30,13 @@ tx.atomic_mul({'v.c' : 0}) tx.document_rename({'v.d': 'v.e'}) tx = c.microtransaction_init('kv') -assertFalse(tx.commit('k2')) #rename should fail... -assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3})) +assertTrue(tx.commit('k2')) +assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3})) #rename should fail... tx = c.microtransaction_init('kv') tx.atomic_div({'v.a' : 3}) tx.atomic_div({'v.b' : -1}) tx.atomic_mul({'v.c' : 0}) -tx = c.microtransaction_init('kv') assertTrue(tx.commit('k2')) assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 1, 'b' : 1, 'c' : 0})) From 7d86c14e51ee28bb72d6d55efcf25ef0b24bb9b9 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Tue, 17 Feb 2015 16:19:15 -0500 Subject: [PATCH 08/28] Make all tests pass again --- client/client.cc | 5 ++--- client/client.h | 4 ++-- common/datatype_document.cc | 2 +- test/python/DataTypeDocument.py | 26 ++++++++++++++------------ test/python/Microtransactions.py | 10 ++++++---- 5 files changed, 25 insertions(+), 22 deletions(-) diff --git a/client/client.cc b/client/client.cc index 0f9f0484..ea36ef95 100644 --- a/client/client.cc +++ b/client/client.cc @@ -1266,10 +1266,9 @@ int64_t client::microtransaction_add_funcall(microtransaction *transaction, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz) { size_t idx = 0; - e::arena memory; // Prepare the attrs - idx = prepare_funcs(transaction->space, transaction->sc, opinfo, attrs, attrs_sz, &memory, transaction->status, &transaction->funcalls); + idx = prepare_funcs(transaction->space, transaction->sc, opinfo, attrs, attrs_sz, &transaction->memory, transaction->status, &transaction->funcalls); if (idx < attrs_sz) { @@ -1277,7 +1276,7 @@ int64_t client::microtransaction_add_funcall(microtransaction *transaction, } // Prepare the mapattrs - idx = prepare_funcs(transaction->space, transaction->sc, opinfo, mapattrs, mapattrs_sz, &memory, transaction->status, &transaction->funcalls); + idx = prepare_funcs(transaction->space, transaction->sc, opinfo, mapattrs, mapattrs_sz, &transaction->memory, transaction->status, &transaction->funcalls); if (idx < mapattrs_sz) { diff --git a/client/client.h b/client/client.h index c4f5041f..f967409e 100644 --- a/client/client.h +++ b/client/client.h @@ -53,7 +53,7 @@ struct microtransaction { microtransaction(const char* space_, const schema& sc_, hyperdex_client_returncode *status_) - : space(space_), sc(sc_), status(status_), funcalls() + : space(space_), sc(sc_), status(status_), funcalls(), memory() {} PO6_NONCOPYABLE(microtransaction); @@ -65,7 +65,7 @@ struct microtransaction const schema& sc; hyperdex_client_returncode* status; std::vector funcalls; - + e::arena memory; }; class client diff --git a/common/datatype_document.cc b/common/datatype_document.cc index 3b9e705a..c3068c5d 100644 --- a/common/datatype_document.cc +++ b/common/datatype_document.cc @@ -265,7 +265,7 @@ datatype_document :: apply(const e::slice& old_value, type = HYPERDATATYPE_FLOAT; } - // Both types are numberal (integer or float) + // Both types are numerals (integer or float) const bool numeral = is_numeral(type) && is_numeral(func.arg1_datatype); if (func.name != FUNC_SET && diff --git a/test/python/DataTypeDocument.py b/test/python/DataTypeDocument.py index 2ab9a440..5fa41fbe 100644 --- a/test/python/DataTypeDocument.py +++ b/test/python/DataTypeDocument.py @@ -26,12 +26,12 @@ def to_objectset(xs): assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xb', 'c': {'d' : 11, 'e': 'zf', 'g': 3}})) assertTrue(c.string_append('kv', 'k', {'v.a' : 'x', 'v.c.e': 'z'})) assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}})) -#assertTrue(c.string_append('kv', 'k', {'v.k.l': 'm'})) -#assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'l' : 'm'}})) -#assertTrue(c.atomic_add('kv', 'k', {'v.k.a.b.c.d' : 1})) -#assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'a': {'b' : {'c' : {'d' : 1}}}, 'l' : 'm'}})) -#assertTrue(c.atomic_sub('kv', 'k', {'v.k.a.b.c.d' : 5})) -#assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'a': {'b' : {'c' : {'d' : -4}}}, 'l' : 'm'}})) +assertTrue(c.string_append('kv', 'k', {'v.k.l': 'm'})) +assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'l' : 'm'}})) +assertTrue(c.atomic_add('kv', 'k', {'v.k.a.b.c.d' : 1})) +assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'a': {'b' : {'c' : {'d' : 1}}}, 'l' : 'm'}})) +assertTrue(c.atomic_sub('kv', 'k', {'v.k.a.b.c.d' : 5})) +assertEquals(c.get('kv', 'k')['v'], Document({'a': 'xbx', 'c': {'d' : 11, 'e': 'zfz', 'g': 3}, 'k' : {'a': {'b' : {'c' : {'d' : -4}}}, 'l' : 'm'}})) # Bit operations assertTrue(c.put('kv', 'k3', {'v': Document({'a': 'b', 'c': {'d' : 100, 'e': 'f', 'g': 5 }})})) @@ -71,12 +71,14 @@ def to_objectset(xs): assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 })) assertFalse(c.atomic_add('kv', 'k6', {'v.a.b' :1})) assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 })) -#assertTrue(c.atomic_add('kv', 'k6', {'v.c.b' :1})) -#assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}})) -#assertTrue(c.string_prepend('kv', 'k6', {'v.i.j.k' : 'xyz'})) -#assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}, 'i' : {'j' : {'k' : 'xyz'}}})) -#assertFalse(c.string_prepend('kv', 'k6', {'v.i.j' : 'xyz'})) -#assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}, 'i' : {'j' : {'k' : 'xyz'}}})) +assertTrue(c.atomic_add('kv', 'k6', {'v.c.b' :1})) +assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}})) +assertTrue(c.string_prepend('kv', 'k6', {'v.i.j.k' : 'xyz'})) +assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}, 'i' : {'j' : {'k' : 'xyz'}}})) +assertFalse(c.string_prepend('kv', 'k6', {'v.i.j' : 'xyz'})) +assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}, 'i' : {'j' : {'k' : 'xyz'}}})) +assertTrue(c.put('kv', 'k6', {'v.d' : Document({'q' : 1})})) +assertEquals(c.get('kv', 'k6')['v'], Document({ 'a': 100 , 'c' : {'b' :1}, 'i' : {'j' : {'k' : 'xyz'}}, 'd' : {'q' : 1}})) # Remove a property assertTrue(c.put('kv', 'k7', {'v' : Document({'a' : {'b' : 3}})})) diff --git a/test/python/Microtransactions.py b/test/python/Microtransactions.py index 150aa63d..46cab3d9 100644 --- a/test/python/Microtransactions.py +++ b/test/python/Microtransactions.py @@ -20,9 +20,9 @@ tx.atomic_add({'v.a' : 2}) tx.atomic_add({'v.b' : -1}) tx.atomic_add({'v.c' : 3}) -#tx.put({'v.d' : Document({'x' : 'y'})}) +tx.put({'v.d' : Document({'x' : 'y'})}) assertTrue(tx.commit('k2')) -assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3})) +assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3, 'd' : {'x' : 'y'}})) tx = c.microtransaction_init('kv') tx.atomic_div({'v.a' : 3}) @@ -31,12 +31,14 @@ tx.document_rename({'v.d': 'v.e'}) tx = c.microtransaction_init('kv') assertTrue(tx.commit('k2')) -assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3})) #rename should fail... +assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3, 'd' : {'x' : 'y'}})) #rename should fail... tx = c.microtransaction_init('kv') tx.atomic_div({'v.a' : 3}) tx.atomic_div({'v.b' : -1}) tx.atomic_mul({'v.c' : 0}) assertTrue(tx.commit('k2')) -assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 1, 'b' : 1, 'c' : 0})) +assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 1, 'b' : 1, 'c' : 0, 'd' : {'x' : 'y'}})) + + From e6cec930f1e3f494511e510947d19bcb9f6817c5 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Thu, 19 Feb 2015 14:01:32 -0500 Subject: [PATCH 09/28] New naming scheme uxact --- bindings/__init__.py | 26 ++--- bindings/c.py | 18 ++-- bindings/python.py | 4 +- bindings/python/hyperdex/client.pyx | 99 ++++++++++-------- client/c.cc | 112 ++++++++++---------- client/client.cc | 6 +- client/client.h | 6 +- client/keyop_info.gperf | 33 ++++++ doc/c/client/ops.tex | 156 ++++++++++++++-------------- doc/python/client/ops.tex | 156 ++++++++++++++-------------- include/hyperdex/client.h | 82 +++++++-------- 11 files changed, 372 insertions(+), 326 deletions(-) diff --git a/bindings/__init__.py b/bindings/__init__.py index c8c15239..f621942c 100644 --- a/bindings/__init__.py +++ b/bindings/__init__.py @@ -111,7 +111,7 @@ def __init__(self, name, form, args_in, args_out): Method('get', AsyncCall, (SpaceName, Key), (Status, Attributes)), Method('get_partial', AsyncCall, (SpaceName, Key, AttributeNames), (Status, Attributes)), Method('put', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_put', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_put', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_put', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_put', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('put_if_not_exist', AsyncCall, (SpaceName, Key, Attributes), (Status,)), @@ -119,30 +119,30 @@ def __init__(self, name, form, args_in, args_out): Method('cond_del', AsyncCall, (SpaceName, Key, Predicates), (Status,)), Method('group_del', AsyncCall, (SpaceName, Predicates), (Status, Count)), Method('atomic_add', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_atomic_add', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_atomic_add', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_add', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_add', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_sub', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_atomic_sub', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_atomic_sub', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_sub', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_sub', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_mul', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_atomic_mul', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_atomic_mul', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_mul', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_mul', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_div', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_atomic_div', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_atomic_div', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_div', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_div', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_mod', AsyncCall, (SpaceName, Key, Attributes), (Status,)), Method('cond_atomic_mod', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_mod', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_and', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_atomic_and', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_atomic_and', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_and', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_and', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_or', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_atomic_or', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_atomic_or', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_atomic_or', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_or', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('atomic_xor', AsyncCall, (SpaceName, Key, Attributes), (Status,)), @@ -155,19 +155,19 @@ def __init__(self, name, form, args_in, args_out): Method('cond_atomic_max', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_atomic_max', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('string_prepend', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_string_prepend', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_string_prepend', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_string_prepend', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_string_prepend', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('string_append', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_string_append', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_string_append', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_string_append', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_string_append', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('list_lpush', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_list_lpush', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_list_lpush', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_list_lpush', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_list_lpush', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('list_rpush', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_list_rpush', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_list_rpush', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_list_rpush', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_list_rpush', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('set_add', AsyncCall, (SpaceName, Key, Attributes), (Status,)), @@ -183,11 +183,11 @@ def __init__(self, name, form, args_in, args_out): Method('cond_set_union', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_set_union', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('document_rename', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_document_rename', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_document_rename', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_document_rename', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_document_rename', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('document_unset', AsyncCall, (SpaceName, Key, Attributes), (Status,)), - Method('microtransaction_document_unset', MicrotransactionCall, (Microtransaction, Attributes), ()), + Method('uxact_document_unset', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('cond_document_unset', AsyncCall, (SpaceName, Key, Predicates, Attributes), (Status,)), Method('group_document_unset', AsyncCall, (SpaceName, Predicates, Attributes), (Status, Count)), Method('map_add', AsyncCall, (SpaceName, Key, MapAttributes), (Status,)), diff --git a/bindings/c.py b/bindings/c.py index 470cdc2a..d009bd7c 100644 --- a/bindings/c.py +++ b/bindings/c.py @@ -144,7 +144,7 @@ def generate_client_c_wrapper(x): func += ', '.join([p + '* ' + n for p, n in arg.args]) func += ')\n{\n' - if x.name.startswith('microtransaction_'): + if x.name.startswith('uxact_'): func += ' hyperdex::microtransaction* tx = reinterpret_cast(microtransaction);\n' func += ' hyperdex_client_returncode *status = tx->status;\n' func += ' C_WRAP_EXCEPT(\n' @@ -158,8 +158,8 @@ def generate_client_c_wrapper(x): else: args += ('NULL', '0') func += ' const hyperdex_client_keyop_info* opinfo;\n' - func += ' opinfo = hyperdex_client_keyop_info_lookup(XSTR({0}), strlen(XSTR({0})));\n'.format(x.name.replace('microtransaction_', '')) - func += ' return cl->microtransaction_add_funcall(' + func += ' opinfo = hyperdex_client_keyop_info_lookup(XSTR({0}), strlen(XSTR({0})));\n'.format(x.name.replace('uxact_', '')) + func += ' return cl->uxact_add_funcall(' func += ', '.join([a for a in args]) func += ');\n' func += ' );\n' @@ -408,12 +408,12 @@ def generate_admin_doc(): const char** macaroons, size_t macaroons_sz); struct hyperdex_client_microtransaction* -hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, +hyperdex_client_uxact_init(struct hyperdex_client* _cl, const char* space, enum hyperdex_client_returncode *status); int64_t -hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, +hyperdex_client_uxact_commit(struct hyperdex_client* _cl, struct hyperdex_client_microtransaction *transaction, const char* key, size_t key_sz); @@ -700,20 +700,20 @@ def generate_admin_doc(): } HYPERDEX_API struct hyperdex_client_microtransaction* -hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, +hyperdex_client_uxact_init(struct hyperdex_client* _cl, const char* space, enum hyperdex_client_returncode *status) { SIGNAL_PROTECT_ERR(NULL); hyperdex::client *cl = reinterpret_cast(_cl); - hyperdex::microtransaction *tx = cl->microtransaction_init(space, status); + hyperdex::microtransaction *tx = cl->uxact_init(space, status); return reinterpret_cast(tx); } HYPERDEX_API int64_t -hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, +hyperdex_client_uxact_commit(struct hyperdex_client* _cl, struct hyperdex_client_microtransaction *transaction, const char* key, size_t key_sz) { @@ -721,7 +721,7 @@ def generate_admin_doc(): hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( - return cl->microtransaction_commit(tx, key, key_sz); + return cl->uxact_commit(tx, key, key_sz); ); } diff --git a/bindings/python.py b/bindings/python.py index 11116898..96b24b9a 100644 --- a/bindings/python.py +++ b/bindings/python.py @@ -175,7 +175,7 @@ def generate_microtransaction_method(x, lib): if not (x.form is bindings.MicrotransactionCall): return '' - py_name = name(x).replace('microtransaction_', '') + py_name = name(x).replace('uxact_', '') typed_args = ', '.join([(PYTYPEOF(arg) + ' ' + arg_name(arg)).strip() for arg in x.args_in]) @@ -186,7 +186,7 @@ def generate_microtransaction_method(x, lib): meth += ' cdef size_t in_attrs_sz\n' meth += ' self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz)\n' meth += ' res = hyperdex_{1}_{0}(self.client.client, self.transaction, in_attrs, in_attrs_sz)\n'.format(x.name, lib) - meth += ' if res < 0:' + meth += ' if res < 0:\n' meth += ' raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client))\n' meth += ' return True' return indent(meth)[:-1] diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index 17ea8eeb..f2b9ee66 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -162,8 +162,8 @@ cdef extern from "hyperdex/client.h": HYPERDEX_CLIENT_GARBAGE = 8575 hyperdex_client* hyperdex_client_create(char* coordinator, uint16_t port) - hyperdex_client_microtransaction* hyperdex_client_microtransaction_init(hyperdex_client* _cl, const char* space, hyperdex_client_returncode *status) - int64_t hyperdex_client_microtransaction_commit(hyperdex_client* _cl, hyperdex_client_microtransaction *utx, const char* key, size_t key_sz) + hyperdex_client_microtransaction* hyperdex_client_uxact_init(hyperdex_client* _cl, const char* space, hyperdex_client_returncode *status) + int64_t hyperdex_client_uxact_commit(hyperdex_client* _cl, hyperdex_client_microtransaction *utx, const char* key, size_t key_sz) void hyperdex_client_destroy(hyperdex_client* client) int64_t hyperdex_client_loop(hyperdex_client* client, int timeout, hyperdex_client_returncode* status) void hyperdex_client_destroy_attrs(hyperdex_client_attribute* attrs, size_t attrs_sz) @@ -176,7 +176,7 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_get(hyperdex_client* client, const char* space, const char* key, size_t key_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_get_partial(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_put(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_put(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_put(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_put(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_put_if_not_exist(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) @@ -184,30 +184,30 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_cond_del(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_del(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_add(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_atomic_add(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_atomic_add(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_add(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_add(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_sub(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_atomic_sub(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_atomic_sub(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_sub(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_sub(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_mul(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_atomic_mul(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_atomic_mul(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_mul(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_mul(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_div(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_atomic_div(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_atomic_div(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_div(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_div(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_mod(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_cond_atomic_mod(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_mod(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_and(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_atomic_and(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_atomic_and(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_and(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_and(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_or(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_atomic_or(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_atomic_or(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_atomic_or(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_or(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_atomic_xor(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) @@ -220,19 +220,19 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_cond_atomic_max(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_atomic_max(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_string_prepend(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_string_prepend(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_string_prepend(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_string_prepend(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_string_prepend(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_string_append(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_string_append(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_string_append(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_string_append(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_string_append(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_list_lpush(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_list_lpush(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_list_lpush(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_list_lpush(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_list_lpush(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_list_rpush(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_list_rpush(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_list_rpush(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_list_rpush(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_list_rpush(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_set_add(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) @@ -248,11 +248,11 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_cond_set_union(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_set_union(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_document_rename(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_document_rename(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_document_rename(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_document_rename(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_document_rename(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_document_unset(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) - int64_t hyperdex_client_microtransaction_document_unset(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) + int64_t hyperdex_client_uxact_document_unset(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_cond_document_unset(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_document_unset(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_attribute* attrs, size_t attrs_sz, hyperdex_client_returncode* status, uint64_t* count) int64_t hyperdex_client_map_add(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, hyperdex_client_returncode* status) @@ -1186,7 +1186,7 @@ cdef class Microtransaction: self.client = c self.deferred = Deferred(self.client) self.client.convert_spacename(self.deferred.arena, spacename, &in_space); - self.transaction = hyperdex_client_microtransaction_init(self.client.client, in_space, &self.deferred.status) + self.transaction = hyperdex_client_uxact_init(self.client.client, in_space, &self.deferred.status) # Begin Automatically Generated UTX Methods @@ -1196,8 +1196,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_put(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_put(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1210,8 +1211,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_atomic_add(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_atomic_add(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1220,8 +1222,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_atomic_sub(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_atomic_sub(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1230,8 +1233,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_atomic_mul(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_atomic_mul(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1240,8 +1244,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_atomic_div(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_atomic_div(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1253,8 +1258,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_atomic_and(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_atomic_and(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1263,8 +1269,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_atomic_or(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_atomic_or(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1282,8 +1289,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_string_prepend(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_string_prepend(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1292,8 +1300,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_string_append(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_string_append(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1302,8 +1311,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_list_lpush(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_list_lpush(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1312,8 +1322,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_list_rpush(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_list_rpush(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1334,8 +1345,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_document_rename(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_document_rename(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1344,8 +1356,9 @@ cdef class Microtransaction: cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) - res = hyperdex_client_microtransaction_document_unset(self.client.client, self.transaction, in_attrs, in_attrs_sz) - if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + res = hyperdex_client_uxact_document_unset(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True @@ -1401,7 +1414,7 @@ cdef class Microtransaction: cdef size_t in_key_sz self.client.convert_key(self.deferred.arena, key, &in_key, &in_key_sz) - self.deferred.reqid = hyperdex_client_microtransaction_commit(self.client.client, self.transaction, in_key, in_key_sz) + self.deferred.reqid = hyperdex_client_uxact_commit(self.client.client, self.transaction, in_key, in_key_sz) self.client.clear_auth_context() if self.deferred.reqid < 0: diff --git a/client/c.cc b/client/c.cc index ad6c2c85..992b1ff4 100644 --- a/client/c.cc +++ b/client/c.cc @@ -268,20 +268,20 @@ hyperdex_client_set_auth_context(struct hyperdex_client* _cl, } HYPERDEX_API struct hyperdex_client_microtransaction* -hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, +hyperdex_client_uxact_init(struct hyperdex_client* _cl, const char* space, enum hyperdex_client_returncode *status) { SIGNAL_PROTECT_ERR(NULL); hyperdex::client *cl = reinterpret_cast(_cl); - hyperdex::microtransaction *tx = cl->microtransaction_init(space, status); + hyperdex::microtransaction *tx = cl->uxact_init(space, status); return reinterpret_cast(tx); } HYPERDEX_API int64_t -hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, +hyperdex_client_uxact_commit(struct hyperdex_client* _cl, struct hyperdex_client_microtransaction *transaction, const char* key, size_t key_sz) { @@ -289,7 +289,7 @@ hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( - return cl->microtransaction_commit(tx, key, key_sz); + return cl->uxact_commit(tx, key, key_sz); ); } @@ -333,16 +333,16 @@ hyperdex_client_put(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_put(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_put(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(put), strlen(XSTR(put))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -446,16 +446,16 @@ hyperdex_client_atomic_add(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_atomic_add(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_atomic_add(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_add), strlen(XSTR(atomic_add))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -504,16 +504,16 @@ hyperdex_client_atomic_sub(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_atomic_sub(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_atomic_sub(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_sub), strlen(XSTR(atomic_sub))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -562,16 +562,16 @@ hyperdex_client_atomic_mul(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_atomic_mul(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_atomic_mul(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_mul), strlen(XSTR(atomic_mul))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -620,16 +620,16 @@ hyperdex_client_atomic_div(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_atomic_div(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_atomic_div(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_div), strlen(XSTR(atomic_div))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -722,16 +722,16 @@ hyperdex_client_atomic_and(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_atomic_and(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_atomic_and(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_and), strlen(XSTR(atomic_and))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -780,16 +780,16 @@ hyperdex_client_atomic_or(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_atomic_or(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_atomic_or(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_or), strlen(XSTR(atomic_or))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -970,16 +970,16 @@ hyperdex_client_string_prepend(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_string_prepend(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_string_prepend(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(string_prepend), strlen(XSTR(string_prepend))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -1028,16 +1028,16 @@ hyperdex_client_string_append(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_string_append(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_string_append(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(string_append), strlen(XSTR(string_append))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -1086,16 +1086,16 @@ hyperdex_client_list_lpush(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_list_lpush(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_list_lpush(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(list_lpush), strlen(XSTR(list_lpush))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -1144,16 +1144,16 @@ hyperdex_client_list_rpush(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_list_rpush(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_list_rpush(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(list_rpush), strlen(XSTR(list_rpush))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -1378,16 +1378,16 @@ hyperdex_client_document_rename(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_document_rename(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_document_rename(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(document_rename), strlen(XSTR(document_rename))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } @@ -1436,16 +1436,16 @@ hyperdex_client_document_unset(struct hyperdex_client* _cl, } HYPERDEX_API int64_t -hyperdex_client_microtransaction_document_unset(struct hyperdex_client* _cl, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +hyperdex_client_uxact_document_unset(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) { hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); hyperdex_client_returncode *status = tx->status; C_WRAP_EXCEPT( const hyperdex_client_keyop_info* opinfo; opinfo = hyperdex_client_keyop_info_lookup(XSTR(document_unset), strlen(XSTR(document_unset))); - return cl->microtransaction_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); ); } diff --git a/client/client.cc b/client/client.cc index ea36ef95..d7911c42 100644 --- a/client/client.cc +++ b/client/client.cc @@ -1242,7 +1242,7 @@ client :: handle_disruption(const server_id& si) m_busybee.drop(si.get()); } -microtransaction* client::microtransaction_init(const char* space, hyperdex_client_returncode *status) +microtransaction* client::uxact_init(const char* space, hyperdex_client_returncode *status) { if (!maintain_coord_connection(status)) { @@ -1260,7 +1260,7 @@ microtransaction* client::microtransaction_init(const char* space, hyperdex_clie return new microtransaction(space, *sc, status); } -int64_t client::microtransaction_add_funcall(microtransaction *transaction, +int64_t client::uxact_add_funcall(microtransaction *transaction, const hyperdex_client_keyop_info* opinfo, const hyperdex_client_attribute* attrs, size_t attrs_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz) @@ -1286,7 +1286,7 @@ int64_t client::microtransaction_add_funcall(microtransaction *transaction, return 0; } -int64_t client::microtransaction_commit(microtransaction *transaction, +int64_t client::uxact_commit(microtransaction *transaction, const char* _key, size_t _key_sz) { hyperdex_client_returncode *status = transaction->status; diff --git a/client/client.h b/client/client.h index f967409e..38d5e46c 100644 --- a/client/client.h +++ b/client/client.h @@ -131,17 +131,17 @@ class client // Initiate a microtransaction // Status and transaction object must remain valid until the operation has completed - microtransaction *microtransaction_init(const char* space, + microtransaction *uxact_init(const char* space, hyperdex_client_returncode *status); // Add a new funcall to the microstransaction - int64_t microtransaction_add_funcall(microtransaction *transaction, + int64_t uxact_add_funcall(microtransaction *transaction, const hyperdex_client_keyop_info* opinfo, const hyperdex_client_attribute* attrs, size_t attrs_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz); // Issue a microtransaction to a specific key using specific checks - int64_t microtransaction_commit(microtransaction *transaction, + int64_t uxact_commit(microtransaction *transaction, const char* key, size_t key_sz); // looping/polling diff --git a/client/keyop_info.gperf b/client/keyop_info.gperf index 2bf4d459..e959bcc0 100644 --- a/client/keyop_info.gperf +++ b/client/keyop_info.gperf @@ -21,6 +21,7 @@ extern "C" %} %% put, false, false, false, hyperdex::FUNC_SET +uxact_put, false, false, false, hyperdex::FUNC_SET cond_put, false, true, false, hyperdex::FUNC_SET group_put, false, true, false, hyperdex::FUNC_SET put_if_not_exist, false, false, true, hyperdex::FUNC_SET @@ -28,82 +29,114 @@ del, true, true, false, hyperdex::FUNC_FAIL cond_del, true, true, false, hyperdex::FUNC_FAIL group_del, true, true, false, hyperdex::FUNC_FAIL atomic_add, false, true, false, hyperdex::FUNC_NUM_ADD +uxact_atomic_add, false, true, false, hyperdex::FUNC_NUM_ADD cond_atomic_add, false, true, false, hyperdex::FUNC_NUM_ADD group_atomic_add, false, true, false, hyperdex::FUNC_NUM_ADD atomic_sub, false, true, false, hyperdex::FUNC_NUM_SUB +uxact_atomic_sub, false, true, false, hyperdex::FUNC_NUM_SUB cond_atomic_sub, false, true, false, hyperdex::FUNC_NUM_SUB group_atomic_sub, false, true, false, hyperdex::FUNC_NUM_SUB atomic_mul, false, true, false, hyperdex::FUNC_NUM_MUL +uxact_atomic_mul, false, true, false, hyperdex::FUNC_NUM_MUL cond_atomic_mul, false, true, false, hyperdex::FUNC_NUM_MUL group_atomic_mul, false, true, false, hyperdex::FUNC_NUM_MUL atomic_div, false, true, false, hyperdex::FUNC_NUM_DIV +uxact_atomic_div, false, true, false, hyperdex::FUNC_NUM_DIV cond_atomic_div, false, true, false, hyperdex::FUNC_NUM_DIV group_atomic_div, false, true, false, hyperdex::FUNC_NUM_DIV atomic_mod, false, true, false, hyperdex::FUNC_NUM_MOD +uxact_atomic_mod, false, true, false, hyperdex::FUNC_NUM_MOD cond_atomic_mod, false, true, false, hyperdex::FUNC_NUM_MOD group_atomic_mod, false, true, false, hyperdex::FUNC_NUM_MOD atomic_and, false, true, false, hyperdex::FUNC_NUM_AND +uxact_atomic_and, false, true, false, hyperdex::FUNC_NUM_AND cond_atomic_and, false, true, false, hyperdex::FUNC_NUM_AND group_atomic_and, false, true, false, hyperdex::FUNC_NUM_AND atomic_or, false, true, false, hyperdex::FUNC_NUM_OR +uxact_atomic_or, false, true, false, hyperdex::FUNC_NUM_OR cond_atomic_or, false, true, false, hyperdex::FUNC_NUM_OR group_atomic_or, false, true, false, hyperdex::FUNC_NUM_OR atomic_xor, false, true, false, hyperdex::FUNC_NUM_XOR +uxact_atomic_xor, false, true, false, hyperdex::FUNC_NUM_XOR cond_atomic_xor, false, true, false, hyperdex::FUNC_NUM_XOR group_atomic_xor, false, true, false, hyperdex::FUNC_NUM_XOR atomic_max, false, true, false, hyperdex::FUNC_NUM_MAX +uxact_atomic_max, false, true, false, hyperdex::FUNC_NUM_MAX cond_atomic_max, false, true, false, hyperdex::FUNC_NUM_MAX group_atomic_max, false, true, false, hyperdex::FUNC_NUM_MAX atomic_min, false, true, false, hyperdex::FUNC_NUM_MIN +uxact_atomic_min, false, true, false, hyperdex::FUNC_NUM_MIN cond_atomic_min, false, true, false, hyperdex::FUNC_NUM_MIN group_atomic_min, false, true, false, hyperdex::FUNC_NUM_MIN string_prepend, false, true, false, hyperdex::FUNC_STRING_PREPEND +uxact_string_prepend, false, true, false, hyperdex::FUNC_STRING_PREPEND cond_string_prepend, false, true, false, hyperdex::FUNC_STRING_PREPEND group_string_prepend, false, true, false, hyperdex::FUNC_STRING_PREPEND string_append, false, true, false, hyperdex::FUNC_STRING_APPEND +uxact_string_append, false, true, false, hyperdex::FUNC_STRING_APPEND cond_string_append, false, true, false, hyperdex::FUNC_STRING_APPEND group_string_append, false, true, false, hyperdex::FUNC_STRING_APPEND list_lpush, false, true, false, hyperdex::FUNC_LIST_LPUSH +uxact_list_lpush, false, true, false, hyperdex::FUNC_LIST_LPUSH cond_list_lpush, false, true, false, hyperdex::FUNC_LIST_LPUSH group_list_lpush, false, true, false, hyperdex::FUNC_LIST_LPUSH list_rpush, false, true, false, hyperdex::FUNC_LIST_RPUSH +uxact_list_rpush, false, true, false, hyperdex::FUNC_LIST_RPUSH cond_list_rpush, false, true, false, hyperdex::FUNC_LIST_RPUSH group_list_rpush, false, true, false, hyperdex::FUNC_LIST_RPUSH set_add, false, true, false, hyperdex::FUNC_SET_ADD +uxact_set_add, false, true, false, hyperdex::FUNC_SET_ADD cond_set_add, false, true, false, hyperdex::FUNC_SET_ADD set_remove, false, true, false, hyperdex::FUNC_SET_REMOVE +uxact_set_remove, false, true, false, hyperdex::FUNC_SET_REMOVE cond_set_remove, false, true, false, hyperdex::FUNC_SET_REMOVE set_intersect, false, true, false, hyperdex::FUNC_SET_INTERSECT +uxact_set_intersect, false, true, false, hyperdex::FUNC_SET_INTERSECT cond_set_intersect, false, true, false, hyperdex::FUNC_SET_INTERSECT set_union, false, true, false, hyperdex::FUNC_SET_UNION +uxact_set_union, false, true, false, hyperdex::FUNC_SET_UNION cond_set_union, false, true, false, hyperdex::FUNC_SET_UNION map_add, false, true, false, hyperdex::FUNC_MAP_ADD +uxact_map_add, false, true, false, hyperdex::FUNC_MAP_ADD cond_map_add, false, true, false, hyperdex::FUNC_MAP_ADD map_remove, false, true, false, hyperdex::FUNC_MAP_REMOVE +uxact_map_remove, false, true, false, hyperdex::FUNC_MAP_REMOVE cond_map_remove, false, true, false, hyperdex::FUNC_MAP_REMOVE map_atomic_add, false, true, false, hyperdex::FUNC_NUM_ADD +uxact_map_atomic_add, false, true, false, hyperdex::FUNC_NUM_ADD document_rename, false, true, false, hyperdex::FUNC_DOC_RENAME +uxact_document_rename, false, true, false, hyperdex::FUNC_DOC_RENAME group_document_rename, false, true, false, hyperdex::FUNC_DOC_RENAME document_unset, false, true, false, hyperdex::FUNC_DOC_UNSET +uxact_document_unset, false, true, false, hyperdex::FUNC_DOC_UNSET group_document_unset, false, true, false, hyperdex::FUNC_DOC_UNSET cond_map_atomic_add, false, true, false, hyperdex::FUNC_NUM_ADD map_atomic_sub, false, true, false, hyperdex::FUNC_NUM_SUB +uxact_map_atomic_sub, false, true, false, hyperdex::FUNC_NUM_SUB cond_map_atomic_sub, false, true, false, hyperdex::FUNC_NUM_SUB map_atomic_mul, false, true, false, hyperdex::FUNC_NUM_MUL +uxact_map_atomic_mul, false, true, false, hyperdex::FUNC_NUM_MUL cond_map_atomic_mul, false, true, false, hyperdex::FUNC_NUM_MUL map_atomic_div, false, true, false, hyperdex::FUNC_NUM_DIV +uxact_map_atomic_div, false, true, false, hyperdex::FUNC_NUM_DIV cond_map_atomic_div, false, true, false, hyperdex::FUNC_NUM_DIV map_atomic_mod, false, true, false, hyperdex::FUNC_NUM_MOD +uxact_map_atomic_mod, false, true, false, hyperdex::FUNC_NUM_MOD cond_map_atomic_mod, false, true, false, hyperdex::FUNC_NUM_MOD map_atomic_and, false, true, false, hyperdex::FUNC_NUM_AND +uxact_map_atomic_and, false, true, false, hyperdex::FUNC_NUM_AND cond_map_atomic_and, false, true, false, hyperdex::FUNC_NUM_AND map_atomic_or, false, true, false, hyperdex::FUNC_NUM_OR +uxact_map_atomic_or, false, true, false, hyperdex::FUNC_NUM_OR cond_map_atomic_or, false, true, false, hyperdex::FUNC_NUM_OR map_atomic_xor, false, true, false, hyperdex::FUNC_NUM_XOR +uxact_map_atomic_xor, false, true, false, hyperdex::FUNC_NUM_XOR cond_map_atomic_xor, false, true, false, hyperdex::FUNC_NUM_XOR map_string_prepend, false, true, false, hyperdex::FUNC_STRING_PREPEND +uxact_map_string_prepend,false, true, false, hyperdex::FUNC_STRING_PREPEND cond_map_string_prepend, false, true, false, hyperdex::FUNC_STRING_PREPEND map_string_append, false, true, false, hyperdex::FUNC_STRING_APPEND +uxact_map_string_append, false, true, false, hyperdex::FUNC_STRING_APPEND cond_map_string_append, false, true, false, hyperdex::FUNC_STRING_APPEND %% } diff --git a/doc/c/client/ops.tex b/doc/c/client/ops.tex index b7cc735e..c458803b 100644 --- a/doc/c/client/ops.tex +++ b/doc/c/client/ops.tex @@ -131,16 +131,16 @@ \subsection{\code{put}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_put %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_put %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_put}} -\label{api:c:microtransaction_put} -\index{microtransaction\_put!C API} -\input{\topdir/client/fragments/microtransaction_put} +\subsection{\code{uxact\_put}} +\label{api:c:uxact_put} +\index{uxact\_put!C API} +\input{\topdir/client/fragments/uxact_put} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_put(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_put(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -398,16 +398,16 @@ \subsection{\code{atomic\_add}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_add %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_add %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_atomic\_add}} -\label{api:c:microtransaction_atomic_add} -\index{microtransaction\_atomic\_add!C API} -\input{\topdir/client/fragments/microtransaction_atomic_add} +\subsection{\code{uxact\_atomic\_add}} +\label{api:c:uxact_atomic_add} +\index{uxact\_atomic\_add!C API} +\input{\topdir/client/fragments/uxact_atomic_add} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_atomic_add(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_atomic_add(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -532,16 +532,16 @@ \subsection{\code{atomic\_sub}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_sub %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_sub %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_atomic\_sub}} -\label{api:c:microtransaction_atomic_sub} -\index{microtransaction\_atomic\_sub!C API} -\input{\topdir/client/fragments/microtransaction_atomic_sub} +\subsection{\code{uxact\_atomic\_sub}} +\label{api:c:uxact_atomic_sub} +\index{uxact\_atomic\_sub!C API} +\input{\topdir/client/fragments/uxact_atomic_sub} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_atomic_sub(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_atomic_sub(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -666,16 +666,16 @@ \subsection{\code{atomic\_mul}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_mul %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_mul %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_atomic\_mul}} -\label{api:c:microtransaction_atomic_mul} -\index{microtransaction\_atomic\_mul!C API} -\input{\topdir/client/fragments/microtransaction_atomic_mul} +\subsection{\code{uxact\_atomic\_mul}} +\label{api:c:uxact_atomic_mul} +\index{uxact\_atomic\_mul!C API} +\input{\topdir/client/fragments/uxact_atomic_mul} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_atomic_mul(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_atomic_mul(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -800,16 +800,16 @@ \subsection{\code{atomic\_div}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_div %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_div %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_atomic\_div}} -\label{api:c:microtransaction_atomic_div} -\index{microtransaction\_atomic\_div!C API} -\input{\topdir/client/fragments/microtransaction_atomic_div} +\subsection{\code{uxact\_atomic\_div}} +\label{api:c:uxact_atomic_div} +\index{uxact\_atomic\_div!C API} +\input{\topdir/client/fragments/uxact_atomic_div} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_atomic_div(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_atomic_div(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -1042,16 +1042,16 @@ \subsection{\code{atomic\_and}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_and %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_and %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_atomic\_and}} -\label{api:c:microtransaction_atomic_and} -\index{microtransaction\_atomic\_and!C API} -\input{\topdir/client/fragments/microtransaction_atomic_and} +\subsection{\code{uxact\_atomic\_and}} +\label{api:c:uxact_atomic_and} +\index{uxact\_atomic\_and!C API} +\input{\topdir/client/fragments/uxact_atomic_and} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_atomic_and(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_atomic_and(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -1176,16 +1176,16 @@ \subsection{\code{atomic\_or}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_or %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_or %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_atomic\_or}} -\label{api:c:microtransaction_atomic_or} -\index{microtransaction\_atomic\_or!C API} -\input{\topdir/client/fragments/microtransaction_atomic_or} +\subsection{\code{uxact\_atomic\_or}} +\label{api:c:uxact_atomic_or} +\index{uxact\_atomic\_or!C API} +\input{\topdir/client/fragments/uxact_atomic_or} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_atomic_or(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_atomic_or(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -1634,16 +1634,16 @@ \subsection{\code{string\_prepend}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_string_prepend %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_string_prepend %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_string\_prepend}} -\label{api:c:microtransaction_string_prepend} -\index{microtransaction\_string\_prepend!C API} -\input{\topdir/client/fragments/microtransaction_string_prepend} +\subsection{\code{uxact\_string\_prepend}} +\label{api:c:uxact_string_prepend} +\index{uxact\_string\_prepend!C API} +\input{\topdir/client/fragments/uxact_string_prepend} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_string_prepend(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_string_prepend(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -1768,16 +1768,16 @@ \subsection{\code{string\_append}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_string_append %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_string_append %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_string\_append}} -\label{api:c:microtransaction_string_append} -\index{microtransaction\_string\_append!C API} -\input{\topdir/client/fragments/microtransaction_string_append} +\subsection{\code{uxact\_string\_append}} +\label{api:c:uxact_string_append} +\index{uxact\_string\_append!C API} +\input{\topdir/client/fragments/uxact_string_append} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_string_append(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_string_append(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -1902,16 +1902,16 @@ \subsection{\code{list\_lpush}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_list_lpush %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_list_lpush %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_list\_lpush}} -\label{api:c:microtransaction_list_lpush} -\index{microtransaction\_list\_lpush!C API} -\input{\topdir/client/fragments/microtransaction_list_lpush} +\subsection{\code{uxact\_list\_lpush}} +\label{api:c:uxact_list_lpush} +\index{uxact\_list\_lpush!C API} +\input{\topdir/client/fragments/uxact_list_lpush} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_list_lpush(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_list_lpush(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -2036,16 +2036,16 @@ \subsection{\code{list\_rpush}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_list_rpush %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_list_rpush %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_list\_rpush}} -\label{api:c:microtransaction_list_rpush} -\index{microtransaction\_list\_rpush!C API} -\input{\topdir/client/fragments/microtransaction_list_rpush} +\subsection{\code{uxact\_list\_rpush}} +\label{api:c:uxact_list_rpush} +\index{uxact\_list\_rpush!C API} +\input{\topdir/client/fragments/uxact_list_rpush} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_list_rpush(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_list_rpush(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -2602,16 +2602,16 @@ \subsection{\code{document\_rename}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_document_rename %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_document_rename %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_document\_rename}} -\label{api:c:microtransaction_document_rename} -\index{microtransaction\_document\_rename!C API} -\input{\topdir/client/fragments/microtransaction_document_rename} +\subsection{\code{uxact\_document\_rename}} +\label{api:c:uxact_document_rename} +\index{uxact\_document\_rename!C API} +\input{\topdir/client/fragments/uxact_document_rename} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_document_rename(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_document_rename(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} @@ -2736,16 +2736,16 @@ \subsection{\code{document\_unset}} \input{\topdir/c/client/fragments/out_asynccall_status} \end{itemize} -%%%%%%%%%%%%%%%%%%%% microtransaction_document_unset %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_document_unset %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsection{\code{microtransaction\_document\_unset}} -\label{api:c:microtransaction_document_unset} -\index{microtransaction\_document\_unset!C API} -\input{\topdir/client/fragments/microtransaction_document_unset} +\subsection{\code{uxact\_document\_unset}} +\label{api:c:uxact_document_unset} +\index{uxact\_document\_unset!C API} +\input{\topdir/client/fragments/uxact_document_unset} \paragraph{Definition:} \begin{ccode} -int64_t hyperdex_client_microtransaction_document_unset(struct hyperdex_client* client, +int64_t hyperdex_client_uxact_document_unset(struct hyperdex_client* client, struct hyperdex_client_microtransaction* microtransaction, const struct hyperdex_client_attribute* attrs, size_t attrs_sz); \end{ccode} diff --git a/doc/python/client/ops.tex b/doc/python/client/ops.tex index 1d35a9a9..f0de562f 100644 --- a/doc/python/client/ops.tex +++ b/doc/python/client/ops.tex @@ -175,16 +175,16 @@ \subsubsection{\code{async\_put}} \paragraph{See also:} This is the asynchronous form of \code{put}. -%%%%%%%%%%%%%%%%%%%% microtransaction_put %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_put %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_put}} -\label{api:python:microtransaction_put} -\index{microtransaction\_put!Python API} -\input{\topdir/client/fragments/microtransaction_put} +\subsubsection{\code{uxact\_put}} +\label{api:python:uxact_put} +\index{uxact\_put!Python API} +\input{\topdir/client/fragments/uxact_put} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_put(self, microtransaction, attributes) +def uxact_put(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -551,16 +551,16 @@ \subsubsection{\code{async\_atomic\_add}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_add}. -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_add %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_add %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_atomic\_add}} -\label{api:python:microtransaction_atomic_add} -\index{microtransaction\_atomic\_add!Python API} -\input{\topdir/client/fragments/microtransaction_atomic_add} +\subsubsection{\code{uxact\_atomic\_add}} +\label{api:python:uxact_atomic_add} +\index{uxact\_atomic\_add!Python API} +\input{\topdir/client/fragments/uxact_atomic_add} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_atomic_add(self, microtransaction, attributes) +def uxact_atomic_add(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -731,16 +731,16 @@ \subsubsection{\code{async\_atomic\_sub}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_sub}. -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_sub %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_sub %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_atomic\_sub}} -\label{api:python:microtransaction_atomic_sub} -\index{microtransaction\_atomic\_sub!Python API} -\input{\topdir/client/fragments/microtransaction_atomic_sub} +\subsubsection{\code{uxact\_atomic\_sub}} +\label{api:python:uxact_atomic_sub} +\index{uxact\_atomic\_sub!Python API} +\input{\topdir/client/fragments/uxact_atomic_sub} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_atomic_sub(self, microtransaction, attributes) +def uxact_atomic_sub(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -911,16 +911,16 @@ \subsubsection{\code{async\_atomic\_mul}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_mul}. -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_mul %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_mul %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_atomic\_mul}} -\label{api:python:microtransaction_atomic_mul} -\index{microtransaction\_atomic\_mul!Python API} -\input{\topdir/client/fragments/microtransaction_atomic_mul} +\subsubsection{\code{uxact\_atomic\_mul}} +\label{api:python:uxact_atomic_mul} +\index{uxact\_atomic\_mul!Python API} +\input{\topdir/client/fragments/uxact_atomic_mul} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_atomic_mul(self, microtransaction, attributes) +def uxact_atomic_mul(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -1091,16 +1091,16 @@ \subsubsection{\code{async\_atomic\_div}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_div}. -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_div %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_div %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_atomic\_div}} -\label{api:python:microtransaction_atomic_div} -\index{microtransaction\_atomic\_div!Python API} -\input{\topdir/client/fragments/microtransaction_atomic_div} +\subsubsection{\code{uxact\_atomic\_div}} +\label{api:python:uxact_atomic_div} +\index{uxact\_atomic\_div!Python API} +\input{\topdir/client/fragments/uxact_atomic_div} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_atomic_div(self, microtransaction, attributes) +def uxact_atomic_div(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -1428,16 +1428,16 @@ \subsubsection{\code{async\_atomic\_and}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_and}. -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_and %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_and %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_atomic\_and}} -\label{api:python:microtransaction_atomic_and} -\index{microtransaction\_atomic\_and!Python API} -\input{\topdir/client/fragments/microtransaction_atomic_and} +\subsubsection{\code{uxact\_atomic\_and}} +\label{api:python:uxact_atomic_and} +\index{uxact\_atomic\_and!Python API} +\input{\topdir/client/fragments/uxact_atomic_and} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_atomic_and(self, microtransaction, attributes) +def uxact_atomic_and(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -1608,16 +1608,16 @@ \subsubsection{\code{async\_atomic\_or}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_or}. -%%%%%%%%%%%%%%%%%%%% microtransaction_atomic_or %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_atomic_or %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_atomic\_or}} -\label{api:python:microtransaction_atomic_or} -\index{microtransaction\_atomic\_or!Python API} -\input{\topdir/client/fragments/microtransaction_atomic_or} +\subsubsection{\code{uxact\_atomic\_or}} +\label{api:python:uxact_atomic_or} +\index{uxact\_atomic\_or!Python API} +\input{\topdir/client/fragments/uxact_atomic_or} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_atomic_or(self, microtransaction, attributes) +def uxact_atomic_or(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -2259,16 +2259,16 @@ \subsubsection{\code{async\_string\_prepend}} \paragraph{See also:} This is the asynchronous form of \code{string\_prepend}. -%%%%%%%%%%%%%%%%%%%% microtransaction_string_prepend %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_string_prepend %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_string\_prepend}} -\label{api:python:microtransaction_string_prepend} -\index{microtransaction\_string\_prepend!Python API} -\input{\topdir/client/fragments/microtransaction_string_prepend} +\subsubsection{\code{uxact\_string\_prepend}} +\label{api:python:uxact_string_prepend} +\index{uxact\_string\_prepend!Python API} +\input{\topdir/client/fragments/uxact_string_prepend} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_string_prepend(self, microtransaction, attributes) +def uxact_string_prepend(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -2439,16 +2439,16 @@ \subsubsection{\code{async\_string\_append}} \paragraph{See also:} This is the asynchronous form of \code{string\_append}. -%%%%%%%%%%%%%%%%%%%% microtransaction_string_append %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_string_append %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_string\_append}} -\label{api:python:microtransaction_string_append} -\index{microtransaction\_string\_append!Python API} -\input{\topdir/client/fragments/microtransaction_string_append} +\subsubsection{\code{uxact\_string\_append}} +\label{api:python:uxact_string_append} +\index{uxact\_string\_append!Python API} +\input{\topdir/client/fragments/uxact_string_append} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_string_append(self, microtransaction, attributes) +def uxact_string_append(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -2619,16 +2619,16 @@ \subsubsection{\code{async\_list\_lpush}} \paragraph{See also:} This is the asynchronous form of \code{list\_lpush}. -%%%%%%%%%%%%%%%%%%%% microtransaction_list_lpush %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_list_lpush %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_list\_lpush}} -\label{api:python:microtransaction_list_lpush} -\index{microtransaction\_list\_lpush!Python API} -\input{\topdir/client/fragments/microtransaction_list_lpush} +\subsubsection{\code{uxact\_list\_lpush}} +\label{api:python:uxact_list_lpush} +\index{uxact\_list\_lpush!Python API} +\input{\topdir/client/fragments/uxact_list_lpush} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_list_lpush(self, microtransaction, attributes) +def uxact_list_lpush(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -2799,16 +2799,16 @@ \subsubsection{\code{async\_list\_rpush}} \paragraph{See also:} This is the asynchronous form of \code{list\_rpush}. -%%%%%%%%%%%%%%%%%%%% microtransaction_list_rpush %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_list_rpush %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_list\_rpush}} -\label{api:python:microtransaction_list_rpush} -\index{microtransaction\_list\_rpush!Python API} -\input{\topdir/client/fragments/microtransaction_list_rpush} +\subsubsection{\code{uxact\_list\_rpush}} +\label{api:python:uxact_list_rpush} +\index{uxact\_list\_rpush!Python API} +\input{\topdir/client/fragments/uxact_list_rpush} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_list_rpush(self, microtransaction, attributes) +def uxact_list_rpush(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -3607,16 +3607,16 @@ \subsubsection{\code{async\_document\_rename}} \paragraph{See also:} This is the asynchronous form of \code{document\_rename}. -%%%%%%%%%%%%%%%%%%%% microtransaction_document_rename %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_document_rename %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_document\_rename}} -\label{api:python:microtransaction_document_rename} -\index{microtransaction\_document\_rename!Python API} -\input{\topdir/client/fragments/microtransaction_document_rename} +\subsubsection{\code{uxact\_document\_rename}} +\label{api:python:uxact_document_rename} +\index{uxact\_document\_rename!Python API} +\input{\topdir/client/fragments/uxact_document_rename} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_document_rename(self, microtransaction, attributes) +def uxact_document_rename(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} @@ -3787,16 +3787,16 @@ \subsubsection{\code{async\_document\_unset}} \paragraph{See also:} This is the asynchronous form of \code{document\_unset}. -%%%%%%%%%%%%%%%%%%%% microtransaction_document_unset %%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%% uxact_document_unset %%%%%%%%%%%%%%%%%%%% \pagebreak -\subsubsection{\code{microtransaction\_document\_unset}} -\label{api:python:microtransaction_document_unset} -\index{microtransaction\_document\_unset!Python API} -\input{\topdir/client/fragments/microtransaction_document_unset} +\subsubsection{\code{uxact\_document\_unset}} +\label{api:python:uxact_document_unset} +\index{uxact\_document\_unset!Python API} +\input{\topdir/client/fragments/uxact_document_unset} \paragraph{Definition:} \begin{pythoncode} -def microtransaction_document_unset(self, microtransaction, attributes) +def uxact_document_unset(self, microtransaction, attributes) \end{pythoncode} \paragraph{Parameters:} diff --git a/include/hyperdex/client.h b/include/hyperdex/client.h index b04bc706..d9f14613 100644 --- a/include/hyperdex/client.h +++ b/include/hyperdex/client.h @@ -123,12 +123,12 @@ hyperdex_client_set_auth_context(struct hyperdex_client* client, const char** macaroons, size_t macaroons_sz); struct hyperdex_client_microtransaction* -hyperdex_client_microtransaction_init(struct hyperdex_client* _cl, +hyperdex_client_uxact_init(struct hyperdex_client* _cl, const char* space, enum hyperdex_client_returncode *status); int64_t -hyperdex_client_microtransaction_commit(struct hyperdex_client* _cl, +hyperdex_client_uxact_commit(struct hyperdex_client* _cl, struct hyperdex_client_microtransaction *transaction, const char* key, size_t key_sz); @@ -155,9 +155,9 @@ hyperdex_client_put(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_put(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_put(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_put(struct hyperdex_client* client, @@ -210,9 +210,9 @@ hyperdex_client_atomic_add(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_atomic_add(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_atomic_add(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_atomic_add(struct hyperdex_client* client, @@ -238,9 +238,9 @@ hyperdex_client_atomic_sub(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_atomic_sub(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_atomic_sub(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_atomic_sub(struct hyperdex_client* client, @@ -266,9 +266,9 @@ hyperdex_client_atomic_mul(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_atomic_mul(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_atomic_mul(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_atomic_mul(struct hyperdex_client* client, @@ -294,9 +294,9 @@ hyperdex_client_atomic_div(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_atomic_div(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_atomic_div(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_atomic_div(struct hyperdex_client* client, @@ -345,9 +345,9 @@ hyperdex_client_atomic_and(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_atomic_and(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_atomic_and(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_atomic_and(struct hyperdex_client* client, @@ -373,9 +373,9 @@ hyperdex_client_atomic_or(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_atomic_or(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_atomic_or(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_atomic_or(struct hyperdex_client* client, @@ -470,9 +470,9 @@ hyperdex_client_string_prepend(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_string_prepend(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_string_prepend(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_string_prepend(struct hyperdex_client* client, @@ -498,9 +498,9 @@ hyperdex_client_string_append(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_string_append(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_string_append(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_string_append(struct hyperdex_client* client, @@ -526,9 +526,9 @@ hyperdex_client_list_lpush(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_list_lpush(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_list_lpush(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_list_lpush(struct hyperdex_client* client, @@ -554,9 +554,9 @@ hyperdex_client_list_rpush(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_list_rpush(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_list_rpush(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_list_rpush(struct hyperdex_client* client, @@ -674,9 +674,9 @@ hyperdex_client_document_rename(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_document_rename(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_document_rename(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_document_rename(struct hyperdex_client* client, @@ -702,9 +702,9 @@ hyperdex_client_document_unset(struct hyperdex_client* client, enum hyperdex_client_returncode* status); int64_t -hyperdex_client_microtransaction_document_unset(struct hyperdex_client* client, - struct hyperdex_client_microtransaction* microtransaction, - const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +hyperdex_client_uxact_document_unset(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); int64_t hyperdex_client_cond_document_unset(struct hyperdex_client* client, From 395c618b59f4ccc1b4f27766e098751ba998f39c Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Thu, 19 Feb 2015 17:36:37 -0500 Subject: [PATCH 10/28] Working group_commit --- bindings/c.py | 40 ++ bindings/go/client/client.go | 98 +++- bindings/java/org/hyperdex/client/Client.java | 28 +- .../org_hyperdex_client_Client.definitions.c | 499 +++--------------- bindings/java/org_hyperdex_client_Client.h | 242 ++++----- bindings/java/org_hyperdex_client_Deferred.h | 8 +- .../java/org_hyperdex_client_GreaterEqual.h | 4 +- .../java/org_hyperdex_client_GreaterThan.h | 4 +- bindings/java/org_hyperdex_client_Iterator.h | 8 +- .../java/org_hyperdex_client_LengthEquals.h | 4 +- .../org_hyperdex_client_LengthGreaterEqual.h | 4 +- .../org_hyperdex_client_LengthLessEqual.h | 4 +- bindings/java/org_hyperdex_client_LessEqual.h | 4 +- bindings/java/org_hyperdex_client_LessThan.h | 4 +- bindings/java/org_hyperdex_client_Range.h | 4 +- bindings/java/org_hyperdex_client_Regex.h | 4 +- bindings/python/hyperdex/client.pyx | 19 + client/c.cc | 28 + client/client.cc | 101 +++- client/client.h | 15 +- doc/go/client/ops.tex | 322 ++++++++++- doc/java/client/ops.tex | 348 +++++++++++- include/hyperdex/client.h | 12 + test/python/Microtransactions.py | 14 + 24 files changed, 1187 insertions(+), 631 deletions(-) diff --git a/bindings/c.py b/bindings/c.py index d009bd7c..121442fe 100644 --- a/bindings/c.py +++ b/bindings/c.py @@ -416,6 +416,18 @@ def generate_admin_doc(): hyperdex_client_uxact_commit(struct hyperdex_client* _cl, struct hyperdex_client_microtransaction *transaction, const char* key, size_t key_sz); + +int64_t +hyperdex_client_uxact_group_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const struct hyperdex_client_attribute_check *chks, size_t chks_sz, + uint64_t *count); + +int64_t +hyperdex_client_uxact_cond_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const char* key, size_t key_sz, + const struct hyperdex_client_attribute_check *chks, size_t chks_sz); ''' @@ -725,6 +737,34 @@ def generate_admin_doc(): ); } +HYPERDEX_API int64_t +hyperdex_client_uxact_group_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const hyperdex_client_attribute_check *chks, size_t chks_sz, + uint64_t *count) +{ + hyperdex::microtransaction* tx = reinterpret_cast(transaction); + hyperdex_client_returncode *status = tx->status; + + C_WRAP_EXCEPT( + return cl->uxact_group_commit(tx, chks, chks_sz, count); + ); +} + +HYPERDEX_API int64_t +hyperdex_client_uxact_cond_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const char* key, size_t key_sz, + const hyperdex_client_attribute_check *chks, size_t chks_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(transaction); + hyperdex_client_returncode *status = tx->status; + + C_WRAP_EXCEPT( + return cl->uxact_cond_commit(tx, key, key_sz, chks, chks_sz); + ); +} + ''' CLIENT_WRAPPER_FOOT = ''' diff --git a/bindings/go/client/client.go b/bindings/go/client/client.go index 5dadedaf..5841347b 100644 --- a/bindings/go/client/client.go +++ b/bindings/go/client/client.go @@ -1882,6 +1882,13 @@ func (client *Client) Put(spacename string, key Value, attributes Attributes) (e return client.AsynccallSpacenameKeyAttributesStatus(stub_put, spacename, key, attributes) } +func stub_uxact_put(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_put(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactPut(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_put, microtransaction, attributes) +} + func stub_cond_put(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_put(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -1931,6 +1938,13 @@ func (client *Client) AtomicAdd(spacename string, key Value, attributes Attribut return client.AsynccallSpacenameKeyAttributesStatus(stub_atomic_add, spacename, key, attributes) } +func stub_uxact_atomic_add(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_atomic_add(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactAtomicAdd(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_atomic_add, microtransaction, attributes) +} + func stub_cond_atomic_add(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_atomic_add(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -1952,6 +1966,13 @@ func (client *Client) AtomicSub(spacename string, key Value, attributes Attribut return client.AsynccallSpacenameKeyAttributesStatus(stub_atomic_sub, spacename, key, attributes) } +func stub_uxact_atomic_sub(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_atomic_sub(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactAtomicSub(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_atomic_sub, microtransaction, attributes) +} + func stub_cond_atomic_sub(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_atomic_sub(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -1973,6 +1994,13 @@ func (client *Client) AtomicMul(spacename string, key Value, attributes Attribut return client.AsynccallSpacenameKeyAttributesStatus(stub_atomic_mul, spacename, key, attributes) } +func stub_uxact_atomic_mul(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_atomic_mul(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactAtomicMul(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_atomic_mul, microtransaction, attributes) +} + func stub_cond_atomic_mul(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_atomic_mul(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -1994,6 +2022,13 @@ func (client *Client) AtomicDiv(spacename string, key Value, attributes Attribut return client.AsynccallSpacenameKeyAttributesStatus(stub_atomic_div, spacename, key, attributes) } +func stub_uxact_atomic_div(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_atomic_div(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactAtomicDiv(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_atomic_div, microtransaction, attributes) +} + func stub_cond_atomic_div(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_atomic_div(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -2036,6 +2071,13 @@ func (client *Client) AtomicAnd(spacename string, key Value, attributes Attribut return client.AsynccallSpacenameKeyAttributesStatus(stub_atomic_and, spacename, key, attributes) } +func stub_uxact_atomic_and(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_atomic_and(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactAtomicAnd(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_atomic_and, microtransaction, attributes) +} + func stub_cond_atomic_and(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_atomic_and(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -2057,6 +2099,13 @@ func (client *Client) AtomicOr(spacename string, key Value, attributes Attribute return client.AsynccallSpacenameKeyAttributesStatus(stub_atomic_or, spacename, key, attributes) } +func stub_uxact_atomic_or(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_atomic_or(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactAtomicOr(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_atomic_or, microtransaction, attributes) +} + func stub_cond_atomic_or(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_atomic_or(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -2141,6 +2190,13 @@ func (client *Client) StringPrepend(spacename string, key Value, attributes Attr return client.AsynccallSpacenameKeyAttributesStatus(stub_string_prepend, spacename, key, attributes) } +func stub_uxact_string_prepend(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_string_prepend(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactStringPrepend(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_string_prepend, microtransaction, attributes) +} + func stub_cond_string_prepend(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_string_prepend(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -2162,6 +2218,13 @@ func (client *Client) StringAppend(spacename string, key Value, attributes Attri return client.AsynccallSpacenameKeyAttributesStatus(stub_string_append, spacename, key, attributes) } +func stub_uxact_string_append(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_string_append(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactStringAppend(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_string_append, microtransaction, attributes) +} + func stub_cond_string_append(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_string_append(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -2183,6 +2246,13 @@ func (client *Client) ListLpush(spacename string, key Value, attributes Attribut return client.AsynccallSpacenameKeyAttributesStatus(stub_list_lpush, spacename, key, attributes) } +func stub_uxact_list_lpush(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_list_lpush(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactListLpush(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_list_lpush, microtransaction, attributes) +} + func stub_cond_list_lpush(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_list_lpush(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -2204,6 +2274,13 @@ func (client *Client) ListRpush(spacename string, key Value, attributes Attribut return client.AsynccallSpacenameKeyAttributesStatus(stub_list_rpush, spacename, key, attributes) } +func stub_uxact_list_rpush(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_list_rpush(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactListRpush(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_list_rpush, microtransaction, attributes) +} + func stub_cond_list_rpush(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_list_rpush(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -2309,6 +2386,13 @@ func (client *Client) DocumentRename(spacename string, key Value, attributes Att return client.AsynccallSpacenameKeyAttributesStatus(stub_document_rename, spacename, key, attributes) } +func stub_uxact_document_rename(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_document_rename(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactDocumentRename(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_document_rename, microtransaction, attributes) +} + func stub_cond_document_rename(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_document_rename(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -2330,6 +2414,13 @@ func (client *Client) DocumentUnset(spacename string, key Value, attributes Attr return client.AsynccallSpacenameKeyAttributesStatus(stub_document_unset, spacename, key, attributes) } +func stub_uxact_document_unset(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { + return int64(C.hyperdex_client_uxact_document_unset(client, microtransaction, attrs, attrs_sz)) +} +func (client *Client) UxactDocumentUnset(microtransaction Microtransaction, attributes Attributes) { + return client.MicrotransactioncallMicrotransactionAttributes(stub_uxact_document_unset, microtransaction, attributes) +} + func stub_cond_document_unset(client *C.struct_hyperdex_client, space *C.char, key *C.char, key_sz C.size_t, checks *C.struct_hyperdex_client_attribute_check, checks_sz C.size_t, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t, status *C.enum_hyperdex_client_returncode) int64 { return int64(C.hyperdex_client_cond_document_unset(client, space, key, key_sz, checks, checks_sz, attrs, attrs_sz, status)) } @@ -2666,11 +2757,4 @@ func (client *Client) Count(spacename string, predicates []Predicate) (count uin return client.AsynccallSpacenamePredicatesStatusCount(stub_count, spacename, predicates) } -func stub_microtransaction_put(client *C.struct_hyperdex_client, microtransaction *C.struct_hyperdex_client_microtransaction, attrs *C.struct_hyperdex_client_attribute, attrs_sz C.size_t) int64 { - return int64(C.hyperdex_client_microtransaction_put(client, microtransaction, attrs, attrs_sz)) -} -func (client *Client) MicrotransactionPut(microtransaction Microtransaction, attributes Attributes) { - return client.MicrotransactioncallMicrotransactionAttributes(stub_microtransaction_put, microtransaction, attributes) -} - // End Automatically Generated Code diff --git a/bindings/java/org/hyperdex/client/Client.java b/bindings/java/org/hyperdex/client/Client.java index 2e26b93f..7ffec65f 100644 --- a/bindings/java/org/hyperdex/client/Client.java +++ b/bindings/java/org/hyperdex/client/Client.java @@ -126,6 +126,8 @@ public Boolean put(String spacename, Object key, Map attributes) return (Boolean) async_put(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_put(Object microtransaction, Map attributes); + public native Deferred async_cond_put(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_put(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -168,6 +170,8 @@ public Boolean atomic_add(String spacename, Object key, Map attr return (Boolean) async_atomic_add(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_atomic_add(Object microtransaction, Map attributes); + public native Deferred async_cond_atomic_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -186,6 +190,8 @@ public Boolean atomic_sub(String spacename, Object key, Map attr return (Boolean) async_atomic_sub(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_atomic_sub(Object microtransaction, Map attributes); + public native Deferred async_cond_atomic_sub(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_sub(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -204,6 +210,8 @@ public Boolean atomic_mul(String spacename, Object key, Map attr return (Boolean) async_atomic_mul(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_atomic_mul(Object microtransaction, Map attributes); + public native Deferred async_cond_atomic_mul(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_mul(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -222,6 +230,8 @@ public Boolean atomic_div(String spacename, Object key, Map attr return (Boolean) async_atomic_div(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_atomic_div(Object microtransaction, Map attributes); + public native Deferred async_cond_atomic_div(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_div(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -258,6 +268,8 @@ public Boolean atomic_and(String spacename, Object key, Map attr return (Boolean) async_atomic_and(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_atomic_and(Object microtransaction, Map attributes); + public native Deferred async_cond_atomic_and(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_and(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -276,6 +288,8 @@ public Boolean atomic_or(String spacename, Object key, Map attri return (Boolean) async_atomic_or(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_atomic_or(Object microtransaction, Map attributes); + public native Deferred async_cond_atomic_or(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_or(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -348,6 +362,8 @@ public Boolean string_prepend(String spacename, Object key, Map return (Boolean) async_string_prepend(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_string_prepend(Object microtransaction, Map attributes); + public native Deferred async_cond_string_prepend(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_string_prepend(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -366,6 +382,8 @@ public Boolean string_append(String spacename, Object key, Map a return (Boolean) async_string_append(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_string_append(Object microtransaction, Map attributes); + public native Deferred async_cond_string_append(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_string_append(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -384,6 +402,8 @@ public Boolean list_lpush(String spacename, Object key, Map attr return (Boolean) async_list_lpush(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_list_lpush(Object microtransaction, Map attributes); + public native Deferred async_cond_list_lpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_list_lpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -402,6 +422,8 @@ public Boolean list_rpush(String spacename, Object key, Map attr return (Boolean) async_list_rpush(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_list_rpush(Object microtransaction, Map attributes); + public native Deferred async_cond_list_rpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_list_rpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -492,6 +514,8 @@ public Boolean document_rename(String spacename, Object key, Map return (Boolean) async_document_rename(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_document_rename(Object microtransaction, Map attributes); + public native Deferred async_cond_document_rename(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_document_rename(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -510,6 +534,8 @@ public Boolean document_unset(String spacename, Object key, Map return (Boolean) async_document_unset(spacename, key, attributes).waitForIt(); } + public native Iterator uxact_document_unset(Object microtransaction, Map attributes); + public native Deferred async_cond_document_unset(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_document_unset(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -789,6 +815,4 @@ public Long count(String spacename, Map predicates) throws Hyper { return (Long) async_count(spacename, predicates).waitForIt(); } - - public native Iterator microtransaction_put(Object microtransaction, Map attributes); } diff --git a/bindings/java/org_hyperdex_client_Client.definitions.c b/bindings/java/org_hyperdex_client_Client.definitions.c index 91e0d866..6435012f 100644 --- a/bindings/java/org_hyperdex_client_Client.definitions.c +++ b/bindings/java/org_hyperdex_client_Client.definitions.c @@ -138,421 +138,6 @@ hyperdex_java_client_asynccall__spacename_key_attributes__status(JNIEnv* env, jo ERROR_CHECK(0); return op; } - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject attributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject attributes) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - const struct hyperdex_client_attribute* in_attrs; - size_t in_attrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_attributes(env, obj, o->arena, attributes, &in_attrs, &in_attrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, in_checks, in_checks_sz, in_attrs, in_attrs_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates_attributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject attributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates_attributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject attributes) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - const struct hyperdex_client_attribute* in_attrs; - size_t in_attrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_attributes(env, obj, o->arena, attributes, &in_attrs, &in_attrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, in_attrs, in_attrs_sz, &o->status, &o->count); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status_count; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, in_checks, in_checks_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, &o->status, &o->count); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status_count; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject mapattributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject mapattributes) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - const struct hyperdex_client_map_attribute* in_mapattrs; - size_t in_mapattrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_mapattributes(env, obj, o->arena, mapattributes, &in_mapattrs, &in_mapattrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, in_mapattrs, in_mapattrs_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject mapattributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject mapattributes) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - const struct hyperdex_client_map_attribute* in_mapattrs; - size_t in_mapattrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_mapattributes(env, obj, o->arena, mapattributes, &in_mapattrs, &in_mapattrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, in_checks, in_checks_sz, in_mapattrs, in_mapattrs_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates_mapattributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject mapattributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates_mapattributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject mapattributes) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - const struct hyperdex_client_map_attribute* in_mapattrs; - size_t in_mapattrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_mapattributes(env, obj, o->arena, mapattributes, &in_mapattrs, &in_mapattrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, in_mapattrs, in_mapattrs_sz, &o->status, &o->count); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status_count; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_iterator__spacename_predicates__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_iterator__spacename_predicates__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _iterator, _iterator_init, obj); - struct hyperdex_java_client_iterator* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_iterator_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, &o->status, &o->attrs, &o->attrs_sz); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_iterator_encode_status_attributes; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates__status_description(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const char** description), jstring spacename, jobject predicates); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates__status_description(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const char** description), jstring spacename, jobject predicates) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, &o->status, &o->description); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status_description; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_iterator__spacename_predicates_sortby_limit_maxmin__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates, jstring sortby, jint limit, jboolean maxmin); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_iterator__spacename_predicates_sortby_limit_maxmin__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates, jstring sortby, jint limit, jboolean maxmin) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - const char* in_sort_by; - uint64_t in_limit; - int in_maxmin; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _iterator, _iterator_init, obj); - struct hyperdex_java_client_iterator* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_iterator_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_sortby(env, obj, o->arena, sortby, &in_sort_by); - if (success < 0) return 0; - success = hyperdex_java_client_convert_limit(env, obj, o->arena, limit, &in_limit); - if (success < 0) return 0; - success = hyperdex_java_client_convert_maxmin(env, obj, o->arena, maxmin, &in_maxmin); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, in_sort_by, in_limit, in_maxmin, &o->status, &o->attrs, &o->attrs_sz); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_iterator_encode_status_attributes; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get(JNIEnv* env, jobject obj, jstring spacename, jobject key) { @@ -571,6 +156,12 @@ Java_org_hyperdex_client_Client_async_1put(JNIEnv* env, jobject obj, jstring spa return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_put, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1put(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_put, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1put(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -613,6 +204,12 @@ Java_org_hyperdex_client_Client_async_1atomic_1add(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_add, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1add(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_add, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -631,6 +228,12 @@ Java_org_hyperdex_client_Client_async_1atomic_1sub(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_sub, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1sub(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_sub, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -649,6 +252,12 @@ Java_org_hyperdex_client_Client_async_1atomic_1mul(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_mul, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1mul(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_mul, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -667,6 +276,12 @@ Java_org_hyperdex_client_Client_async_1atomic_1div(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_div, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1div(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_div, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -703,6 +318,12 @@ Java_org_hyperdex_client_Client_async_1atomic_1and(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_and, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1and(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_and, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -721,6 +342,12 @@ Java_org_hyperdex_client_Client_async_1atomic_1or(JNIEnv* env, jobject obj, jstr return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_or, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1or(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_or, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -793,6 +420,12 @@ Java_org_hyperdex_client_Client_async_1string_1prepend(JNIEnv* env, jobject obj, return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_string_prepend, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1string_1prepend(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_string_prepend, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -811,6 +444,12 @@ Java_org_hyperdex_client_Client_async_1string_1append(JNIEnv* env, jobject obj, return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_string_append, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1string_1append(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_string_append, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -829,6 +468,12 @@ Java_org_hyperdex_client_Client_async_1list_1lpush(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_list_lpush, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1list_1lpush(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_list_lpush, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1lpush(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -847,6 +492,12 @@ Java_org_hyperdex_client_Client_async_1list_1rpush(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_list_rpush, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1list_1rpush(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_list_rpush, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1rpush(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -937,6 +588,12 @@ Java_org_hyperdex_client_Client_async_1document_1rename(JNIEnv* env, jobject obj return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_document_rename, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1document_1rename(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_document_rename, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1rename(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -955,6 +612,12 @@ Java_org_hyperdex_client_Client_async_1document_1unset(JNIEnv* env, jobject obj, return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_document_unset, spacename, key, attributes); } +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Client_uxact_1document_1unset(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_document_unset, microtransaction, attributes); +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1unset(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -1242,9 +905,3 @@ Java_org_hyperdex_client_Client_async_1count(JNIEnv* env, jobject obj, jstring s { return hyperdex_java_client_asynccall__spacename_predicates__status_count(env, obj, hyperdex_client_count, spacename, predicates); } - -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_microtransaction_1put(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_microtransaction_put, microtransaction, attributes); -} diff --git a/bindings/java/org_hyperdex_client_Client.h b/bindings/java/org_hyperdex_client_Client.h index 94d7222f..94c30d41 100644 --- a/bindings/java/org_hyperdex_client_Client.h +++ b/bindings/java/org_hyperdex_client_Client.h @@ -12,7 +12,7 @@ extern "C" { * Method: initialize * Signature: ()V */ -JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_initialize +JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_initialize (JNIEnv *, jclass); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_initialize * Method: terminate * Signature: ()V */ -JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_terminate +JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_terminate (JNIEnv *, jclass); /* @@ -28,7 +28,7 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_terminate * Method: _create * Signature: (Ljava/lang/String;I)V */ -JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1create +JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1create (JNIEnv *, jobject, jstring, jint); /* @@ -36,7 +36,7 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1create * Method: _destroy * Signature: ()V */ -JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1destroy +JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1destroy (JNIEnv *, jobject); /* @@ -44,7 +44,7 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1destroy * Method: inner_loop * Signature: ()J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Client_inner_1loop +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Client_inner_1loop (JNIEnv *, jobject); /* @@ -52,7 +52,7 @@ JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Client_inner_1loop * Method: async_get * Signature: (Ljava/lang/String;Ljava/lang/Object;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get (JNIEnv *, jobject, jstring, jobject); /* @@ -60,7 +60,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ge * Method: async_get_partial * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/List;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get_1partial +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get_1partial (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -68,7 +68,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ge * Method: async_put * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -76,7 +76,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1pu * Method: async_cond_put * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1put +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1put (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -84,7 +84,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_put * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1put +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1put (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -92,7 +92,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_put_if_not_exist * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put_1if_1not_1exist +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put_1if_1not_1exist (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -100,7 +100,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1pu * Method: async_del * Signature: (Ljava/lang/String;Ljava/lang/Object;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1del +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1del (JNIEnv *, jobject, jstring, jobject); /* @@ -108,7 +108,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1de * Method: async_cond_del * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1del +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1del (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -116,7 +116,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_del * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1del +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1del (JNIEnv *, jobject, jstring, jobject); /* @@ -124,7 +124,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_atomic_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -132,7 +132,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1at * Method: async_cond_atomic_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -140,7 +140,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_atomic_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -148,7 +148,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_atomic_sub * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -156,7 +156,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1at * Method: async_cond_atomic_sub * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -164,7 +164,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_atomic_sub * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -172,7 +172,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_atomic_mul * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -180,7 +180,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1at * Method: async_cond_atomic_mul * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -188,7 +188,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_atomic_mul * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -196,7 +196,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_atomic_div * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -204,7 +204,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1at * Method: async_cond_atomic_div * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -212,7 +212,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_atomic_div * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -220,7 +220,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_atomic_mod * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -228,7 +228,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1at * Method: async_cond_atomic_mod * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -236,7 +236,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_atomic_mod * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -244,7 +244,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_atomic_and * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -252,7 +252,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1at * Method: async_cond_atomic_and * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -260,7 +260,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_atomic_and * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -268,7 +268,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_atomic_or * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -276,7 +276,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1at * Method: async_cond_atomic_or * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -284,7 +284,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_atomic_or * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -292,7 +292,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_atomic_xor * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -300,7 +300,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1at * Method: async_cond_atomic_xor * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -308,7 +308,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_atomic_xor * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -316,7 +316,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_atomic_min * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -324,7 +324,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1at * Method: async_cond_atomic_min * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -332,7 +332,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_atomic_min * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -340,7 +340,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_atomic_max * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -348,7 +348,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1at * Method: async_cond_atomic_max * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -356,7 +356,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_atomic_max * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -364,7 +364,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_string_prepend * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -372,7 +372,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1st * Method: async_cond_string_prepend * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -380,7 +380,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_string_prepend * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -388,7 +388,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_string_append * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -396,7 +396,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1st * Method: async_cond_string_append * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -404,7 +404,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_string_append * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -412,7 +412,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_list_lpush * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1lpush +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1lpush (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -420,7 +420,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1li * Method: async_cond_list_lpush * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1lpush +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1lpush (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -428,7 +428,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_list_lpush * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1lpush +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1lpush (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -436,7 +436,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_list_rpush * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1rpush +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1rpush (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -444,7 +444,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1li * Method: async_cond_list_rpush * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1rpush +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1rpush (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -452,7 +452,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_list_rpush * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1rpush +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1rpush (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -460,7 +460,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_set_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -468,7 +468,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1se * Method: async_cond_set_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1add (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -476,7 +476,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_set_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -484,7 +484,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_set_remove * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1remove (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -492,7 +492,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1se * Method: async_cond_set_remove * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1remove (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -500,7 +500,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_set_remove * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1remove (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -508,7 +508,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_set_intersect * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1intersect +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1intersect (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -516,7 +516,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1se * Method: async_cond_set_intersect * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1intersect +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1intersect (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -524,7 +524,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_set_intersect * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1intersect +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1intersect (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -532,7 +532,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_set_union * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1union +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1union (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -540,7 +540,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1se * Method: async_cond_set_union * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1union +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1union (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -548,7 +548,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_set_union * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1union +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1union (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -556,7 +556,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_document_rename * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1rename +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1rename (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -564,7 +564,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1do * Method: async_cond_document_rename * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1rename +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1rename (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -572,7 +572,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_document_rename * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1rename +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1rename (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -580,7 +580,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_document_unset * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1unset +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1unset (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -588,7 +588,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1do * Method: async_cond_document_unset * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1unset +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1unset (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -596,7 +596,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_document_unset * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1unset +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1unset (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -604,7 +604,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -612,7 +612,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1add (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -620,7 +620,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -628,7 +628,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_remove * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1remove (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -636,7 +636,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_remove * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1remove (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -644,7 +644,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_remove * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1remove (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -652,7 +652,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_atomic_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -660,7 +660,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_atomic_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -668,7 +668,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_atomic_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -676,7 +676,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_atomic_sub * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -684,7 +684,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_atomic_sub * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -692,7 +692,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_atomic_sub * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -700,7 +700,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_atomic_mul * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -708,7 +708,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_atomic_mul * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -716,7 +716,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_atomic_mul * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -724,7 +724,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_atomic_div * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -732,7 +732,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_atomic_div * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -740,7 +740,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_atomic_div * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -748,7 +748,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_atomic_mod * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -756,7 +756,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_atomic_mod * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -764,7 +764,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_atomic_mod * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -772,7 +772,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_atomic_and * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -780,7 +780,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_atomic_and * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -788,7 +788,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_atomic_and * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -796,7 +796,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_atomic_or * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -804,7 +804,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_atomic_or * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -812,7 +812,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_atomic_or * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -820,7 +820,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_atomic_xor * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -828,7 +828,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_atomic_xor * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -836,7 +836,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_atomic_xor * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -844,7 +844,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_string_prepend * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -852,7 +852,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_string_prepend * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -860,7 +860,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_string_prepend * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -868,7 +868,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_string_append * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -876,7 +876,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_string_append * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -884,7 +884,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_string_append * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -892,7 +892,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_atomic_min * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -900,7 +900,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_atomic_min * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -908,7 +908,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_atomic_min * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -916,7 +916,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: async_map_atomic_max * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -924,7 +924,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1ma * Method: async_cond_map_atomic_max * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -932,7 +932,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: async_group_map_atomic_max * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -940,7 +940,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1gr * Method: search * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_search +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_search (JNIEnv *, jobject, jstring, jobject); /* @@ -948,7 +948,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_search * Method: async_search_describe * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1search_1describe +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1search_1describe (JNIEnv *, jobject, jstring, jobject); /* @@ -956,7 +956,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1se * Method: sorted_search * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;IZ)Lorg/hyperdex/client/Iterator; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_sorted_1search +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_sorted_1search (JNIEnv *, jobject, jstring, jobject, jstring, jint, jboolean); /* @@ -964,7 +964,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_sorted_1s * Method: async_count * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1count +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1count (JNIEnv *, jobject, jstring, jobject); /* @@ -972,7 +972,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1co * Method: microtransaction_put * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_microtransaction_1put +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_microtransaction_1put (JNIEnv *, jobject, jobject, jobject); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_Deferred.h b/bindings/java/org_hyperdex_client_Deferred.h index f00a7a69..5c7aadc2 100644 --- a/bindings/java/org_hyperdex_client_Deferred.h +++ b/bindings/java/org_hyperdex_client_Deferred.h @@ -12,7 +12,7 @@ extern "C" { * Method: _create * Signature: ()V */ -JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1create +JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1create (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1create * Method: _destroy * Signature: ()V */ -JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1destroy +JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1destroy (JNIEnv *, jobject); /* @@ -28,7 +28,7 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1destroy * Method: waitForIt * Signature: ()Ljava/lang/Object; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Deferred_waitForIt +JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Deferred_waitForIt (JNIEnv *, jobject); /* @@ -36,7 +36,7 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Deferred_waitFor * Method: callback * Signature: ()V */ -JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred_callback +JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred_callback (JNIEnv *, jobject); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_GreaterEqual.h b/bindings/java/org_hyperdex_client_GreaterEqual.h index e2071398..dd301afe 100644 --- a/bindings/java/org_hyperdex_client_GreaterEqual.h +++ b/bindings/java/org_hyperdex_client_GreaterEqual.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterEqual_checksSize +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterEqual_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterEqual_check * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterEqual_convertChecks +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterEqual_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_GreaterThan.h b/bindings/java/org_hyperdex_client_GreaterThan.h index f9ef32c6..82c5c340 100644 --- a/bindings/java/org_hyperdex_client_GreaterThan.h +++ b/bindings/java/org_hyperdex_client_GreaterThan.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterThan_checksSize +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterThan_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterThan_checks * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterThan_convertChecks +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterThan_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_Iterator.h b/bindings/java/org_hyperdex_client_Iterator.h index c40147c8..7caf3ef6 100644 --- a/bindings/java/org_hyperdex_client_Iterator.h +++ b/bindings/java/org_hyperdex_client_Iterator.h @@ -12,7 +12,7 @@ extern "C" { * Method: _create * Signature: ()V */ -JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator__1create +JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator__1create (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator__1create * Method: _destroy * Signature: ()V */ -JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator__1destroy +JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator__1destroy (JNIEnv *, jobject); /* @@ -28,7 +28,7 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator__1destroy * Method: finished * Signature: ()Z */ -JNIEXPORT HYPERDEX_API jboolean JNICALL Java_org_hyperdex_client_Iterator_finished +JNIEXPORT HYPERDEX_API HYPERDEX_API jboolean JNICALL Java_org_hyperdex_client_Iterator_finished (JNIEnv *, jobject); /* @@ -36,7 +36,7 @@ JNIEXPORT HYPERDEX_API jboolean JNICALL Java_org_hyperdex_client_Iterator_finish * Method: callback * Signature: ()V */ -JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator_callback +JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator_callback (JNIEnv *, jobject); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_LengthEquals.h b/bindings/java/org_hyperdex_client_LengthEquals.h index ed29761c..c740b34c 100644 --- a/bindings/java/org_hyperdex_client_LengthEquals.h +++ b/bindings/java/org_hyperdex_client_LengthEquals.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthEquals_checksSize +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthEquals_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthEquals_check * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthEquals_convertChecks +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthEquals_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_LengthGreaterEqual.h b/bindings/java/org_hyperdex_client_LengthGreaterEqual.h index c79ddaa1..19216397 100644 --- a/bindings/java/org_hyperdex_client_LengthGreaterEqual.h +++ b/bindings/java/org_hyperdex_client_LengthGreaterEqual.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthGreaterEqual_checksSize +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthGreaterEqual_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthGreaterEqual * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthGreaterEqual_convertChecks +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthGreaterEqual_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_LengthLessEqual.h b/bindings/java/org_hyperdex_client_LengthLessEqual.h index a9948b6e..c6ea4582 100644 --- a/bindings/java/org_hyperdex_client_LengthLessEqual.h +++ b/bindings/java/org_hyperdex_client_LengthLessEqual.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthLessEqual_checksSize +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthLessEqual_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthLessEqual_ch * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthLessEqual_convertChecks +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthLessEqual_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_LessEqual.h b/bindings/java/org_hyperdex_client_LessEqual.h index 344cc82b..e04e84cc 100644 --- a/bindings/java/org_hyperdex_client_LessEqual.h +++ b/bindings/java/org_hyperdex_client_LessEqual.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessEqual_checksSize +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessEqual_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessEqual_checksSi * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessEqual_convertChecks +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessEqual_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_LessThan.h b/bindings/java/org_hyperdex_client_LessThan.h index 886a9793..8a86b250 100644 --- a/bindings/java/org_hyperdex_client_LessThan.h +++ b/bindings/java/org_hyperdex_client_LessThan.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessThan_checksSize +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessThan_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessThan_checksSiz * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessThan_convertChecks +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessThan_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_Range.h b/bindings/java/org_hyperdex_client_Range.h index 7c973762..70180d4e 100644 --- a/bindings/java/org_hyperdex_client_Range.h +++ b/bindings/java/org_hyperdex_client_Range.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Range_checksSize +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Range_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Range_checksSize * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Range_convertChecks +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Range_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_Regex.h b/bindings/java/org_hyperdex_client_Regex.h index cf245786..5f7323a6 100644 --- a/bindings/java/org_hyperdex_client_Regex.h +++ b/bindings/java/org_hyperdex_client_Regex.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Regex_checksSize +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Regex_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Regex_checksSize * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Regex_convertChecks +JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Regex_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index f2b9ee66..6cf5011a 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -164,6 +164,7 @@ cdef extern from "hyperdex/client.h": hyperdex_client* hyperdex_client_create(char* coordinator, uint16_t port) hyperdex_client_microtransaction* hyperdex_client_uxact_init(hyperdex_client* _cl, const char* space, hyperdex_client_returncode *status) int64_t hyperdex_client_uxact_commit(hyperdex_client* _cl, hyperdex_client_microtransaction *utx, const char* key, size_t key_sz) + int64_t hyperdex_client_uxact_group_commit(hyperdex_client* _cl, hyperdex_client_microtransaction *utx, const hyperdex_client_attribute_check *chks, size_t chks_sz, uint64_t* count) void hyperdex_client_destroy(hyperdex_client* client) int64_t hyperdex_client_loop(hyperdex_client* client, int timeout, hyperdex_client_returncode* status) void hyperdex_client_destroy_attrs(hyperdex_client_attribute* attrs, size_t attrs_sz) @@ -1408,6 +1409,24 @@ cdef class Microtransaction: # End Automatically Generated UTX Methods + def async_group_commit(self, dict checks): + cdef hyperdex_client_attribute_check* chks + cdef size_t chks_sz + self.client.convert_predicates(self.deferred.arena, checks, &chks, &chks_sz) + + self.deferred.reqid = hyperdex_client_uxact_group_commit(self.client.client, self.transaction, chks, chks_sz, &self.deferred.count) + + self.client.clear_auth_context() + if self.deferred.reqid < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + self.deferred.encode_return = hyperdex_python_client_deferred_encode_status + + self.client.ops[self.deferred.reqid] = self.deferred + self.deferred.encode_return = hyperdex_python_client_deferred_encode_status_count + return self.deferred + + def group_commit(self, dict checks): + return self.async_group_commit(checks).wait() def async_commit(self, bytes key): cdef const char* in_key diff --git a/client/c.cc b/client/c.cc index 992b1ff4..1f6607ba 100644 --- a/client/c.cc +++ b/client/c.cc @@ -293,6 +293,34 @@ hyperdex_client_uxact_commit(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_uxact_group_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const hyperdex_client_attribute_check *chks, size_t chks_sz, + uint64_t *count) +{ + hyperdex::microtransaction* tx = reinterpret_cast(transaction); + hyperdex_client_returncode *status = tx->status; + + C_WRAP_EXCEPT( + return cl->uxact_group_commit(tx, chks, chks_sz, count); + ); +} + +HYPERDEX_API int64_t +hyperdex_client_uxact_cond_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const char* key, size_t key_sz, + const hyperdex_client_attribute_check *chks, size_t chks_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(transaction); + hyperdex_client_returncode *status = tx->status; + + C_WRAP_EXCEPT( + return cl->uxact_cond_commit(tx, key, key_sz, chks, chks_sz); + ); +} + HYPERDEX_API int64_t hyperdex_client_get(struct hyperdex_client* _cl, const char* space, diff --git a/client/client.cc b/client/client.cc index d7911c42..f1e487c2 100644 --- a/client/client.cc +++ b/client/client.cc @@ -1314,7 +1314,8 @@ int64_t client::uxact_commit(microtransaction *transaction, footer_sz += pack_size(aw); } - int ret = transaction->generate_message(header_sz, footer_sz, &msg); + const std::vector checks; + int ret = transaction->generate_message(header_sz, footer_sz, checks, &msg); if (ret < 0) { @@ -1331,6 +1332,99 @@ int64_t client::uxact_commit(microtransaction *transaction, return send_keyop(transaction->space, key, REQ_ATOMIC, msg, op, status); } +int64_t +client :: uxact_cond_commit(microtransaction *transaction, + const char* _key, size_t _key_sz, + const hyperdex_client_attribute_check* chks, size_t chks_sz) +{ + hyperdex_client_returncode *status = transaction->status; + + datatype_info* di = datatype_info::lookup(transaction->sc.attrs[0].type); + assert(di); + e::slice key(_key, _key_sz); + + if (!di->validate(key)) + { + ERROR(WRONGTYPE) << "key must be type " << transaction->sc.attrs[0].type; + return -2; + } + + e::intrusive_ptr op; + op = new pending_atomic(m_next_client_id++, status); + std::auto_ptr msg; + auth_wallet aw(m_macaroons, m_macaroons_sz); + size_t header_sz = HYPERDEX_CLIENT_HEADER_SIZE_REQ + + pack_size(key); + size_t footer_sz = 0; + + if (m_macaroons_sz) + { + footer_sz += pack_size(aw); + } + + // Prepare the checks + std::vector checks; + uint64_t idx = prepare_checks(transaction->space, transaction->sc, chks, chks_sz, &transaction->memory, status, &checks); + + if (idx < chks_sz) + { + return -2 - idx; + } + + int ret = transaction->generate_message(header_sz, footer_sz, checks, &msg); + + if (ret < 0) + { + return ret; + } + + msg->pack_at(HYPERDEX_CLIENT_HEADER_SIZE_REQ) << key; + + if (m_macaroons_sz) + { + msg->pack_at(msg->capacity() - footer_sz) << aw; + } + + int64_t result = send_keyop(transaction->space, key, REQ_ATOMIC, msg, op, status); + delete transaction; + return result; +} + +int64_t +client :: uxact_group_commit(microtransaction *transaction, + const hyperdex_client_attribute_check* chks, size_t chks_sz, + uint64_t *update_count) +{ + hyperdex_client_returncode *status = transaction->status; + const char *space = transaction->space; + + SEARCH_BOILERPLATE + + int64_t client_id = m_next_client_id++; + e::intrusive_ptr op; + op = new pending_group_atomic(client_id, status, update_count); + + std::auto_ptr inner_msg; + const std::vector checks_; + ret = transaction->generate_message(0, 0, checks_, &inner_msg); + + if (ret < 0) + { + return ret; + } + + size_t sz = HYPERDEX_CLIENT_HEADER_SIZE_REQ + + sizeof(uint64_t) + + pack_size(checks) + + inner_msg->size(); + std::auto_ptr msg(e::buffer::create(sz)); + e::buffer::packer pa = msg->pack_at(HYPERDEX_CLIENT_HEADER_SIZE_REQ); + pa = pa << checks; + pa.copy(inner_msg->as_slice()); + return perform_aggregation(servers, op, REQ_GROUP_ATOMIC, msg, status); +} + + HYPERDEX_API std::ostream& operator << (std::ostream& lhs, hyperdex_client_returncode rhs) { @@ -1378,14 +1472,13 @@ client :: set_type_conversion(bool enabled) int64_t microtransaction::generate_message(size_t header_sz, size_t footer_sz, - std::auto_ptr* msg) + const std::vector& checks, + std::auto_ptr* msg) { const bool fail_if_not_found = false; const bool fail_if_found = false; const bool erase = false; - std::vector checks; - std::stable_sort(funcalls.begin(), funcalls.end()); size_t sz = header_sz + footer_sz + sizeof(uint8_t) diff --git a/client/client.h b/client/client.h index 38d5e46c..784e8735 100644 --- a/client/client.h +++ b/client/client.h @@ -59,6 +59,7 @@ struct microtransaction PO6_NONCOPYABLE(microtransaction); int64_t generate_message(size_t header_sz, size_t footer_sz, + const std::vector& checks, std::auto_ptr* msg); const char* space; @@ -140,9 +141,19 @@ class client const hyperdex_client_attribute* attrs, size_t attrs_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz); - // Issue a microtransaction to a specific key using specific checks + // Issue a microtransaction to a specific key int64_t uxact_commit(microtransaction *transaction, - const char* key, size_t key_sz); + const char* key, size_t key_sz); + + // Issue a microtransaction to a specific key only if checks passs + int64_t uxact_cond_commit(microtransaction *transaction, + const char* key, size_t key_sz, + const hyperdex_client_attribute_check* checks, size_t checks_sz); + + // Issue a mircotransaction to a all entries matching the checks + int64_t uxact_group_commit(microtransaction *transaction, + const hyperdex_client_attribute_check* checks, size_t checks_sz, + uint64_t *update_count); // looping/polling int64_t loop(int timeout, hyperdex_client_returncode* status); diff --git a/doc/go/client/ops.tex b/doc/go/client/ops.tex index 51d19f1b..1944390a 100644 --- a/doc/go/client/ops.tex +++ b/doc/go/client/ops.tex @@ -99,6 +99,29 @@ \subsubsection{\code{Put}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactPut %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactPut}} +\label{api:Go:UxactPut} +\index{UxactPut!Go API} +\input{\topdir/client/fragments/uxact_put} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactPut(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondPut %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondPut}} @@ -272,6 +295,29 @@ \subsubsection{\code{AtomicAdd}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactAtomicAdd %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactAtomicAdd}} +\label{api:Go:UxactAtomicAdd} +\index{UxactAtomicAdd!Go API} +\input{\topdir/client/fragments/uxact_atomic_add} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactAtomicAdd(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondAtomicAdd %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondAtomicAdd}} @@ -349,6 +395,29 @@ \subsubsection{\code{AtomicSub}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactAtomicSub %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactAtomicSub}} +\label{api:Go:UxactAtomicSub} +\index{UxactAtomicSub!Go API} +\input{\topdir/client/fragments/uxact_atomic_sub} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactAtomicSub(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondAtomicSub %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondAtomicSub}} @@ -426,6 +495,29 @@ \subsubsection{\code{AtomicMul}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactAtomicMul %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactAtomicMul}} +\label{api:Go:UxactAtomicMul} +\index{UxactAtomicMul!Go API} +\input{\topdir/client/fragments/uxact_atomic_mul} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactAtomicMul(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondAtomicMul %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondAtomicMul}} @@ -503,6 +595,29 @@ \subsubsection{\code{AtomicDiv}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactAtomicDiv %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactAtomicDiv}} +\label{api:Go:UxactAtomicDiv} +\index{UxactAtomicDiv!Go API} +\input{\topdir/client/fragments/uxact_atomic_div} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactAtomicDiv(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondAtomicDiv %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondAtomicDiv}} @@ -657,6 +772,29 @@ \subsubsection{\code{AtomicAnd}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactAtomicAnd %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactAtomicAnd}} +\label{api:Go:UxactAtomicAnd} +\index{UxactAtomicAnd!Go API} +\input{\topdir/client/fragments/uxact_atomic_and} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactAtomicAnd(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondAtomicAnd %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondAtomicAnd}} @@ -734,6 +872,29 @@ \subsubsection{\code{AtomicOr}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactAtomicOr %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactAtomicOr}} +\label{api:Go:UxactAtomicOr} +\index{UxactAtomicOr!Go API} +\input{\topdir/client/fragments/uxact_atomic_or} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactAtomicOr(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondAtomicOr %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondAtomicOr}} @@ -1042,6 +1203,29 @@ \subsubsection{\code{StringPrepend}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactStringPrepend %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactStringPrepend}} +\label{api:Go:UxactStringPrepend} +\index{UxactStringPrepend!Go API} +\input{\topdir/client/fragments/uxact_string_prepend} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactStringPrepend(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondStringPrepend %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondStringPrepend}} @@ -1119,6 +1303,29 @@ \subsubsection{\code{StringAppend}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactStringAppend %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactStringAppend}} +\label{api:Go:UxactStringAppend} +\index{UxactStringAppend!Go API} +\input{\topdir/client/fragments/uxact_string_append} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactStringAppend(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondStringAppend %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondStringAppend}} @@ -1196,6 +1403,29 @@ \subsubsection{\code{ListLpush}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactListLpush %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactListLpush}} +\label{api:Go:UxactListLpush} +\index{UxactListLpush!Go API} +\input{\topdir/client/fragments/uxact_list_lpush} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactListLpush(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondListLpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondListLpush}} @@ -1273,6 +1503,29 @@ \subsubsection{\code{ListRpush}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactListRpush %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactListRpush}} +\label{api:Go:UxactListRpush} +\index{UxactListRpush!Go API} +\input{\topdir/client/fragments/uxact_list_rpush} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactListRpush(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondListRpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondListRpush}} @@ -1658,6 +1911,29 @@ \subsubsection{\code{DocumentRename}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactDocumentRename %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactDocumentRename}} +\label{api:Go:UxactDocumentRename} +\index{UxactDocumentRename!Go API} +\input{\topdir/client/fragments/uxact_document_rename} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactDocumentRename(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondDocumentRename %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondDocumentRename}} @@ -1735,6 +2011,29 @@ \subsubsection{\code{DocumentUnset}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status} +%%%%%%%%%%%%%%%%%%%% UxactDocumentUnset %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{UxactDocumentUnset}} +\label{api:Go:UxactDocumentUnset} +\index{UxactDocumentUnset!Go API} +\input{\topdir/client/fragments/uxact_document_unset} + +\paragraph{Definition:} +\begin{gocode} +func (client *Client) UxactDocumentUnset(microtransaction Microtransaction, attributes Attributes) +\end{gocode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{microtransaction}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} +\item \code{attributes}\\ +\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/go/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% CondDocumentUnset %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{CondDocumentUnset}} @@ -2939,26 +3238,3 @@ \subsubsection{\code{Count}} \paragraph{Returns:} \input{\topdir/go/client/fragments/return_asynccall__status_count} - -%%%%%%%%%%%%%%%%%%%% MicrotransactionPut %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{MicrotransactionPut}} -\label{api:Go:MicrotransactionPut} -\index{MicrotransactionPut!Go API} -\input{\topdir/client/fragments/microtransaction_put} - -\paragraph{Definition:} -\begin{gocode} -func (client *Client) MicrotransactionPut(microtransaction Microtransaction, attributes Attributes) -\end{gocode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/go/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/go/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/go/client/fragments/return_microtransactioncall__} diff --git a/doc/java/client/ops.tex b/doc/java/client/ops.tex index e70d9a3b..b777046e 100644 --- a/doc/java/client/ops.tex +++ b/doc/java/client/ops.tex @@ -191,6 +191,29 @@ \subsubsection{\code{async\_put}} \paragraph{See also:} This is the asynchronous form of \code{put}. +%%%%%%%%%%%%%%%%%%%% uxact_put %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_put}} +\label{api:java:uxact_put} +\index{uxact\_put!Java API} +\input{\topdir/client/fragments/uxact_put} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_put(Object microtransaction, Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_put %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_put}} @@ -582,6 +605,31 @@ \subsubsection{\code{async\_atomic\_add}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_add}. +%%%%%%%%%%%%%%%%%%%% uxact_atomic_add %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_atomic\_add}} +\label{api:java:uxact_atomic_add} +\index{uxact\_atomic\_add!Java API} +\input{\topdir/client/fragments/uxact_atomic_add} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_atomic_add( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_add %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_add}} @@ -759,6 +807,31 @@ \subsubsection{\code{async\_atomic\_sub}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_sub}. +%%%%%%%%%%%%%%%%%%%% uxact_atomic_sub %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_atomic\_sub}} +\label{api:java:uxact_atomic_sub} +\index{uxact\_atomic\_sub!Java API} +\input{\topdir/client/fragments/uxact_atomic_sub} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_atomic_sub( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_sub %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_sub}} @@ -936,6 +1009,31 @@ \subsubsection{\code{async\_atomic\_mul}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_mul}. +%%%%%%%%%%%%%%%%%%%% uxact_atomic_mul %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_atomic\_mul}} +\label{api:java:uxact_atomic_mul} +\index{uxact\_atomic\_mul!Java API} +\input{\topdir/client/fragments/uxact_atomic_mul} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_atomic_mul( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_mul %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_mul}} @@ -1113,6 +1211,31 @@ \subsubsection{\code{async\_atomic\_div}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_div}. +%%%%%%%%%%%%%%%%%%%% uxact_atomic_div %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_atomic\_div}} +\label{api:java:uxact_atomic_div} +\index{uxact\_atomic\_div!Java API} +\input{\topdir/client/fragments/uxact_atomic_div} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_atomic_div( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_div %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_div}} @@ -1467,6 +1590,31 @@ \subsubsection{\code{async\_atomic\_and}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_and}. +%%%%%%%%%%%%%%%%%%%% uxact_atomic_and %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_atomic\_and}} +\label{api:java:uxact_atomic_and} +\index{uxact\_atomic\_and!Java API} +\input{\topdir/client/fragments/uxact_atomic_and} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_atomic_and( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_and %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_and}} @@ -1644,6 +1792,31 @@ \subsubsection{\code{async\_atomic\_or}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_or}. +%%%%%%%%%%%%%%%%%%%% uxact_atomic_or %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_atomic\_or}} +\label{api:java:uxact_atomic_or} +\index{uxact\_atomic\_or!Java API} +\input{\topdir/client/fragments/uxact_atomic_or} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_atomic_or( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_atomic_or %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_or}} @@ -2352,6 +2525,31 @@ \subsubsection{\code{async\_string\_prepend}} \paragraph{See also:} This is the asynchronous form of \code{string\_prepend}. +%%%%%%%%%%%%%%%%%%%% uxact_string_prepend %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_string\_prepend}} +\label{api:java:uxact_string_prepend} +\index{uxact\_string\_prepend!Java API} +\input{\topdir/client/fragments/uxact_string_prepend} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_string_prepend( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_string_prepend %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_string\_prepend}} @@ -2529,6 +2727,31 @@ \subsubsection{\code{async\_string\_append}} \paragraph{See also:} This is the asynchronous form of \code{string\_append}. +%%%%%%%%%%%%%%%%%%%% uxact_string_append %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_string\_append}} +\label{api:java:uxact_string_append} +\index{uxact\_string\_append!Java API} +\input{\topdir/client/fragments/uxact_string_append} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_string_append( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_string_append %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_string\_append}} @@ -2706,6 +2929,31 @@ \subsubsection{\code{async\_list\_lpush}} \paragraph{See also:} This is the asynchronous form of \code{list\_lpush}. +%%%%%%%%%%%%%%%%%%%% uxact_list_lpush %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_list\_lpush}} +\label{api:java:uxact_list_lpush} +\index{uxact\_list\_lpush!Java API} +\input{\topdir/client/fragments/uxact_list_lpush} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_list_lpush( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_list_lpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_list\_lpush}} @@ -2883,6 +3131,31 @@ \subsubsection{\code{async\_list\_rpush}} \paragraph{See also:} This is the asynchronous form of \code{list\_rpush}. +%%%%%%%%%%%%%%%%%%%% uxact_list_rpush %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_list\_rpush}} +\label{api:java:uxact_list_rpush} +\index{uxact\_list\_rpush!Java API} +\input{\topdir/client/fragments/uxact_list_rpush} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_list_rpush( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_list_rpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_list\_rpush}} @@ -3768,6 +4041,31 @@ \subsubsection{\code{async\_document\_rename}} \paragraph{See also:} This is the asynchronous form of \code{document\_rename}. +%%%%%%%%%%%%%%%%%%%% uxact_document_rename %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_document\_rename}} +\label{api:java:uxact_document_rename} +\index{uxact\_document\_rename!Java API} +\input{\topdir/client/fragments/uxact_document_rename} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_document_rename( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_document_rename %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_document\_rename}} @@ -3945,6 +4243,31 @@ \subsubsection{\code{async\_document\_unset}} \paragraph{See also:} This is the asynchronous form of \code{document\_unset}. +%%%%%%%%%%%%%%%%%%%% uxact_document_unset %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{uxact\_document\_unset}} +\label{api:java:uxact_document_unset} +\index{uxact\_document\_unset!Java API} +\input{\topdir/client/fragments/uxact_document_unset} + +\paragraph{Definition:} +\begin{javacode} +public Iterator uxact_document_unset( + Object microtransaction, + Map attributes) +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{Object microtransaction}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} +\item \code{Map attributes}\\ +\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_microtransactioncall__} + %%%%%%%%%%%%%%%%%%%% cond_document_unset %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_document\_unset}} @@ -6650,28 +6973,3 @@ \subsubsection{\code{async\_count}} \input{\topdir/java/client/fragments/return_async_asynccall__status_count} \paragraph{See also:} This is the asynchronous form of \code{count}. - -%%%%%%%%%%%%%%%%%%%% microtransaction_put %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{microtransaction\_put}} -\label{api:java:microtransaction_put} -\index{microtransaction\_put!Java API} -\input{\topdir/client/fragments/microtransaction_put} - -\paragraph{Definition:} -\begin{javacode} -public Iterator microtransaction_put( - Object microtransaction, - Map attributes) -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} diff --git a/include/hyperdex/client.h b/include/hyperdex/client.h index d9f14613..27d90c9a 100644 --- a/include/hyperdex/client.h +++ b/include/hyperdex/client.h @@ -131,6 +131,18 @@ int64_t hyperdex_client_uxact_commit(struct hyperdex_client* _cl, struct hyperdex_client_microtransaction *transaction, const char* key, size_t key_sz); + +int64_t +hyperdex_client_uxact_group_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const struct hyperdex_client_attribute_check *chks, size_t chks_sz, + uint64_t *count); + +int64_t +hyperdex_client_uxact_cond_commit(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction *transaction, + const char* key, size_t key_sz, + const struct hyperdex_client_attribute_check *chks, size_t chks_sz); int64_t hyperdex_client_get(struct hyperdex_client* client, diff --git a/test/python/Microtransactions.py b/test/python/Microtransactions.py index 46cab3d9..b15d02fb 100644 --- a/test/python/Microtransactions.py +++ b/test/python/Microtransactions.py @@ -40,5 +40,19 @@ assertTrue(tx.commit('k2')) assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 1, 'b' : 1, 'c' : 0, 'd' : {'x' : 'y'}})) +## Group commit +assertTrue(c.put('kv', 'k1', {'v' : Document({'a' : 2})})) +assertTrue(c.put('kv', 'k2', {'v' : Document({'a' : 1})})) +assertTrue(c.put('kv', 'k3', {'v' : Document({'a' : 1})})) +tx = c.microtransaction_init('kv') +tx.atomic_add({'v.a' : 2}) +tx.atomic_add({'v.b' : -1}) +tx.atomic_add({'v.c' : 3}) +tx.put({'v.d' : Document({'x' : 'y'})}) +assertEquals(tx.group_commit({'v.a' : 1}), 2) +assertEquals(c.get('kv', 'k1')['v'], Document({'a' : 2})) +assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3, 'd' : {'x' : 'y'}})) +assertEquals(c.get('kv', 'k3')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3, 'd' : {'x' : 'y'}})) + From 2b02f0ad4021a6b7caf7dde36f0e0e3c2a42ea5b Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Thu, 19 Feb 2015 17:38:32 -0500 Subject: [PATCH 11/28] Working group_commit --- test/python/Microtransactions.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/test/python/Microtransactions.py b/test/python/Microtransactions.py index b15d02fb..5acd467a 100644 --- a/test/python/Microtransactions.py +++ b/test/python/Microtransactions.py @@ -54,5 +54,26 @@ assertEquals(c.get('kv', 'k2')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3, 'd' : {'x' : 'y'}})) assertEquals(c.get('kv', 'k3')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3, 'd' : {'x' : 'y'}})) +## Cond commit +assertTrue(c.put('kv', 'k1', {'v' : Document({'a' : 2})})) + +tx = c.microtransaction_init('kv') +tx.atomic_add({'v.a' : 2}) +tx.atomic_add({'v.b' : -1}) +tx.atomic_add({'v.c' : 3}) +tx.put({'v.d' : Document({'x' : 'y'})}) +assertTrue(tx.cond_commit('k1', {'v.a' : 1})) +assertEquals(c.get('kv', 'k1')['v'], Document({'a' : 2})) + +tx = c.microtransaction_init('kv') +tx.atomic_add({'v.a' : 2}) +tx.atomic_add({'v.b' : -1}) +tx.atomic_add({'v.c' : 3}) +tx.put({'v.d' : Document({'x' : 'y'})}) +assertTrue(tx.cond_commit('k1', {'v.a' : 2})) +assertEquals(c.get('kv', 'k1')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3, 'd' : {'x' : 'y'}})) + + + From fe12230b9c3cca881aef86d229c438b10277e385 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Thu, 19 Feb 2015 17:44:24 -0500 Subject: [PATCH 12/28] Working cond_commit --- bindings/python/hyperdex/client.pyx | 23 +++++++++++++++++++++++ test/python/Microtransactions.py | 4 ++-- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index 6cf5011a..82406bf5 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -164,6 +164,7 @@ cdef extern from "hyperdex/client.h": hyperdex_client* hyperdex_client_create(char* coordinator, uint16_t port) hyperdex_client_microtransaction* hyperdex_client_uxact_init(hyperdex_client* _cl, const char* space, hyperdex_client_returncode *status) int64_t hyperdex_client_uxact_commit(hyperdex_client* _cl, hyperdex_client_microtransaction *utx, const char* key, size_t key_sz) + int64_t hyperdex_client_uxact_cond_commit(hyperdex_client* _cl, hyperdex_client_microtransaction *utx, const char* key, size_t key_sz, const hyperdex_client_attribute_check *chks, size_t chks_sz) int64_t hyperdex_client_uxact_group_commit(hyperdex_client* _cl, hyperdex_client_microtransaction *utx, const hyperdex_client_attribute_check *chks, size_t chks_sz, uint64_t* count) void hyperdex_client_destroy(hyperdex_client* client) int64_t hyperdex_client_loop(hyperdex_client* client, int timeout, hyperdex_client_returncode* status) @@ -1445,6 +1446,28 @@ cdef class Microtransaction: def commit(self, bytes key): return self.async_commit(key).wait() + + def async_cond_commit(self, bytes key, dict checks): + cdef const char* in_key + cdef size_t in_key_sz + self.client.convert_key(self.deferred.arena, key, &in_key, &in_key_sz) + + cdef hyperdex_client_attribute_check* chks + cdef size_t chks_sz + self.client.convert_predicates(self.deferred.arena, checks, &chks, &chks_sz) + + self.deferred.reqid = hyperdex_client_uxact_cond_commit(self.client.client, self.transaction, in_key, in_key_sz, chks, chks_sz) + + self.client.clear_auth_context() + if self.deferred.reqid < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + self.deferred.encode_return = hyperdex_python_client_deferred_encode_status + + self.client.ops[self.deferred.reqid] = self.deferred + return self.deferred + + def cond_commit(self, bytes key, dict checks): + return self.async_cond_commit(key, checks).wait() cdef Deferred deferred cdef Client client diff --git a/test/python/Microtransactions.py b/test/python/Microtransactions.py index 5acd467a..59e1b528 100644 --- a/test/python/Microtransactions.py +++ b/test/python/Microtransactions.py @@ -62,7 +62,7 @@ tx.atomic_add({'v.b' : -1}) tx.atomic_add({'v.c' : 3}) tx.put({'v.d' : Document({'x' : 'y'})}) -assertTrue(tx.cond_commit('k1', {'v.a' : 1})) +assertFalse(tx.cond_commit('k1', {'v.a' : 1})) assertEquals(c.get('kv', 'k1')['v'], Document({'a' : 2})) tx = c.microtransaction_init('kv') @@ -71,7 +71,7 @@ tx.atomic_add({'v.c' : 3}) tx.put({'v.d' : Document({'x' : 'y'})}) assertTrue(tx.cond_commit('k1', {'v.a' : 2})) -assertEquals(c.get('kv', 'k1')['v'], Document({'a' : 3, 'b' : -1, 'c' : 3, 'd' : {'x' : 'y'}})) +assertEquals(c.get('kv', 'k1')['v'], Document({'a' : 4, 'b' : -1, 'c' : 3, 'd' : {'x' : 'y'}})) From e027914a51547e74a3be978498fef4dfd3f2c392 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Thu, 19 Feb 2015 17:53:12 -0500 Subject: [PATCH 13/28] Fixed memory leaks --- client/client.cc | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/client/client.cc b/client/client.cc index f1e487c2..6b05b131 100644 --- a/client/client.cc +++ b/client/client.cc @@ -1329,7 +1329,9 @@ int64_t client::uxact_commit(microtransaction *transaction, msg->pack_at(msg->capacity() - footer_sz) << aw; } - return send_keyop(transaction->space, key, REQ_ATOMIC, msg, op, status); + int64_t result = send_keyop(transaction->space, key, REQ_ATOMIC, msg, op, status); + delete transaction; + return result; } int64_t @@ -1421,7 +1423,10 @@ client :: uxact_group_commit(microtransaction *transaction, e::buffer::packer pa = msg->pack_at(HYPERDEX_CLIENT_HEADER_SIZE_REQ); pa = pa << checks; pa.copy(inner_msg->as_slice()); - return perform_aggregation(servers, op, REQ_GROUP_ATOMIC, msg, status); + + int64_t result = perform_aggregation(servers, op, REQ_GROUP_ATOMIC, msg, status); + delete transaction; + return result; } From 26dc0d29902be87ef649aa3a21905886eb510bb9 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Thu, 19 Feb 2015 18:16:53 -0500 Subject: [PATCH 14/28] Cleaned up java code-generation script --- bindings/java.py | 23 +- bindings/java/org/hyperdex/client/Client.java | 326 ++++----- .../org_hyperdex_client_Client.definitions.c | 162 ++--- bindings/java/org_hyperdex_client_Client.h | 352 ++++++---- bindings/java/org_hyperdex_client_Deferred.h | 8 +- .../java/org_hyperdex_client_GreaterEqual.h | 4 +- .../java/org_hyperdex_client_GreaterThan.h | 4 +- bindings/java/org_hyperdex_client_Iterator.h | 8 +- .../java/org_hyperdex_client_LengthEquals.h | 4 +- .../org_hyperdex_client_LengthGreaterEqual.h | 4 +- .../org_hyperdex_client_LengthLessEqual.h | 4 +- bindings/java/org_hyperdex_client_LessEqual.h | 4 +- bindings/java/org_hyperdex_client_LessThan.h | 4 +- bindings/java/org_hyperdex_client_Range.h | 4 +- bindings/java/org_hyperdex_client_Regex.h | 4 +- doc/java/client/ops.tex | 654 +++++++++--------- 16 files changed, 835 insertions(+), 734 deletions(-) diff --git a/bindings/java.py b/bindings/java.py index 5ce13c79..86ca4182 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -44,28 +44,31 @@ def JTYPEOF(x): return 'List' elif x == bindings.Predicates: return 'Map' - elif x == bindings.SpaceName: + elif x in (bindings.Key, bindings.SpaceName, bindings.SortBy): return 'String' - elif x == bindings.SortBy: - return 'String' - elif x == bindings.Limit: + elif x in (bindings.Limit, bindings.Count): return 'int' elif x == bindings.MaxMin: return 'boolean' - else: + elif x == bindings.Microtransaction: + return 'Microtransaction' + elif x in (bindings.Status, bindings.Description): return 'Object' + else: + raise RuntimeError('Unknown type: ' + str(x)) def CTYPEOF(x): - if x == bindings.SpaceName: - return 'jstring' - elif x == bindings.SortBy: + if x in (bindings.SpaceName, bindings.Key, bindings.SortBy): return 'jstring' elif x == bindings.Limit: return 'jint' - elif x== bindings.MaxMin: + elif x == bindings.MaxMin: return 'jboolean' - else: + elif x in (bindings.AttributeNames, bindings.Attributes, bindings.MapAttributes, + bindings.Predicates, bindings.Status, bindings.Description, bindings.Microtransaction): return 'jobject' + else: + raise RuntimeError('Unknown type: ' + str(x)) def generate_prototype(x): args_list = ', '.join([JTYPEOF(arg) + ' ' + arg.__name__.lower() for arg in x.args_in]) diff --git a/bindings/java/org/hyperdex/client/Client.java b/bindings/java/org/hyperdex/client/Client.java index 7ffec65f..a2e1cdd0 100644 --- a/bindings/java/org/hyperdex/client/Client.java +++ b/bindings/java/org/hyperdex/client/Client.java @@ -108,28 +108,28 @@ private void remove_op(long l) ops.remove(l); } /* operations */ - public native Deferred async_get(String spacename, Object key) throws HyperDexClientException; - public Map get(String spacename, Object key) throws HyperDexClientException + public native Deferred async_get(String spacename, String key) throws HyperDexClientException; + public Map get(String spacename, String key) throws HyperDexClientException { return (Map) async_get(spacename, key).waitForIt(); } - public native Deferred async_get_partial(String spacename, Object key, List attributenames) throws HyperDexClientException; - public Map get_partial(String spacename, Object key, List attributenames) throws HyperDexClientException + public native Deferred async_get_partial(String spacename, String key, List attributenames) throws HyperDexClientException; + public Map get_partial(String spacename, String key, List attributenames) throws HyperDexClientException { return (Map) async_get_partial(spacename, key, attributenames).waitForIt(); } - public native Deferred async_put(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean put(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_put(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean put(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_put(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_put(Object microtransaction, Map attributes); + public native Iterator uxact_put(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_put(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_put(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_put(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_put(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_put(spacename, key, predicates, attributes).waitForIt(); } @@ -140,20 +140,20 @@ public Long group_put(String spacename, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean put_if_not_exist(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_put_if_not_exist(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean put_if_not_exist(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_put_if_not_exist(spacename, key, attributes).waitForIt(); } - public native Deferred async_del(String spacename, Object key) throws HyperDexClientException; - public Boolean del(String spacename, Object key) throws HyperDexClientException + public native Deferred async_del(String spacename, String key) throws HyperDexClientException; + public Boolean del(String spacename, String key) throws HyperDexClientException { return (Boolean) async_del(spacename, key).waitForIt(); } - public native Deferred async_cond_del(String spacename, Object key, Map predicates) throws HyperDexClientException; - public Boolean cond_del(String spacename, Object key, Map predicates) throws HyperDexClientException + public native Deferred async_cond_del(String spacename, String key, Map predicates) throws HyperDexClientException; + public Boolean cond_del(String spacename, String key, Map predicates) throws HyperDexClientException { return (Boolean) async_cond_del(spacename, key, predicates).waitForIt(); } @@ -164,16 +164,16 @@ public Long group_del(String spacename, Map predicates) throws H return (Long) async_group_del(spacename, predicates).waitForIt(); } - public native Deferred async_atomic_add(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_add(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_atomic_add(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean atomic_add(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_atomic_add(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_add(Object microtransaction, Map attributes); + public native Iterator uxact_atomic_add(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_atomic_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_atomic_add(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_add(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_atomic_add(spacename, key, predicates, attributes).waitForIt(); } @@ -184,16 +184,16 @@ public Long group_atomic_add(String spacename, Map predicates, M return (Long) async_group_atomic_add(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_atomic_sub(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_sub(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_atomic_sub(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean atomic_sub(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_atomic_sub(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_sub(Object microtransaction, Map attributes); + public native Iterator uxact_atomic_sub(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_atomic_sub(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_sub(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_atomic_sub(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_sub(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_atomic_sub(spacename, key, predicates, attributes).waitForIt(); } @@ -204,16 +204,16 @@ public Long group_atomic_sub(String spacename, Map predicates, M return (Long) async_group_atomic_sub(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_atomic_mul(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_mul(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_atomic_mul(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean atomic_mul(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_atomic_mul(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_mul(Object microtransaction, Map attributes); + public native Iterator uxact_atomic_mul(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_atomic_mul(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_mul(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_atomic_mul(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_mul(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_atomic_mul(spacename, key, predicates, attributes).waitForIt(); } @@ -224,16 +224,16 @@ public Long group_atomic_mul(String spacename, Map predicates, M return (Long) async_group_atomic_mul(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_atomic_div(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_div(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_atomic_div(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean atomic_div(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_atomic_div(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_div(Object microtransaction, Map attributes); + public native Iterator uxact_atomic_div(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_atomic_div(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_div(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_atomic_div(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_div(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_atomic_div(spacename, key, predicates, attributes).waitForIt(); } @@ -244,14 +244,14 @@ public Long group_atomic_div(String spacename, Map predicates, M return (Long) async_group_atomic_div(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_atomic_mod(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_mod(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_atomic_mod(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean atomic_mod(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_atomic_mod(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_atomic_mod(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_mod(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_atomic_mod(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_mod(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_atomic_mod(spacename, key, predicates, attributes).waitForIt(); } @@ -262,16 +262,16 @@ public Long group_atomic_mod(String spacename, Map predicates, M return (Long) async_group_atomic_mod(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_atomic_and(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_and(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_atomic_and(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean atomic_and(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_atomic_and(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_and(Object microtransaction, Map attributes); + public native Iterator uxact_atomic_and(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_atomic_and(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_and(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_atomic_and(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_and(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_atomic_and(spacename, key, predicates, attributes).waitForIt(); } @@ -282,16 +282,16 @@ public Long group_atomic_and(String spacename, Map predicates, M return (Long) async_group_atomic_and(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_atomic_or(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_or(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_atomic_or(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean atomic_or(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_atomic_or(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_or(Object microtransaction, Map attributes); + public native Iterator uxact_atomic_or(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_atomic_or(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_or(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_atomic_or(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_or(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_atomic_or(spacename, key, predicates, attributes).waitForIt(); } @@ -302,14 +302,14 @@ public Long group_atomic_or(String spacename, Map predicates, Ma return (Long) async_group_atomic_or(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_atomic_xor(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_xor(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_atomic_xor(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean atomic_xor(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_atomic_xor(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_atomic_xor(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_xor(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_atomic_xor(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_xor(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_atomic_xor(spacename, key, predicates, attributes).waitForIt(); } @@ -320,14 +320,14 @@ public Long group_atomic_xor(String spacename, Map predicates, M return (Long) async_group_atomic_xor(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_atomic_min(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_min(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_atomic_min(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean atomic_min(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_atomic_min(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_atomic_min(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_min(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_atomic_min(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_min(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_atomic_min(spacename, key, predicates, attributes).waitForIt(); } @@ -338,14 +338,14 @@ public Long group_atomic_min(String spacename, Map predicates, M return (Long) async_group_atomic_min(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_atomic_max(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean atomic_max(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_atomic_max(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean atomic_max(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_atomic_max(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_atomic_max(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_atomic_max(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_atomic_max(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_atomic_max(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_atomic_max(spacename, key, predicates, attributes).waitForIt(); } @@ -356,16 +356,16 @@ public Long group_atomic_max(String spacename, Map predicates, M return (Long) async_group_atomic_max(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_string_prepend(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean string_prepend(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_string_prepend(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean string_prepend(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_string_prepend(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_string_prepend(Object microtransaction, Map attributes); + public native Iterator uxact_string_prepend(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_string_prepend(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_string_prepend(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_string_prepend(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_string_prepend(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_string_prepend(spacename, key, predicates, attributes).waitForIt(); } @@ -376,16 +376,16 @@ public Long group_string_prepend(String spacename, Map predicate return (Long) async_group_string_prepend(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_string_append(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean string_append(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_string_append(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean string_append(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_string_append(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_string_append(Object microtransaction, Map attributes); + public native Iterator uxact_string_append(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_string_append(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_string_append(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_string_append(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_string_append(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_string_append(spacename, key, predicates, attributes).waitForIt(); } @@ -396,16 +396,16 @@ public Long group_string_append(String spacename, Map predicates return (Long) async_group_string_append(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_list_lpush(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean list_lpush(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_list_lpush(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean list_lpush(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_list_lpush(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_list_lpush(Object microtransaction, Map attributes); + public native Iterator uxact_list_lpush(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_list_lpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_list_lpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_list_lpush(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_list_lpush(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_list_lpush(spacename, key, predicates, attributes).waitForIt(); } @@ -416,16 +416,16 @@ public Long group_list_lpush(String spacename, Map predicates, M return (Long) async_group_list_lpush(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_list_rpush(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean list_rpush(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_list_rpush(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean list_rpush(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_list_rpush(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_list_rpush(Object microtransaction, Map attributes); + public native Iterator uxact_list_rpush(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_list_rpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_list_rpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_list_rpush(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_list_rpush(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_list_rpush(spacename, key, predicates, attributes).waitForIt(); } @@ -436,14 +436,14 @@ public Long group_list_rpush(String spacename, Map predicates, M return (Long) async_group_list_rpush(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_set_add(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean set_add(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_set_add(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean set_add(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_set_add(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_set_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_set_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_set_add(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_set_add(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_set_add(spacename, key, predicates, attributes).waitForIt(); } @@ -454,14 +454,14 @@ public Long group_set_add(String spacename, Map predicates, Map< return (Long) async_group_set_add(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_set_remove(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean set_remove(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_set_remove(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean set_remove(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_set_remove(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_set_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_set_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_set_remove(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_set_remove(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_set_remove(spacename, key, predicates, attributes).waitForIt(); } @@ -472,14 +472,14 @@ public Long group_set_remove(String spacename, Map predicates, M return (Long) async_group_set_remove(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_set_intersect(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean set_intersect(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_set_intersect(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean set_intersect(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_set_intersect(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_set_intersect(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_set_intersect(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_set_intersect(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_set_intersect(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_set_intersect(spacename, key, predicates, attributes).waitForIt(); } @@ -490,14 +490,14 @@ public Long group_set_intersect(String spacename, Map predicates return (Long) async_group_set_intersect(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_set_union(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean set_union(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_set_union(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean set_union(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_set_union(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_set_union(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_set_union(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_set_union(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_set_union(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_set_union(spacename, key, predicates, attributes).waitForIt(); } @@ -508,16 +508,16 @@ public Long group_set_union(String spacename, Map predicates, Ma return (Long) async_group_set_union(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_document_rename(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean document_rename(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_document_rename(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean document_rename(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_document_rename(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_document_rename(Object microtransaction, Map attributes); + public native Iterator uxact_document_rename(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_document_rename(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_document_rename(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_document_rename(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_document_rename(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_document_rename(spacename, key, predicates, attributes).waitForIt(); } @@ -528,16 +528,16 @@ public Long group_document_rename(String spacename, Map predicat return (Long) async_group_document_rename(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_document_unset(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean document_unset(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_document_unset(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean document_unset(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_document_unset(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_document_unset(Object microtransaction, Map attributes); + public native Iterator uxact_document_unset(Microtransaction microtransaction, Map attributes); - public native Deferred async_cond_document_unset(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_document_unset(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_document_unset(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_document_unset(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_document_unset(spacename, key, predicates, attributes).waitForIt(); } @@ -548,14 +548,14 @@ public Long group_document_unset(String spacename, Map predicate return (Long) async_group_document_unset(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_map_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_add(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_add(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_add(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_add(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_add(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_add(spacename, key, predicates, mapattributes).waitForIt(); } @@ -566,14 +566,14 @@ public Long group_map_add(String spacename, Map predicates, Map< return (Long) async_group_map_add(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_remove(String spacename, Object key, Map attributes) throws HyperDexClientException; - public Boolean map_remove(String spacename, Object key, Map attributes) throws HyperDexClientException + public native Deferred async_map_remove(String spacename, String key, Map attributes) throws HyperDexClientException; + public Boolean map_remove(String spacename, String key, Map attributes) throws HyperDexClientException { return (Boolean) async_map_remove(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_map_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; - public Boolean cond_map_remove(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException + public native Deferred async_cond_map_remove(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; + public Boolean cond_map_remove(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException { return (Boolean) async_cond_map_remove(spacename, key, predicates, attributes).waitForIt(); } @@ -584,14 +584,14 @@ public Long group_map_remove(String spacename, Map predicates, M return (Long) async_group_map_remove(spacename, predicates, attributes).waitForIt(); } - public native Deferred async_map_atomic_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_add(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_atomic_add(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_add(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_atomic_add(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_atomic_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_add(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_atomic_add(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_add(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_atomic_add(spacename, key, predicates, mapattributes).waitForIt(); } @@ -602,14 +602,14 @@ public Long group_map_atomic_add(String spacename, Map predicate return (Long) async_group_map_atomic_add(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_atomic_sub(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_sub(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_atomic_sub(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_sub(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_atomic_sub(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_atomic_sub(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_sub(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_atomic_sub(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_sub(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_atomic_sub(spacename, key, predicates, mapattributes).waitForIt(); } @@ -620,14 +620,14 @@ public Long group_map_atomic_sub(String spacename, Map predicate return (Long) async_group_map_atomic_sub(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_atomic_mul(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_mul(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_atomic_mul(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_mul(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_atomic_mul(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_atomic_mul(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_mul(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_atomic_mul(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_mul(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_atomic_mul(spacename, key, predicates, mapattributes).waitForIt(); } @@ -638,14 +638,14 @@ public Long group_map_atomic_mul(String spacename, Map predicate return (Long) async_group_map_atomic_mul(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_atomic_div(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_div(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_atomic_div(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_div(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_atomic_div(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_atomic_div(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_div(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_atomic_div(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_div(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_atomic_div(spacename, key, predicates, mapattributes).waitForIt(); } @@ -656,14 +656,14 @@ public Long group_map_atomic_div(String spacename, Map predicate return (Long) async_group_map_atomic_div(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_atomic_mod(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_mod(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_atomic_mod(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_mod(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_atomic_mod(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_atomic_mod(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_mod(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_atomic_mod(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_mod(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_atomic_mod(spacename, key, predicates, mapattributes).waitForIt(); } @@ -674,14 +674,14 @@ public Long group_map_atomic_mod(String spacename, Map predicate return (Long) async_group_map_atomic_mod(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_atomic_and(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_and(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_atomic_and(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_and(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_atomic_and(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_atomic_and(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_and(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_atomic_and(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_and(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_atomic_and(spacename, key, predicates, mapattributes).waitForIt(); } @@ -692,14 +692,14 @@ public Long group_map_atomic_and(String spacename, Map predicate return (Long) async_group_map_atomic_and(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_atomic_or(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_or(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_atomic_or(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_or(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_atomic_or(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_atomic_or(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_or(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_atomic_or(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_or(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_atomic_or(spacename, key, predicates, mapattributes).waitForIt(); } @@ -710,14 +710,14 @@ public Long group_map_atomic_or(String spacename, Map predicates return (Long) async_group_map_atomic_or(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_atomic_xor(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_xor(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_atomic_xor(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_xor(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_atomic_xor(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_atomic_xor(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_xor(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_atomic_xor(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_xor(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_atomic_xor(spacename, key, predicates, mapattributes).waitForIt(); } @@ -728,14 +728,14 @@ public Long group_map_atomic_xor(String spacename, Map predicate return (Long) async_group_map_atomic_xor(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_string_prepend(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_string_prepend(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_string_prepend(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_string_prepend(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_string_prepend(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_string_prepend(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_string_prepend(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_string_prepend(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_string_prepend(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_string_prepend(spacename, key, predicates, mapattributes).waitForIt(); } @@ -746,14 +746,14 @@ public Long group_map_string_prepend(String spacename, Map predi return (Long) async_group_map_string_prepend(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_string_append(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_string_append(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_string_append(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_string_append(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_string_append(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_string_append(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_string_append(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_string_append(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_string_append(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_string_append(spacename, key, predicates, mapattributes).waitForIt(); } @@ -764,14 +764,14 @@ public Long group_map_string_append(String spacename, Map predic return (Long) async_group_map_string_append(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_atomic_min(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_min(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_atomic_min(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_min(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_atomic_min(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_atomic_min(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_min(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_atomic_min(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_min(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_atomic_min(spacename, key, predicates, mapattributes).waitForIt(); } @@ -782,14 +782,14 @@ public Long group_map_atomic_min(String spacename, Map predicate return (Long) async_group_map_atomic_min(spacename, predicates, mapattributes).waitForIt(); } - public native Deferred async_map_atomic_max(String spacename, Object key, Map> mapattributes) throws HyperDexClientException; - public Boolean map_atomic_max(String spacename, Object key, Map> mapattributes) throws HyperDexClientException + public native Deferred async_map_atomic_max(String spacename, String key, Map> mapattributes) throws HyperDexClientException; + public Boolean map_atomic_max(String spacename, String key, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_map_atomic_max(spacename, key, mapattributes).waitForIt(); } - public native Deferred async_cond_map_atomic_max(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException; - public Boolean cond_map_atomic_max(String spacename, Object key, Map predicates, Map> mapattributes) throws HyperDexClientException + public native Deferred async_cond_map_atomic_max(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException; + public Boolean cond_map_atomic_max(String spacename, String key, Map predicates, Map> mapattributes) throws HyperDexClientException { return (Boolean) async_cond_map_atomic_max(spacename, key, predicates, mapattributes).waitForIt(); } diff --git a/bindings/java/org_hyperdex_client_Client.definitions.c b/bindings/java/org_hyperdex_client_Client.definitions.c index 6435012f..01df4639 100644 --- a/bindings/java/org_hyperdex_client_Client.definitions.c +++ b/bindings/java/org_hyperdex_client_Client.definitions.c @@ -30,10 +30,10 @@ #include "visibility.h" JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key); +hyperdex_java_client_asynccall__spacename_key__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jstring key); JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key) +hyperdex_java_client_asynccall__spacename_key__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jstring key) { const char* in_space; const char* in_key; @@ -64,10 +64,10 @@ hyperdex_java_client_asynccall__spacename_key__status_attributes(JNIEnv* env, jo } JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key, jobject attributenames); +hyperdex_java_client_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jstring key, jobject attributenames); JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key, jobject attributenames) +hyperdex_java_client_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jstring key, jobject attributenames) { const char* in_space; const char* in_key; @@ -102,10 +102,10 @@ hyperdex_java_client_asynccall__spacename_key_attributenames__status_attributes( } JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject attributes); +hyperdex_java_client_asynccall__spacename_key_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jstring key, jobject attributes); JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject attributes) +hyperdex_java_client_asynccall__spacename_key_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jstring key, jobject attributes) { const char* in_space; const char* in_key; @@ -139,19 +139,19 @@ hyperdex_java_client_asynccall__spacename_key_attributes__status(JNIEnv* env, jo return op; } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1get(JNIEnv* env, jobject obj, jstring spacename, jobject key) +Java_org_hyperdex_client_Client_async_1get(JNIEnv* env, jobject obj, jstring spacename, jstring key) { return hyperdex_java_client_asynccall__spacename_key__status_attributes(env, obj, hyperdex_client_get, spacename, key); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1get_1partial(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributenames) +Java_org_hyperdex_client_Client_async_1get_1partial(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributenames) { return hyperdex_java_client_asynccall__spacename_key_attributenames__status_attributes(env, obj, hyperdex_client_get_partial, spacename, key, attributenames); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1put(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1put(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_put, spacename, key, attributes); } @@ -163,7 +163,7 @@ Java_org_hyperdex_client_Client_uxact_1put(JNIEnv* env, jobject obj, jobject mic } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1put(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1put(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_put, spacename, key, predicates, attributes); } @@ -175,19 +175,19 @@ Java_org_hyperdex_client_Client_async_1group_1put(JNIEnv* env, jobject obj, jstr } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1put_1if_1not_1exist(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1put_1if_1not_1exist(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_put_if_not_exist, spacename, key, attributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1del(JNIEnv* env, jobject obj, jstring spacename, jobject key) +Java_org_hyperdex_client_Client_async_1del(JNIEnv* env, jobject obj, jstring spacename, jstring key) { return hyperdex_java_client_asynccall__spacename_key__status(env, obj, hyperdex_client_del, spacename, key); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1del(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates) +Java_org_hyperdex_client_Client_async_1cond_1del(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates) { return hyperdex_java_client_asynccall__spacename_key_predicates__status(env, obj, hyperdex_client_cond_del, spacename, key, predicates); } @@ -199,7 +199,7 @@ Java_org_hyperdex_client_Client_async_1group_1del(JNIEnv* env, jobject obj, jstr } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_add, spacename, key, attributes); } @@ -211,7 +211,7 @@ Java_org_hyperdex_client_Client_uxact_1atomic_1add(JNIEnv* env, jobject obj, job } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_atomic_add, spacename, key, predicates, attributes); } @@ -223,7 +223,7 @@ Java_org_hyperdex_client_Client_async_1group_1atomic_1add(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_sub, spacename, key, attributes); } @@ -235,7 +235,7 @@ Java_org_hyperdex_client_Client_uxact_1atomic_1sub(JNIEnv* env, jobject obj, job } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_atomic_sub, spacename, key, predicates, attributes); } @@ -247,7 +247,7 @@ Java_org_hyperdex_client_Client_async_1group_1atomic_1sub(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_mul, spacename, key, attributes); } @@ -259,7 +259,7 @@ Java_org_hyperdex_client_Client_uxact_1atomic_1mul(JNIEnv* env, jobject obj, job } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_atomic_mul, spacename, key, predicates, attributes); } @@ -271,7 +271,7 @@ Java_org_hyperdex_client_Client_async_1group_1atomic_1mul(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_div, spacename, key, attributes); } @@ -283,7 +283,7 @@ Java_org_hyperdex_client_Client_uxact_1atomic_1div(JNIEnv* env, jobject obj, job } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_atomic_div, spacename, key, predicates, attributes); } @@ -295,13 +295,13 @@ Java_org_hyperdex_client_Client_async_1group_1atomic_1div(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1atomic_1mod(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1atomic_1mod(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_mod, spacename, key, attributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1atomic_1mod(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1atomic_1mod(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_atomic_mod, spacename, key, predicates, attributes); } @@ -313,7 +313,7 @@ Java_org_hyperdex_client_Client_async_1group_1atomic_1mod(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_and, spacename, key, attributes); } @@ -325,7 +325,7 @@ Java_org_hyperdex_client_Client_uxact_1atomic_1and(JNIEnv* env, jobject obj, job } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_atomic_and, spacename, key, predicates, attributes); } @@ -337,7 +337,7 @@ Java_org_hyperdex_client_Client_async_1group_1atomic_1and(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_or, spacename, key, attributes); } @@ -349,7 +349,7 @@ Java_org_hyperdex_client_Client_uxact_1atomic_1or(JNIEnv* env, jobject obj, jobj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_atomic_or, spacename, key, predicates, attributes); } @@ -361,13 +361,13 @@ Java_org_hyperdex_client_Client_async_1group_1atomic_1or(JNIEnv* env, jobject ob } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1atomic_1xor(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1atomic_1xor(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_xor, spacename, key, attributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1atomic_1xor(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1atomic_1xor(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_atomic_xor, spacename, key, predicates, attributes); } @@ -379,13 +379,13 @@ Java_org_hyperdex_client_Client_async_1group_1atomic_1xor(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1atomic_1min(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1atomic_1min(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_min, spacename, key, attributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1atomic_1min(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1atomic_1min(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_atomic_min, spacename, key, predicates, attributes); } @@ -397,13 +397,13 @@ Java_org_hyperdex_client_Client_async_1group_1atomic_1min(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1atomic_1max(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1atomic_1max(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_max, spacename, key, attributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1atomic_1max(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1atomic_1max(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_atomic_max, spacename, key, predicates, attributes); } @@ -415,7 +415,7 @@ Java_org_hyperdex_client_Client_async_1group_1atomic_1max(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_string_prepend, spacename, key, attributes); } @@ -427,7 +427,7 @@ Java_org_hyperdex_client_Client_uxact_1string_1prepend(JNIEnv* env, jobject obj, } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_string_prepend, spacename, key, predicates, attributes); } @@ -439,7 +439,7 @@ Java_org_hyperdex_client_Client_async_1group_1string_1prepend(JNIEnv* env, jobje } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_string_append, spacename, key, attributes); } @@ -451,7 +451,7 @@ Java_org_hyperdex_client_Client_uxact_1string_1append(JNIEnv* env, jobject obj, } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_string_append, spacename, key, predicates, attributes); } @@ -463,7 +463,7 @@ Java_org_hyperdex_client_Client_async_1group_1string_1append(JNIEnv* env, jobjec } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1list_1lpush(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1list_1lpush(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_list_lpush, spacename, key, attributes); } @@ -475,7 +475,7 @@ Java_org_hyperdex_client_Client_uxact_1list_1lpush(JNIEnv* env, jobject obj, job } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1list_1lpush(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1list_1lpush(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_list_lpush, spacename, key, predicates, attributes); } @@ -487,7 +487,7 @@ Java_org_hyperdex_client_Client_async_1group_1list_1lpush(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1list_1rpush(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1list_1rpush(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_list_rpush, spacename, key, attributes); } @@ -499,7 +499,7 @@ Java_org_hyperdex_client_Client_uxact_1list_1rpush(JNIEnv* env, jobject obj, job } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1list_1rpush(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1list_1rpush(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_list_rpush, spacename, key, predicates, attributes); } @@ -511,13 +511,13 @@ Java_org_hyperdex_client_Client_async_1group_1list_1rpush(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1set_1add(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1set_1add(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_set_add, spacename, key, attributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1set_1add(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1set_1add(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_set_add, spacename, key, predicates, attributes); } @@ -529,13 +529,13 @@ Java_org_hyperdex_client_Client_async_1group_1set_1add(JNIEnv* env, jobject obj, } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1set_1remove(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1set_1remove(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_set_remove, spacename, key, attributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1set_1remove(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1set_1remove(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_set_remove, spacename, key, predicates, attributes); } @@ -547,13 +547,13 @@ Java_org_hyperdex_client_Client_async_1group_1set_1remove(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1set_1intersect(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1set_1intersect(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_set_intersect, spacename, key, attributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1set_1intersect(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1set_1intersect(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_set_intersect, spacename, key, predicates, attributes); } @@ -565,13 +565,13 @@ Java_org_hyperdex_client_Client_async_1group_1set_1intersect(JNIEnv* env, jobjec } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1set_1union(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1set_1union(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_set_union, spacename, key, attributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1set_1union(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1set_1union(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_set_union, spacename, key, predicates, attributes); } @@ -583,7 +583,7 @@ Java_org_hyperdex_client_Client_async_1group_1set_1union(JNIEnv* env, jobject ob } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1document_1rename(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1document_1rename(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_document_rename, spacename, key, attributes); } @@ -595,7 +595,7 @@ Java_org_hyperdex_client_Client_uxact_1document_1rename(JNIEnv* env, jobject obj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1document_1rename(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1document_1rename(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_document_rename, spacename, key, predicates, attributes); } @@ -607,7 +607,7 @@ Java_org_hyperdex_client_Client_async_1group_1document_1rename(JNIEnv* env, jobj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1document_1unset(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1document_1unset(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_document_unset, spacename, key, attributes); } @@ -619,7 +619,7 @@ Java_org_hyperdex_client_Client_uxact_1document_1unset(JNIEnv* env, jobject obj, } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1document_1unset(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1document_1unset(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_document_unset, spacename, key, predicates, attributes); } @@ -631,13 +631,13 @@ Java_org_hyperdex_client_Client_async_1group_1document_1unset(JNIEnv* env, jobje } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1add(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1add(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_add, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1add(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1add(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_add, spacename, key, predicates, mapattributes); } @@ -649,13 +649,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1add(JNIEnv* env, jobject obj, } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1remove(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject attributes) +Java_org_hyperdex_client_Client_async_1map_1remove(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_map_remove, spacename, key, attributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1remove(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1remove(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(env, obj, hyperdex_client_cond_map_remove, spacename, key, predicates, attributes); } @@ -667,13 +667,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1remove(JNIEnv* env, jobject o } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_atomic_add, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_atomic_add, spacename, key, predicates, mapattributes); } @@ -685,13 +685,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1add(JNIEnv* env, jobj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_atomic_sub, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_atomic_sub, spacename, key, predicates, mapattributes); } @@ -703,13 +703,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1sub(JNIEnv* env, jobj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_atomic_mul, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_atomic_mul, spacename, key, predicates, mapattributes); } @@ -721,13 +721,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mul(JNIEnv* env, jobj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_atomic_div, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_atomic_div, spacename, key, predicates, mapattributes); } @@ -739,13 +739,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1div(JNIEnv* env, jobj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1atomic_1mod(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1atomic_1mod(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_atomic_mod, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mod(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mod(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_atomic_mod, spacename, key, predicates, mapattributes); } @@ -757,13 +757,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mod(JNIEnv* env, jobj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_atomic_and, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_atomic_and, spacename, key, predicates, mapattributes); } @@ -775,13 +775,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1and(JNIEnv* env, jobj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_atomic_or, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_atomic_or, spacename, key, predicates, mapattributes); } @@ -793,13 +793,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1or(JNIEnv* env, jobje } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1atomic_1xor(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1atomic_1xor(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_atomic_xor, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1xor(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1xor(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_atomic_xor, spacename, key, predicates, mapattributes); } @@ -811,13 +811,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1xor(JNIEnv* env, jobj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_string_prepend, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_string_prepend, spacename, key, predicates, mapattributes); } @@ -829,13 +829,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1string_1prepend(JNIEnv* env, } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_string_append, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_string_append, spacename, key, predicates, mapattributes); } @@ -847,13 +847,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1string_1append(JNIEnv* env, j } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1atomic_1min(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1atomic_1min(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_atomic_min, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1min(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1min(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_atomic_min, spacename, key, predicates, mapattributes); } @@ -865,13 +865,13 @@ Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1min(JNIEnv* env, jobj } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1map_1atomic_1max(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1map_1atomic_1max(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_mapattributes__status(env, obj, hyperdex_client_map_atomic_max, spacename, key, mapattributes); } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1max(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject mapattributes) +Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1max(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject mapattributes) { return hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(env, obj, hyperdex_client_cond_map_atomic_max, spacename, key, predicates, mapattributes); } diff --git a/bindings/java/org_hyperdex_client_Client.h b/bindings/java/org_hyperdex_client_Client.h index 94c30d41..1cefda55 100644 --- a/bindings/java/org_hyperdex_client_Client.h +++ b/bindings/java/org_hyperdex_client_Client.h @@ -12,7 +12,7 @@ extern "C" { * Method: initialize * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_initialize +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_initialize (JNIEnv *, jclass); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client * Method: terminate * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_terminate +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_terminate (JNIEnv *, jclass); /* @@ -28,7 +28,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client * Method: _create * Signature: (Ljava/lang/String;I)V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1create +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1create (JNIEnv *, jobject, jstring, jint); /* @@ -36,7 +36,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client * Method: _destroy * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1destroy +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1destroy (JNIEnv *, jobject); /* @@ -44,7 +44,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client * Method: inner_loop * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Client_inner_1loop +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Client_inner_1loop (JNIEnv *, jobject); /* @@ -52,7 +52,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Clien * Method: async_get * Signature: (Ljava/lang/String;Ljava/lang/Object;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get (JNIEnv *, jobject, jstring, jobject); /* @@ -60,7 +60,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_get_partial * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/List;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get_1partial +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get_1partial (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -68,15 +68,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_put * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_put + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1put + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_put * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1put +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1put (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -84,7 +92,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_put * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1put +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1put (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -92,7 +100,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_put_if_not_exist * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put_1if_1not_1exist +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put_1if_1not_1exist (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -100,7 +108,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_del * Signature: (Ljava/lang/String;Ljava/lang/Object;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1del +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1del (JNIEnv *, jobject, jstring, jobject); /* @@ -108,7 +116,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_del * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1del +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1del (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -116,7 +124,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_del * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1del +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1del (JNIEnv *, jobject, jstring, jobject); /* @@ -124,15 +132,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_atomic_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_atomic_add + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1add + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -140,7 +156,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_atomic_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -148,15 +164,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_atomic_sub * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_atomic_sub + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1sub + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_sub * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -164,7 +188,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_atomic_sub * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -172,15 +196,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_atomic_mul * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_atomic_mul + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1mul + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_mul * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -188,7 +220,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_atomic_mul * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -196,15 +228,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_atomic_div * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_atomic_div + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1div + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_div * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -212,7 +252,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_atomic_div * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -220,7 +260,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_atomic_mod * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -228,7 +268,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_atomic_mod * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -236,7 +276,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_atomic_mod * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -244,15 +284,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_atomic_and * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_atomic_and + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1and + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_and * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -260,7 +308,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_atomic_and * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -268,15 +316,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_atomic_or * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_atomic_or + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1or + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_or * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -284,7 +340,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_atomic_or * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -292,7 +348,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_atomic_xor * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -300,7 +356,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_atomic_xor * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -308,7 +364,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_atomic_xor * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -316,7 +372,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_atomic_min * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -324,7 +380,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_atomic_min * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -332,7 +388,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_atomic_min * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -340,7 +396,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_atomic_max * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -348,7 +404,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_atomic_max * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -356,7 +412,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_atomic_max * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -364,15 +420,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_string_prepend * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_string_prepend + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1string_1prepend + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_string_prepend * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -380,7 +444,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_string_prepend * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -388,15 +452,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_string_append * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_string_append + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1string_1append + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_string_append * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -404,7 +476,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_string_append * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -412,15 +484,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_list_lpush * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1lpush +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1lpush (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_list_lpush + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1list_1lpush + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_list_lpush * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1lpush +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1lpush (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -428,7 +508,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_list_lpush * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1lpush +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1lpush (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -436,15 +516,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_list_rpush * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1rpush +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1rpush (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_list_rpush + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1list_1rpush + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_list_rpush * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1rpush +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1rpush (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -452,7 +540,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_list_rpush * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1rpush +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1rpush (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -460,7 +548,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_set_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -468,7 +556,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_set_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1add (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -476,7 +564,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_set_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -484,7 +572,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_set_remove * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1remove (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -492,7 +580,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_set_remove * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1remove (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -500,7 +588,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_set_remove * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1remove (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -508,7 +596,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_set_intersect * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1intersect +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1intersect (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -516,7 +604,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_set_intersect * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1intersect +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1intersect (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -524,7 +612,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_set_intersect * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1intersect +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1intersect (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -532,7 +620,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_set_union * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1union +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1union (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -540,7 +628,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_set_union * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1union +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1union (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -548,7 +636,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_set_union * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1union +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1union (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -556,15 +644,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_document_rename * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1rename +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1rename (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_document_rename + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1document_1rename + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_document_rename * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1rename +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1rename (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -572,7 +668,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_document_rename * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1rename +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1rename (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -580,15 +676,23 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_document_unset * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1unset +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1unset (JNIEnv *, jobject, jstring, jobject, jobject); +/* + * Class: org_hyperdex_client_Client + * Method: uxact_document_unset + * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1document_1unset + (JNIEnv *, jobject, jobject, jobject); + /* * Class: org_hyperdex_client_Client * Method: async_cond_document_unset * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1unset +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1unset (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -596,7 +700,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_document_unset * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1unset +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1unset (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -604,7 +708,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -612,7 +716,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1add (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -620,7 +724,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -628,7 +732,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_remove * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1remove (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -636,7 +740,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_remove * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1remove (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -644,7 +748,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_remove * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1remove +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1remove (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -652,7 +756,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_atomic_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -660,7 +764,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_atomic_add * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -668,7 +772,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_atomic_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1add +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -676,7 +780,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_atomic_sub * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -684,7 +788,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_atomic_sub * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -692,7 +796,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_atomic_sub * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1sub +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -700,7 +804,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_atomic_mul * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -708,7 +812,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_atomic_mul * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -716,7 +820,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_atomic_mul * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mul +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -724,7 +828,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_atomic_div * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -732,7 +836,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_atomic_div * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -740,7 +844,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_atomic_div * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1div +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -748,7 +852,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_atomic_mod * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -756,7 +860,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_atomic_mod * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -764,7 +868,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_atomic_mod * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mod +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -772,7 +876,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_atomic_and * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -780,7 +884,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_atomic_and * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -788,7 +892,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_atomic_and * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1and +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -796,7 +900,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_atomic_or * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -804,7 +908,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_atomic_or * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -812,7 +916,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_atomic_or * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1or +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -820,7 +924,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_atomic_xor * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -828,7 +932,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_atomic_xor * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -836,7 +940,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_atomic_xor * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1xor +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -844,7 +948,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_string_prepend * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -852,7 +956,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_string_prepend * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -860,7 +964,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_string_prepend * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1prepend +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -868,7 +972,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_string_append * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -876,7 +980,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_string_append * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -884,7 +988,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_string_append * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1append +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -892,7 +996,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_atomic_min * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -900,7 +1004,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_atomic_min * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -908,7 +1012,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_atomic_min * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1min +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -916,7 +1020,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_map_atomic_max * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -924,7 +1028,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_cond_map_atomic_max * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject, jobject); /* @@ -932,7 +1036,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_group_map_atomic_max * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1max +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -940,7 +1044,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: search * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_search +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_search (JNIEnv *, jobject, jstring, jobject); /* @@ -948,7 +1052,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_search_describe * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1search_1describe +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1search_1describe (JNIEnv *, jobject, jstring, jobject); /* @@ -956,7 +1060,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: sorted_search * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;IZ)Lorg/hyperdex/client/Iterator; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_sorted_1search +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_sorted_1search (JNIEnv *, jobject, jstring, jobject, jstring, jint, jboolean); /* @@ -964,17 +1068,9 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Cli * Method: async_count * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1count +JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1count (JNIEnv *, jobject, jstring, jobject); -/* - * Class: org_hyperdex_client_Client - * Method: microtransaction_put - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_microtransaction_1put - (JNIEnv *, jobject, jobject, jobject); - #ifdef __cplusplus } #endif diff --git a/bindings/java/org_hyperdex_client_Deferred.h b/bindings/java/org_hyperdex_client_Deferred.h index 5c7aadc2..f00a7a69 100644 --- a/bindings/java/org_hyperdex_client_Deferred.h +++ b/bindings/java/org_hyperdex_client_Deferred.h @@ -12,7 +12,7 @@ extern "C" { * Method: _create * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1create +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1create (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferr * Method: _destroy * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1destroy +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1destroy (JNIEnv *, jobject); /* @@ -28,7 +28,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferr * Method: waitForIt * Signature: ()Ljava/lang/Object; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Deferred_waitForIt +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Deferred_waitForIt (JNIEnv *, jobject); /* @@ -36,7 +36,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Def * Method: callback * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred_callback +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred_callback (JNIEnv *, jobject); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_GreaterEqual.h b/bindings/java/org_hyperdex_client_GreaterEqual.h index dd301afe..e2071398 100644 --- a/bindings/java/org_hyperdex_client_GreaterEqual.h +++ b/bindings/java/org_hyperdex_client_GreaterEqual.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterEqual_checksSize +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterEqual_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Great * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterEqual_convertChecks +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterEqual_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_GreaterThan.h b/bindings/java/org_hyperdex_client_GreaterThan.h index 82c5c340..f9ef32c6 100644 --- a/bindings/java/org_hyperdex_client_GreaterThan.h +++ b/bindings/java/org_hyperdex_client_GreaterThan.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterThan_checksSize +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterThan_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Great * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterThan_convertChecks +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_GreaterThan_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_Iterator.h b/bindings/java/org_hyperdex_client_Iterator.h index 7caf3ef6..c40147c8 100644 --- a/bindings/java/org_hyperdex_client_Iterator.h +++ b/bindings/java/org_hyperdex_client_Iterator.h @@ -12,7 +12,7 @@ extern "C" { * Method: _create * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator__1create +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator__1create (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterat * Method: _destroy * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator__1destroy +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator__1destroy (JNIEnv *, jobject); /* @@ -28,7 +28,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterat * Method: finished * Signature: ()Z */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jboolean JNICALL Java_org_hyperdex_client_Iterator_finished +JNIEXPORT HYPERDEX_API jboolean JNICALL Java_org_hyperdex_client_Iterator_finished (JNIEnv *, jobject); /* @@ -36,7 +36,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jboolean JNICALL Java_org_hyperdex_client_It * Method: callback * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator_callback +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Iterator_callback (JNIEnv *, jobject); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_LengthEquals.h b/bindings/java/org_hyperdex_client_LengthEquals.h index c740b34c..ed29761c 100644 --- a/bindings/java/org_hyperdex_client_LengthEquals.h +++ b/bindings/java/org_hyperdex_client_LengthEquals.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthEquals_checksSize +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthEquals_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Lengt * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthEquals_convertChecks +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthEquals_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_LengthGreaterEqual.h b/bindings/java/org_hyperdex_client_LengthGreaterEqual.h index 19216397..c79ddaa1 100644 --- a/bindings/java/org_hyperdex_client_LengthGreaterEqual.h +++ b/bindings/java/org_hyperdex_client_LengthGreaterEqual.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthGreaterEqual_checksSize +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthGreaterEqual_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Lengt * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthGreaterEqual_convertChecks +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthGreaterEqual_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_LengthLessEqual.h b/bindings/java/org_hyperdex_client_LengthLessEqual.h index c6ea4582..a9948b6e 100644 --- a/bindings/java/org_hyperdex_client_LengthLessEqual.h +++ b/bindings/java/org_hyperdex_client_LengthLessEqual.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthLessEqual_checksSize +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthLessEqual_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Lengt * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthLessEqual_convertChecks +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LengthLessEqual_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_LessEqual.h b/bindings/java/org_hyperdex_client_LessEqual.h index e04e84cc..344cc82b 100644 --- a/bindings/java/org_hyperdex_client_LessEqual.h +++ b/bindings/java/org_hyperdex_client_LessEqual.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessEqual_checksSize +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessEqual_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessE * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessEqual_convertChecks +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessEqual_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_LessThan.h b/bindings/java/org_hyperdex_client_LessThan.h index 8a86b250..886a9793 100644 --- a/bindings/java/org_hyperdex_client_LessThan.h +++ b/bindings/java/org_hyperdex_client_LessThan.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessThan_checksSize +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessThan_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessT * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessThan_convertChecks +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_LessThan_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_Range.h b/bindings/java/org_hyperdex_client_Range.h index 70180d4e..7c973762 100644 --- a/bindings/java/org_hyperdex_client_Range.h +++ b/bindings/java/org_hyperdex_client_Range.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Range_checksSize +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Range_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Range * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Range_convertChecks +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Range_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/bindings/java/org_hyperdex_client_Regex.h b/bindings/java/org_hyperdex_client_Regex.h index 5f7323a6..cf245786 100644 --- a/bindings/java/org_hyperdex_client_Regex.h +++ b/bindings/java/org_hyperdex_client_Regex.h @@ -12,7 +12,7 @@ extern "C" { * Method: checksSize * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Regex_checksSize +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Regex_checksSize (JNIEnv *, jobject); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Regex * Method: convertChecks * Signature: (JJJ)J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Regex_convertChecks +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Regex_convertChecks (JNIEnv *, jobject, jlong, jlong, jlong); #ifdef __cplusplus diff --git a/doc/java/client/ops.tex b/doc/java/client/ops.tex index b777046e..b5eb5016 100644 --- a/doc/java/client/ops.tex +++ b/doc/java/client/ops.tex @@ -37,14 +37,14 @@ \subsubsection{\code{get}} \begin{javacode} public Map get( String spacename, - Object key) throws HyperDexClientException + String key) throws HyperDexClientException \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \end{itemize} @@ -61,14 +61,14 @@ \subsubsection{\code{async\_get}} \begin{javacode} public Deferred async_get( String spacename, - Object key) throws HyperDexClientException + String key) throws HyperDexClientException \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \end{itemize} @@ -88,7 +88,7 @@ \subsubsection{\code{get\_partial}} \begin{javacode} public Map get_partial( String spacename, - Object key, + String key, List attributenames) throws HyperDexClientException \end{javacode} @@ -96,7 +96,7 @@ \subsubsection{\code{get\_partial}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{List attributenames}\\ \input{\topdir/java/client/fragments/in_asynccall_attributenames} @@ -115,7 +115,7 @@ \subsubsection{\code{async\_get\_partial}} \begin{javacode} public Deferred async_get_partial( String spacename, - Object key, + String key, List attributenames) throws HyperDexClientException \end{javacode} @@ -123,7 +123,7 @@ \subsubsection{\code{async\_get\_partial}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{List attributenames}\\ \input{\topdir/java/client/fragments/in_asynccall_attributenames} @@ -145,7 +145,7 @@ \subsubsection{\code{put}} \begin{javacode} public Boolean put( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -153,7 +153,7 @@ \subsubsection{\code{put}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -172,7 +172,7 @@ \subsubsection{\code{async\_put}} \begin{javacode} public Deferred async_put( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -180,7 +180,7 @@ \subsubsection{\code{async\_put}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -200,12 +200,14 @@ \subsubsection{\code{uxact\_put}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_put(Object microtransaction, Map attributes) +public Iterator uxact_put( + Microtransaction microtransaction, + Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -225,7 +227,7 @@ \subsubsection{\code{cond\_put}} \begin{javacode} public Boolean cond_put( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -234,7 +236,7 @@ \subsubsection{\code{cond\_put}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -255,7 +257,7 @@ \subsubsection{\code{async\_cond\_put}} \begin{javacode} public Deferred async_cond_put( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -264,7 +266,7 @@ \subsubsection{\code{async\_cond\_put}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -345,7 +347,7 @@ \subsubsection{\code{put\_if\_not\_exist}} \begin{javacode} public Boolean put_if_not_exist( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -353,7 +355,7 @@ \subsubsection{\code{put\_if\_not\_exist}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -372,7 +374,7 @@ \subsubsection{\code{async\_put\_if\_not\_exist}} \begin{javacode} public Deferred async_put_if_not_exist( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -380,7 +382,7 @@ \subsubsection{\code{async\_put\_if\_not\_exist}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -400,14 +402,14 @@ \subsubsection{\code{del}} \paragraph{Definition:} \begin{javacode} -public Boolean del(String spacename, Object key) throws HyperDexClientException +public Boolean del(String spacename, String key) throws HyperDexClientException \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \end{itemize} @@ -424,14 +426,14 @@ \subsubsection{\code{async\_del}} \begin{javacode} public Deferred async_del( String spacename, - Object key) throws HyperDexClientException + String key) throws HyperDexClientException \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \end{itemize} @@ -451,7 +453,7 @@ \subsubsection{\code{cond\_del}} \begin{javacode} public Boolean cond_del( String spacename, - Object key, + String key, Map predicates) throws HyperDexClientException \end{javacode} @@ -459,7 +461,7 @@ \subsubsection{\code{cond\_del}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -478,7 +480,7 @@ \subsubsection{\code{async\_cond\_del}} \begin{javacode} public Deferred async_cond_del( String spacename, - Object key, + String key, Map predicates) throws HyperDexClientException \end{javacode} @@ -486,7 +488,7 @@ \subsubsection{\code{async\_cond\_del}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -559,7 +561,7 @@ \subsubsection{\code{atomic\_add}} \begin{javacode} public Boolean atomic_add( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -567,7 +569,7 @@ \subsubsection{\code{atomic\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -586,7 +588,7 @@ \subsubsection{\code{async\_atomic\_add}} \begin{javacode} public Deferred async_atomic_add( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -594,7 +596,7 @@ \subsubsection{\code{async\_atomic\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -615,13 +617,13 @@ \subsubsection{\code{uxact\_atomic\_add}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_atomic_add( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -641,7 +643,7 @@ \subsubsection{\code{cond\_atomic\_add}} \begin{javacode} public Boolean cond_atomic_add( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -650,7 +652,7 @@ \subsubsection{\code{cond\_atomic\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -671,7 +673,7 @@ \subsubsection{\code{async\_cond\_atomic\_add}} \begin{javacode} public Deferred async_cond_atomic_add( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -680,7 +682,7 @@ \subsubsection{\code{async\_cond\_atomic\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -761,7 +763,7 @@ \subsubsection{\code{atomic\_sub}} \begin{javacode} public Boolean atomic_sub( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -769,7 +771,7 @@ \subsubsection{\code{atomic\_sub}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -788,7 +790,7 @@ \subsubsection{\code{async\_atomic\_sub}} \begin{javacode} public Deferred async_atomic_sub( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -796,7 +798,7 @@ \subsubsection{\code{async\_atomic\_sub}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -817,13 +819,13 @@ \subsubsection{\code{uxact\_atomic\_sub}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_atomic_sub( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -843,7 +845,7 @@ \subsubsection{\code{cond\_atomic\_sub}} \begin{javacode} public Boolean cond_atomic_sub( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -852,7 +854,7 @@ \subsubsection{\code{cond\_atomic\_sub}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -873,7 +875,7 @@ \subsubsection{\code{async\_cond\_atomic\_sub}} \begin{javacode} public Deferred async_cond_atomic_sub( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -882,7 +884,7 @@ \subsubsection{\code{async\_cond\_atomic\_sub}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -963,7 +965,7 @@ \subsubsection{\code{atomic\_mul}} \begin{javacode} public Boolean atomic_mul( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -971,7 +973,7 @@ \subsubsection{\code{atomic\_mul}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -990,7 +992,7 @@ \subsubsection{\code{async\_atomic\_mul}} \begin{javacode} public Deferred async_atomic_mul( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -998,7 +1000,7 @@ \subsubsection{\code{async\_atomic\_mul}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -1019,13 +1021,13 @@ \subsubsection{\code{uxact\_atomic\_mul}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_atomic_mul( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -1045,7 +1047,7 @@ \subsubsection{\code{cond\_atomic\_mul}} \begin{javacode} public Boolean cond_atomic_mul( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -1054,7 +1056,7 @@ \subsubsection{\code{cond\_atomic\_mul}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -1075,7 +1077,7 @@ \subsubsection{\code{async\_cond\_atomic\_mul}} \begin{javacode} public Deferred async_cond_atomic_mul( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -1084,7 +1086,7 @@ \subsubsection{\code{async\_cond\_atomic\_mul}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -1165,7 +1167,7 @@ \subsubsection{\code{atomic\_div}} \begin{javacode} public Boolean atomic_div( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -1173,7 +1175,7 @@ \subsubsection{\code{atomic\_div}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -1192,7 +1194,7 @@ \subsubsection{\code{async\_atomic\_div}} \begin{javacode} public Deferred async_atomic_div( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -1200,7 +1202,7 @@ \subsubsection{\code{async\_atomic\_div}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -1221,13 +1223,13 @@ \subsubsection{\code{uxact\_atomic\_div}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_atomic_div( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -1247,7 +1249,7 @@ \subsubsection{\code{cond\_atomic\_div}} \begin{javacode} public Boolean cond_atomic_div( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -1256,7 +1258,7 @@ \subsubsection{\code{cond\_atomic\_div}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -1277,7 +1279,7 @@ \subsubsection{\code{async\_cond\_atomic\_div}} \begin{javacode} public Deferred async_cond_atomic_div( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -1286,7 +1288,7 @@ \subsubsection{\code{async\_cond\_atomic\_div}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -1367,7 +1369,7 @@ \subsubsection{\code{atomic\_mod}} \begin{javacode} public Boolean atomic_mod( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -1375,7 +1377,7 @@ \subsubsection{\code{atomic\_mod}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -1394,7 +1396,7 @@ \subsubsection{\code{async\_atomic\_mod}} \begin{javacode} public Deferred async_atomic_mod( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -1402,7 +1404,7 @@ \subsubsection{\code{async\_atomic\_mod}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -1424,7 +1426,7 @@ \subsubsection{\code{cond\_atomic\_mod}} \begin{javacode} public Boolean cond_atomic_mod( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -1433,7 +1435,7 @@ \subsubsection{\code{cond\_atomic\_mod}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -1454,7 +1456,7 @@ \subsubsection{\code{async\_cond\_atomic\_mod}} \begin{javacode} public Deferred async_cond_atomic_mod( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -1463,7 +1465,7 @@ \subsubsection{\code{async\_cond\_atomic\_mod}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -1544,7 +1546,7 @@ \subsubsection{\code{atomic\_and}} \begin{javacode} public Boolean atomic_and( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -1552,7 +1554,7 @@ \subsubsection{\code{atomic\_and}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -1571,7 +1573,7 @@ \subsubsection{\code{async\_atomic\_and}} \begin{javacode} public Deferred async_atomic_and( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -1579,7 +1581,7 @@ \subsubsection{\code{async\_atomic\_and}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -1600,13 +1602,13 @@ \subsubsection{\code{uxact\_atomic\_and}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_atomic_and( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -1626,7 +1628,7 @@ \subsubsection{\code{cond\_atomic\_and}} \begin{javacode} public Boolean cond_atomic_and( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -1635,7 +1637,7 @@ \subsubsection{\code{cond\_atomic\_and}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -1656,7 +1658,7 @@ \subsubsection{\code{async\_cond\_atomic\_and}} \begin{javacode} public Deferred async_cond_atomic_and( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -1665,7 +1667,7 @@ \subsubsection{\code{async\_cond\_atomic\_and}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -1746,7 +1748,7 @@ \subsubsection{\code{atomic\_or}} \begin{javacode} public Boolean atomic_or( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -1754,7 +1756,7 @@ \subsubsection{\code{atomic\_or}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -1773,7 +1775,7 @@ \subsubsection{\code{async\_atomic\_or}} \begin{javacode} public Deferred async_atomic_or( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -1781,7 +1783,7 @@ \subsubsection{\code{async\_atomic\_or}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -1802,13 +1804,13 @@ \subsubsection{\code{uxact\_atomic\_or}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_atomic_or( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -1828,7 +1830,7 @@ \subsubsection{\code{cond\_atomic\_or}} \begin{javacode} public Boolean cond_atomic_or( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -1837,7 +1839,7 @@ \subsubsection{\code{cond\_atomic\_or}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -1858,7 +1860,7 @@ \subsubsection{\code{async\_cond\_atomic\_or}} \begin{javacode} public Deferred async_cond_atomic_or( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -1867,7 +1869,7 @@ \subsubsection{\code{async\_cond\_atomic\_or}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -1948,7 +1950,7 @@ \subsubsection{\code{atomic\_xor}} \begin{javacode} public Boolean atomic_xor( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -1956,7 +1958,7 @@ \subsubsection{\code{atomic\_xor}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -1975,7 +1977,7 @@ \subsubsection{\code{async\_atomic\_xor}} \begin{javacode} public Deferred async_atomic_xor( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -1983,7 +1985,7 @@ \subsubsection{\code{async\_atomic\_xor}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2005,7 +2007,7 @@ \subsubsection{\code{cond\_atomic\_xor}} \begin{javacode} public Boolean cond_atomic_xor( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2014,7 +2016,7 @@ \subsubsection{\code{cond\_atomic\_xor}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2035,7 +2037,7 @@ \subsubsection{\code{async\_cond\_atomic\_xor}} \begin{javacode} public Deferred async_cond_atomic_xor( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2044,7 +2046,7 @@ \subsubsection{\code{async\_cond\_atomic\_xor}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2125,7 +2127,7 @@ \subsubsection{\code{atomic\_min}} \begin{javacode} public Boolean atomic_min( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -2133,7 +2135,7 @@ \subsubsection{\code{atomic\_min}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2152,7 +2154,7 @@ \subsubsection{\code{async\_atomic\_min}} \begin{javacode} public Deferred async_atomic_min( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -2160,7 +2162,7 @@ \subsubsection{\code{async\_atomic\_min}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2182,7 +2184,7 @@ \subsubsection{\code{cond\_atomic\_min}} \begin{javacode} public Boolean cond_atomic_min( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2191,7 +2193,7 @@ \subsubsection{\code{cond\_atomic\_min}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2212,7 +2214,7 @@ \subsubsection{\code{async\_cond\_atomic\_min}} \begin{javacode} public Deferred async_cond_atomic_min( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2221,7 +2223,7 @@ \subsubsection{\code{async\_cond\_atomic\_min}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2302,7 +2304,7 @@ \subsubsection{\code{atomic\_max}} \begin{javacode} public Boolean atomic_max( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -2310,7 +2312,7 @@ \subsubsection{\code{atomic\_max}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2329,7 +2331,7 @@ \subsubsection{\code{async\_atomic\_max}} \begin{javacode} public Deferred async_atomic_max( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -2337,7 +2339,7 @@ \subsubsection{\code{async\_atomic\_max}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2359,7 +2361,7 @@ \subsubsection{\code{cond\_atomic\_max}} \begin{javacode} public Boolean cond_atomic_max( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2368,7 +2370,7 @@ \subsubsection{\code{cond\_atomic\_max}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2389,7 +2391,7 @@ \subsubsection{\code{async\_cond\_atomic\_max}} \begin{javacode} public Deferred async_cond_atomic_max( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2398,7 +2400,7 @@ \subsubsection{\code{async\_cond\_atomic\_max}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2479,7 +2481,7 @@ \subsubsection{\code{string\_prepend}} \begin{javacode} public Boolean string_prepend( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -2487,7 +2489,7 @@ \subsubsection{\code{string\_prepend}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2506,7 +2508,7 @@ \subsubsection{\code{async\_string\_prepend}} \begin{javacode} public Deferred async_string_prepend( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -2514,7 +2516,7 @@ \subsubsection{\code{async\_string\_prepend}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2535,13 +2537,13 @@ \subsubsection{\code{uxact\_string\_prepend}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_string_prepend( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -2561,7 +2563,7 @@ \subsubsection{\code{cond\_string\_prepend}} \begin{javacode} public Boolean cond_string_prepend( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2570,7 +2572,7 @@ \subsubsection{\code{cond\_string\_prepend}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2591,7 +2593,7 @@ \subsubsection{\code{async\_cond\_string\_prepend}} \begin{javacode} public Deferred async_cond_string_prepend( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2600,7 +2602,7 @@ \subsubsection{\code{async\_cond\_string\_prepend}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2681,7 +2683,7 @@ \subsubsection{\code{string\_append}} \begin{javacode} public Boolean string_append( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -2689,7 +2691,7 @@ \subsubsection{\code{string\_append}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2708,7 +2710,7 @@ \subsubsection{\code{async\_string\_append}} \begin{javacode} public Deferred async_string_append( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -2716,7 +2718,7 @@ \subsubsection{\code{async\_string\_append}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2737,13 +2739,13 @@ \subsubsection{\code{uxact\_string\_append}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_string_append( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -2763,7 +2765,7 @@ \subsubsection{\code{cond\_string\_append}} \begin{javacode} public Boolean cond_string_append( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2772,7 +2774,7 @@ \subsubsection{\code{cond\_string\_append}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2793,7 +2795,7 @@ \subsubsection{\code{async\_cond\_string\_append}} \begin{javacode} public Deferred async_cond_string_append( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2802,7 +2804,7 @@ \subsubsection{\code{async\_cond\_string\_append}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2883,7 +2885,7 @@ \subsubsection{\code{list\_lpush}} \begin{javacode} public Boolean list_lpush( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -2891,7 +2893,7 @@ \subsubsection{\code{list\_lpush}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2910,7 +2912,7 @@ \subsubsection{\code{async\_list\_lpush}} \begin{javacode} public Deferred async_list_lpush( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -2918,7 +2920,7 @@ \subsubsection{\code{async\_list\_lpush}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -2939,13 +2941,13 @@ \subsubsection{\code{uxact\_list\_lpush}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_list_lpush( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -2965,7 +2967,7 @@ \subsubsection{\code{cond\_list\_lpush}} \begin{javacode} public Boolean cond_list_lpush( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -2974,7 +2976,7 @@ \subsubsection{\code{cond\_list\_lpush}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -2995,7 +2997,7 @@ \subsubsection{\code{async\_cond\_list\_lpush}} \begin{javacode} public Deferred async_cond_list_lpush( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3004,7 +3006,7 @@ \subsubsection{\code{async\_cond\_list\_lpush}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3085,7 +3087,7 @@ \subsubsection{\code{list\_rpush}} \begin{javacode} public Boolean list_rpush( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -3093,7 +3095,7 @@ \subsubsection{\code{list\_rpush}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -3112,7 +3114,7 @@ \subsubsection{\code{async\_list\_rpush}} \begin{javacode} public Deferred async_list_rpush( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -3120,7 +3122,7 @@ \subsubsection{\code{async\_list\_rpush}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -3141,13 +3143,13 @@ \subsubsection{\code{uxact\_list\_rpush}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_list_rpush( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -3167,7 +3169,7 @@ \subsubsection{\code{cond\_list\_rpush}} \begin{javacode} public Boolean cond_list_rpush( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3176,7 +3178,7 @@ \subsubsection{\code{cond\_list\_rpush}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3197,7 +3199,7 @@ \subsubsection{\code{async\_cond\_list\_rpush}} \begin{javacode} public Deferred async_cond_list_rpush( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3206,7 +3208,7 @@ \subsubsection{\code{async\_cond\_list\_rpush}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3287,7 +3289,7 @@ \subsubsection{\code{set\_add}} \begin{javacode} public Boolean set_add( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -3295,7 +3297,7 @@ \subsubsection{\code{set\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -3314,7 +3316,7 @@ \subsubsection{\code{async\_set\_add}} \begin{javacode} public Deferred async_set_add( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -3322,7 +3324,7 @@ \subsubsection{\code{async\_set\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -3344,7 +3346,7 @@ \subsubsection{\code{cond\_set\_add}} \begin{javacode} public Boolean cond_set_add( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3353,7 +3355,7 @@ \subsubsection{\code{cond\_set\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3374,7 +3376,7 @@ \subsubsection{\code{async\_cond\_set\_add}} \begin{javacode} public Deferred async_cond_set_add( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3383,7 +3385,7 @@ \subsubsection{\code{async\_cond\_set\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3464,7 +3466,7 @@ \subsubsection{\code{set\_remove}} \begin{javacode} public Boolean set_remove( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -3472,7 +3474,7 @@ \subsubsection{\code{set\_remove}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -3491,7 +3493,7 @@ \subsubsection{\code{async\_set\_remove}} \begin{javacode} public Deferred async_set_remove( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -3499,7 +3501,7 @@ \subsubsection{\code{async\_set\_remove}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -3521,7 +3523,7 @@ \subsubsection{\code{cond\_set\_remove}} \begin{javacode} public Boolean cond_set_remove( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3530,7 +3532,7 @@ \subsubsection{\code{cond\_set\_remove}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3551,7 +3553,7 @@ \subsubsection{\code{async\_cond\_set\_remove}} \begin{javacode} public Deferred async_cond_set_remove( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3560,7 +3562,7 @@ \subsubsection{\code{async\_cond\_set\_remove}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3641,7 +3643,7 @@ \subsubsection{\code{set\_intersect}} \begin{javacode} public Boolean set_intersect( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -3649,7 +3651,7 @@ \subsubsection{\code{set\_intersect}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -3668,7 +3670,7 @@ \subsubsection{\code{async\_set\_intersect}} \begin{javacode} public Deferred async_set_intersect( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -3676,7 +3678,7 @@ \subsubsection{\code{async\_set\_intersect}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -3698,7 +3700,7 @@ \subsubsection{\code{cond\_set\_intersect}} \begin{javacode} public Boolean cond_set_intersect( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3707,7 +3709,7 @@ \subsubsection{\code{cond\_set\_intersect}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3728,7 +3730,7 @@ \subsubsection{\code{async\_cond\_set\_intersect}} \begin{javacode} public Deferred async_cond_set_intersect( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3737,7 +3739,7 @@ \subsubsection{\code{async\_cond\_set\_intersect}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3818,7 +3820,7 @@ \subsubsection{\code{set\_union}} \begin{javacode} public Boolean set_union( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -3826,7 +3828,7 @@ \subsubsection{\code{set\_union}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -3845,7 +3847,7 @@ \subsubsection{\code{async\_set\_union}} \begin{javacode} public Deferred async_set_union( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -3853,7 +3855,7 @@ \subsubsection{\code{async\_set\_union}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -3875,7 +3877,7 @@ \subsubsection{\code{cond\_set\_union}} \begin{javacode} public Boolean cond_set_union( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3884,7 +3886,7 @@ \subsubsection{\code{cond\_set\_union}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3905,7 +3907,7 @@ \subsubsection{\code{async\_cond\_set\_union}} \begin{javacode} public Deferred async_cond_set_union( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -3914,7 +3916,7 @@ \subsubsection{\code{async\_cond\_set\_union}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -3995,7 +3997,7 @@ \subsubsection{\code{document\_rename}} \begin{javacode} public Boolean document_rename( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -4003,7 +4005,7 @@ \subsubsection{\code{document\_rename}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -4022,7 +4024,7 @@ \subsubsection{\code{async\_document\_rename}} \begin{javacode} public Deferred async_document_rename( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -4030,7 +4032,7 @@ \subsubsection{\code{async\_document\_rename}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -4051,13 +4053,13 @@ \subsubsection{\code{uxact\_document\_rename}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_document_rename( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -4077,7 +4079,7 @@ \subsubsection{\code{cond\_document\_rename}} \begin{javacode} public Boolean cond_document_rename( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -4086,7 +4088,7 @@ \subsubsection{\code{cond\_document\_rename}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -4107,7 +4109,7 @@ \subsubsection{\code{async\_cond\_document\_rename}} \begin{javacode} public Deferred async_cond_document_rename( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -4116,7 +4118,7 @@ \subsubsection{\code{async\_cond\_document\_rename}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -4197,7 +4199,7 @@ \subsubsection{\code{document\_unset}} \begin{javacode} public Boolean document_unset( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -4205,7 +4207,7 @@ \subsubsection{\code{document\_unset}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -4224,7 +4226,7 @@ \subsubsection{\code{async\_document\_unset}} \begin{javacode} public Deferred async_document_unset( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -4232,7 +4234,7 @@ \subsubsection{\code{async\_document\_unset}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -4253,13 +4255,13 @@ \subsubsection{\code{uxact\_document\_unset}} \paragraph{Definition:} \begin{javacode} public Iterator uxact_document_unset( - Object microtransaction, + Microtransaction microtransaction, Map attributes) \end{javacode} \paragraph{Parameters:} \begin{itemize}[noitemsep] -\item \code{Object microtransaction}\\ +\item \code{Microtransaction microtransaction}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_microtransactioncall_attributes} @@ -4279,7 +4281,7 @@ \subsubsection{\code{cond\_document\_unset}} \begin{javacode} public Boolean cond_document_unset( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -4288,7 +4290,7 @@ \subsubsection{\code{cond\_document\_unset}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -4309,7 +4311,7 @@ \subsubsection{\code{async\_cond\_document\_unset}} \begin{javacode} public Deferred async_cond_document_unset( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -4318,7 +4320,7 @@ \subsubsection{\code{async\_cond\_document\_unset}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -4399,7 +4401,7 @@ \subsubsection{\code{map\_add}} \begin{javacode} public Boolean map_add( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4407,7 +4409,7 @@ \subsubsection{\code{map\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -4426,7 +4428,7 @@ \subsubsection{\code{async\_map\_add}} \begin{javacode} public Deferred async_map_add( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4434,7 +4436,7 @@ \subsubsection{\code{async\_map\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -4456,7 +4458,7 @@ \subsubsection{\code{cond\_map\_add}} \begin{javacode} public Boolean cond_map_add( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4465,7 +4467,7 @@ \subsubsection{\code{cond\_map\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -4486,7 +4488,7 @@ \subsubsection{\code{async\_cond\_map\_add}} \begin{javacode} public Deferred async_cond_map_add( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4495,7 +4497,7 @@ \subsubsection{\code{async\_cond\_map\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -4576,7 +4578,7 @@ \subsubsection{\code{map\_remove}} \begin{javacode} public Boolean map_remove( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -4584,7 +4586,7 @@ \subsubsection{\code{map\_remove}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -4603,7 +4605,7 @@ \subsubsection{\code{async\_map\_remove}} \begin{javacode} public Deferred async_map_remove( String spacename, - Object key, + String key, Map attributes) throws HyperDexClientException \end{javacode} @@ -4611,7 +4613,7 @@ \subsubsection{\code{async\_map\_remove}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map attributes}\\ \input{\topdir/java/client/fragments/in_asynccall_attributes} @@ -4633,7 +4635,7 @@ \subsubsection{\code{cond\_map\_remove}} \begin{javacode} public Boolean cond_map_remove( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -4642,7 +4644,7 @@ \subsubsection{\code{cond\_map\_remove}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -4663,7 +4665,7 @@ \subsubsection{\code{async\_cond\_map\_remove}} \begin{javacode} public Deferred async_cond_map_remove( String spacename, - Object key, + String key, Map predicates, Map attributes) throws HyperDexClientException \end{javacode} @@ -4672,7 +4674,7 @@ \subsubsection{\code{async\_cond\_map\_remove}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -4753,7 +4755,7 @@ \subsubsection{\code{map\_atomic\_add}} \begin{javacode} public Boolean map_atomic_add( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4761,7 +4763,7 @@ \subsubsection{\code{map\_atomic\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -4780,7 +4782,7 @@ \subsubsection{\code{async\_map\_atomic\_add}} \begin{javacode} public Deferred async_map_atomic_add( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4788,7 +4790,7 @@ \subsubsection{\code{async\_map\_atomic\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -4810,7 +4812,7 @@ \subsubsection{\code{cond\_map\_atomic\_add}} \begin{javacode} public Boolean cond_map_atomic_add( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4819,7 +4821,7 @@ \subsubsection{\code{cond\_map\_atomic\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -4840,7 +4842,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_add}} \begin{javacode} public Deferred async_cond_map_atomic_add( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4849,7 +4851,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_add}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -4930,7 +4932,7 @@ \subsubsection{\code{map\_atomic\_sub}} \begin{javacode} public Boolean map_atomic_sub( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4938,7 +4940,7 @@ \subsubsection{\code{map\_atomic\_sub}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -4957,7 +4959,7 @@ \subsubsection{\code{async\_map\_atomic\_sub}} \begin{javacode} public Deferred async_map_atomic_sub( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4965,7 +4967,7 @@ \subsubsection{\code{async\_map\_atomic\_sub}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -4987,7 +4989,7 @@ \subsubsection{\code{cond\_map\_atomic\_sub}} \begin{javacode} public Boolean cond_map_atomic_sub( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -4996,7 +4998,7 @@ \subsubsection{\code{cond\_map\_atomic\_sub}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5017,7 +5019,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_sub}} \begin{javacode} public Deferred async_cond_map_atomic_sub( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5026,7 +5028,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_sub}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5107,7 +5109,7 @@ \subsubsection{\code{map\_atomic\_mul}} \begin{javacode} public Boolean map_atomic_mul( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5115,7 +5117,7 @@ \subsubsection{\code{map\_atomic\_mul}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -5134,7 +5136,7 @@ \subsubsection{\code{async\_map\_atomic\_mul}} \begin{javacode} public Deferred async_map_atomic_mul( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5142,7 +5144,7 @@ \subsubsection{\code{async\_map\_atomic\_mul}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -5164,7 +5166,7 @@ \subsubsection{\code{cond\_map\_atomic\_mul}} \begin{javacode} public Boolean cond_map_atomic_mul( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5173,7 +5175,7 @@ \subsubsection{\code{cond\_map\_atomic\_mul}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5194,7 +5196,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_mul}} \begin{javacode} public Deferred async_cond_map_atomic_mul( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5203,7 +5205,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_mul}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5284,7 +5286,7 @@ \subsubsection{\code{map\_atomic\_div}} \begin{javacode} public Boolean map_atomic_div( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5292,7 +5294,7 @@ \subsubsection{\code{map\_atomic\_div}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -5311,7 +5313,7 @@ \subsubsection{\code{async\_map\_atomic\_div}} \begin{javacode} public Deferred async_map_atomic_div( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5319,7 +5321,7 @@ \subsubsection{\code{async\_map\_atomic\_div}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -5341,7 +5343,7 @@ \subsubsection{\code{cond\_map\_atomic\_div}} \begin{javacode} public Boolean cond_map_atomic_div( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5350,7 +5352,7 @@ \subsubsection{\code{cond\_map\_atomic\_div}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5371,7 +5373,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_div}} \begin{javacode} public Deferred async_cond_map_atomic_div( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5380,7 +5382,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_div}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5461,7 +5463,7 @@ \subsubsection{\code{map\_atomic\_mod}} \begin{javacode} public Boolean map_atomic_mod( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5469,7 +5471,7 @@ \subsubsection{\code{map\_atomic\_mod}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -5488,7 +5490,7 @@ \subsubsection{\code{async\_map\_atomic\_mod}} \begin{javacode} public Deferred async_map_atomic_mod( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5496,7 +5498,7 @@ \subsubsection{\code{async\_map\_atomic\_mod}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -5518,7 +5520,7 @@ \subsubsection{\code{cond\_map\_atomic\_mod}} \begin{javacode} public Boolean cond_map_atomic_mod( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5527,7 +5529,7 @@ \subsubsection{\code{cond\_map\_atomic\_mod}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5548,7 +5550,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_mod}} \begin{javacode} public Deferred async_cond_map_atomic_mod( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5557,7 +5559,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_mod}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5638,7 +5640,7 @@ \subsubsection{\code{map\_atomic\_and}} \begin{javacode} public Boolean map_atomic_and( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5646,7 +5648,7 @@ \subsubsection{\code{map\_atomic\_and}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -5665,7 +5667,7 @@ \subsubsection{\code{async\_map\_atomic\_and}} \begin{javacode} public Deferred async_map_atomic_and( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5673,7 +5675,7 @@ \subsubsection{\code{async\_map\_atomic\_and}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -5695,7 +5697,7 @@ \subsubsection{\code{cond\_map\_atomic\_and}} \begin{javacode} public Boolean cond_map_atomic_and( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5704,7 +5706,7 @@ \subsubsection{\code{cond\_map\_atomic\_and}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5725,7 +5727,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_and}} \begin{javacode} public Deferred async_cond_map_atomic_and( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5734,7 +5736,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_and}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5815,7 +5817,7 @@ \subsubsection{\code{map\_atomic\_or}} \begin{javacode} public Boolean map_atomic_or( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5823,7 +5825,7 @@ \subsubsection{\code{map\_atomic\_or}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -5842,7 +5844,7 @@ \subsubsection{\code{async\_map\_atomic\_or}} \begin{javacode} public Deferred async_map_atomic_or( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5850,7 +5852,7 @@ \subsubsection{\code{async\_map\_atomic\_or}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -5872,7 +5874,7 @@ \subsubsection{\code{cond\_map\_atomic\_or}} \begin{javacode} public Boolean cond_map_atomic_or( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5881,7 +5883,7 @@ \subsubsection{\code{cond\_map\_atomic\_or}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5902,7 +5904,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_or}} \begin{javacode} public Deferred async_cond_map_atomic_or( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -5911,7 +5913,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_or}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -5992,7 +5994,7 @@ \subsubsection{\code{map\_atomic\_xor}} \begin{javacode} public Boolean map_atomic_xor( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6000,7 +6002,7 @@ \subsubsection{\code{map\_atomic\_xor}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -6019,7 +6021,7 @@ \subsubsection{\code{async\_map\_atomic\_xor}} \begin{javacode} public Deferred async_map_atomic_xor( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6027,7 +6029,7 @@ \subsubsection{\code{async\_map\_atomic\_xor}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -6049,7 +6051,7 @@ \subsubsection{\code{cond\_map\_atomic\_xor}} \begin{javacode} public Boolean cond_map_atomic_xor( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6058,7 +6060,7 @@ \subsubsection{\code{cond\_map\_atomic\_xor}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -6079,7 +6081,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_xor}} \begin{javacode} public Deferred async_cond_map_atomic_xor( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6088,7 +6090,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_xor}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -6169,7 +6171,7 @@ \subsubsection{\code{map\_string\_prepend}} \begin{javacode} public Boolean map_string_prepend( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6177,7 +6179,7 @@ \subsubsection{\code{map\_string\_prepend}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -6196,7 +6198,7 @@ \subsubsection{\code{async\_map\_string\_prepend}} \begin{javacode} public Deferred async_map_string_prepend( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6204,7 +6206,7 @@ \subsubsection{\code{async\_map\_string\_prepend}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -6226,7 +6228,7 @@ \subsubsection{\code{cond\_map\_string\_prepend}} \begin{javacode} public Boolean cond_map_string_prepend( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6235,7 +6237,7 @@ \subsubsection{\code{cond\_map\_string\_prepend}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -6256,7 +6258,7 @@ \subsubsection{\code{async\_cond\_map\_string\_prepend}} \begin{javacode} public Deferred async_cond_map_string_prepend( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6265,7 +6267,7 @@ \subsubsection{\code{async\_cond\_map\_string\_prepend}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -6346,7 +6348,7 @@ \subsubsection{\code{map\_string\_append}} \begin{javacode} public Boolean map_string_append( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6354,7 +6356,7 @@ \subsubsection{\code{map\_string\_append}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -6373,7 +6375,7 @@ \subsubsection{\code{async\_map\_string\_append}} \begin{javacode} public Deferred async_map_string_append( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6381,7 +6383,7 @@ \subsubsection{\code{async\_map\_string\_append}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -6403,7 +6405,7 @@ \subsubsection{\code{cond\_map\_string\_append}} \begin{javacode} public Boolean cond_map_string_append( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6412,7 +6414,7 @@ \subsubsection{\code{cond\_map\_string\_append}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -6433,7 +6435,7 @@ \subsubsection{\code{async\_cond\_map\_string\_append}} \begin{javacode} public Deferred async_cond_map_string_append( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6442,7 +6444,7 @@ \subsubsection{\code{async\_cond\_map\_string\_append}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -6523,7 +6525,7 @@ \subsubsection{\code{map\_atomic\_min}} \begin{javacode} public Boolean map_atomic_min( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6531,7 +6533,7 @@ \subsubsection{\code{map\_atomic\_min}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -6550,7 +6552,7 @@ \subsubsection{\code{async\_map\_atomic\_min}} \begin{javacode} public Deferred async_map_atomic_min( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6558,7 +6560,7 @@ \subsubsection{\code{async\_map\_atomic\_min}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -6580,7 +6582,7 @@ \subsubsection{\code{cond\_map\_atomic\_min}} \begin{javacode} public Boolean cond_map_atomic_min( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6589,7 +6591,7 @@ \subsubsection{\code{cond\_map\_atomic\_min}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -6610,7 +6612,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_min}} \begin{javacode} public Deferred async_cond_map_atomic_min( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6619,7 +6621,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_min}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -6700,7 +6702,7 @@ \subsubsection{\code{map\_atomic\_max}} \begin{javacode} public Boolean map_atomic_max( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6708,7 +6710,7 @@ \subsubsection{\code{map\_atomic\_max}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -6727,7 +6729,7 @@ \subsubsection{\code{async\_map\_atomic\_max}} \begin{javacode} public Deferred async_map_atomic_max( String spacename, - Object key, + String key, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6735,7 +6737,7 @@ \subsubsection{\code{async\_map\_atomic\_max}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map> mapattributes}\\ \input{\topdir/java/client/fragments/in_asynccall_mapattributes} @@ -6757,7 +6759,7 @@ \subsubsection{\code{cond\_map\_atomic\_max}} \begin{javacode} public Boolean cond_map_atomic_max( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6766,7 +6768,7 @@ \subsubsection{\code{cond\_map\_atomic\_max}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} @@ -6787,7 +6789,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_max}} \begin{javacode} public Deferred async_cond_map_atomic_max( String spacename, - Object key, + String key, Map predicates, Map> mapattributes) throws HyperDexClientException \end{javacode} @@ -6796,7 +6798,7 @@ \subsubsection{\code{async\_cond\_map\_atomic\_max}} \begin{itemize}[noitemsep] \item \code{String spacename}\\ \input{\topdir/java/client/fragments/in_asynccall_spacename} -\item \code{Object key}\\ +\item \code{String key}\\ \input{\topdir/java/client/fragments/in_asynccall_key} \item \code{Map predicates}\\ \input{\topdir/java/client/fragments/in_asynccall_predicates} From 8cba12edcda1ce4ae4c326cd5b7f0ff61243220b Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Thu, 19 Feb 2015 19:05:33 -0500 Subject: [PATCH 15/28] Cleaned up java code-generation script --- bindings/java.py | 47 +- bindings/java/org/hyperdex/client/Client.java | 13 - .../org_hyperdex_client_Client.definitions.c | 67 +- bindings/java/org_hyperdex_client_Client.h | 644 ++++++++---------- doc/java/client/ops.tex | 90 +-- 5 files changed, 361 insertions(+), 500 deletions(-) diff --git a/bindings/java.py b/bindings/java.py index 86ca4182..28d66724 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -70,7 +70,10 @@ def CTYPEOF(x): else: raise RuntimeError('Unknown type: ' + str(x)) -def generate_prototype(x): +def generate_client_prototype(x): + if x.form is bindings.MicrotransactionCall: + return '' + args_list = ', '.join([JTYPEOF(arg) + ' ' + arg.__name__.lower() for arg in x.args_in]) if x.form == bindings.AsyncCall: if x.args_out == (bindings.Status, bindings.Attributes): @@ -151,8 +154,33 @@ def generate_workers(xs): return yield generate_worker(call, x) calls.add(call) + +def generate_microtransaction_definition(x): + if not (x.form is bindings.MicrotransactionCall): + return '' + + func = 'JNIEXPORT HYPERDEX_API jobject JNICALL\n' + if x.form == bindings.AsyncCall: + func += 'Java_org_hyperdex_client_Client_async_1{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) + elif x.form == bindings.Iterator: + func += 'Java_org_hyperdex_client_Client_{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) + elif x.form == bindings.MicrotransactionCall: + func += 'Java_org_hyperdex_client_Client_{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) + else: + assert False + for arg in x.args_in: + func += ', ' + CTYPEOF(arg) + ' ' + arg.__name__.lower() + func += ')\n{\n' + func += ' return hyperdex_java_client_{0}(env, obj, hyperdex_client_{1}'.format(bindings.call_name(x), x.name) + for arg in x.args_in: + func += ', ' + arg.__name__.lower() + func += ');\n}\n' + return func -def generate_definition(x): +def generate_client_definition(x): + if x.form is bindings.MicrotransactionCall: + return '' + func = 'JNIEXPORT HYPERDEX_API jobject JNICALL\n' if x.form == bindings.AsyncCall: func += 'Java_org_hyperdex_client_Client_async_1{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) @@ -188,7 +216,10 @@ def generate_api_func_cleanup(func): return func + '\n' def generate_api_norm_func(func): - xs = generate_prototype(func) + xs = generate_client_prototype(func) + if xs is '': + return '' + xs = [x.strip() for x in xs.split('\n')] xs = [x for x in xs if x.startswith('public')] xs = [x for x in xs if 'async_' not in x] @@ -197,7 +228,7 @@ def generate_api_norm_func(func): return generate_api_func_cleanup(xs) def generate_api_async_func(func): - xs = generate_prototype(func) + xs = generate_client_prototype(func) xs = [x.strip() for x in xs.split('\n')] xs = [x for x in xs if x.startswith('public')] xs = [x for x in xs if 'async_' in x] @@ -251,7 +282,7 @@ def generate_client_java(): fout = open(os.path.join(BASE, 'bindings/java/org/hyperdex/client/Client.java'), 'w') fout.write(bindings.copyright('*', '2013-2015')) fout.write(bindings.java.JAVA_HEAD) - fout.write('\n'.join([generate_prototype(c) for c in bindings.Client])) + fout.write('\n'.join([generate_client_prototype(c) for c in bindings.Client])) fout.write('}\n') fout.flush() os.system('cd bindings/java && javac -cp . org/hyperdex/client/Client.java') @@ -271,17 +302,17 @@ def generate_client_java(): os.system('cd bindings/java && javah -cp . org.hyperdex.client.Regex') os.system('cd bindings/java && sed -i -e "s/JNIEXPORT/JNIEXPORT HYPERDEX_API/" *.h') fout = open(os.path.join(BASE, 'bindings/java/org_hyperdex_client_Client.definitions.c'), 'w') - fout.write(bindings.copyright('*', '2013-2014')) + fout.write(bindings.copyright('*', '2013-2015')) fout.write(bindings.java.DEFINITIONS_HEAD) fout.write('\n'.join(generate_workers(bindings.Client))) - fout.write('\n'.join([generate_definition(c) for c in bindings.Client])) + fout.write('\n'.join([generate_client_definition(c) for c in bindings.Client])) def generate_client_doc(): fout = open(os.path.join(BASE, 'doc/java/client/ops.tex'), 'w') fout.write(bindings.copyright('%', '2014')) fout.write('\n% This LaTeX file is generated by bindings/java.py\n\n') fout.write('\n'.join([generate_api_block(c, 'client') for c in bindings.Client - if c.name not in bindings.DoNotDocument])) + if c.name not in (bindings.DoNotDocument, bindings.MicrotransactionCall)])) if __name__ == '__main__': generate_client_java() diff --git a/bindings/java/org/hyperdex/client/Client.java b/bindings/java/org/hyperdex/client/Client.java index a2e1cdd0..ae7ce465 100644 --- a/bindings/java/org/hyperdex/client/Client.java +++ b/bindings/java/org/hyperdex/client/Client.java @@ -126,7 +126,6 @@ public Boolean put(String spacename, String key, Map attributes) return (Boolean) async_put(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_put(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_put(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_put(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -170,7 +169,6 @@ public Boolean atomic_add(String spacename, String key, Map attr return (Boolean) async_atomic_add(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_add(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_atomic_add(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_add(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -190,7 +188,6 @@ public Boolean atomic_sub(String spacename, String key, Map attr return (Boolean) async_atomic_sub(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_sub(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_atomic_sub(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_sub(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -210,7 +207,6 @@ public Boolean atomic_mul(String spacename, String key, Map attr return (Boolean) async_atomic_mul(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_mul(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_atomic_mul(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_mul(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -230,7 +226,6 @@ public Boolean atomic_div(String spacename, String key, Map attr return (Boolean) async_atomic_div(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_div(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_atomic_div(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_div(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -268,7 +263,6 @@ public Boolean atomic_and(String spacename, String key, Map attr return (Boolean) async_atomic_and(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_and(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_atomic_and(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_and(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -288,7 +282,6 @@ public Boolean atomic_or(String spacename, String key, Map attri return (Boolean) async_atomic_or(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_atomic_or(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_atomic_or(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_or(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -362,7 +355,6 @@ public Boolean string_prepend(String spacename, String key, Map return (Boolean) async_string_prepend(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_string_prepend(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_string_prepend(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_string_prepend(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -382,7 +374,6 @@ public Boolean string_append(String spacename, String key, Map a return (Boolean) async_string_append(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_string_append(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_string_append(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_string_append(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -402,7 +393,6 @@ public Boolean list_lpush(String spacename, String key, Map attr return (Boolean) async_list_lpush(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_list_lpush(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_list_lpush(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_list_lpush(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -422,7 +412,6 @@ public Boolean list_rpush(String spacename, String key, Map attr return (Boolean) async_list_rpush(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_list_rpush(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_list_rpush(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_list_rpush(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -514,7 +503,6 @@ public Boolean document_rename(String spacename, String key, Map return (Boolean) async_document_rename(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_document_rename(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_document_rename(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_document_rename(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException @@ -534,7 +522,6 @@ public Boolean document_unset(String spacename, String key, Map return (Boolean) async_document_unset(spacename, key, attributes).waitForIt(); } - public native Iterator uxact_document_unset(Microtransaction microtransaction, Map attributes); public native Deferred async_cond_document_unset(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_document_unset(String spacename, String key, Map predicates, Map attributes) throws HyperDexClientException diff --git a/bindings/java/org_hyperdex_client_Client.definitions.c b/bindings/java/org_hyperdex_client_Client.definitions.c index 01df4639..a97e74d0 100644 --- a/bindings/java/org_hyperdex_client_Client.definitions.c +++ b/bindings/java/org_hyperdex_client_Client.definitions.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2014, Cornell University +/* Copyright (c) 2013-2015, Cornell University * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -156,11 +156,6 @@ Java_org_hyperdex_client_Client_async_1put(JNIEnv* env, jobject obj, jstring spa return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_put, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1put(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_put, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1put(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -204,11 +199,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1add(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_add, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1add(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_add, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -228,11 +218,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1sub(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_sub, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1sub(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_sub, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -252,11 +237,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1mul(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_mul, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1mul(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_mul, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -276,11 +256,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1div(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_div, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1div(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_div, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -318,11 +293,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1and(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_and, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1and(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_and, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -342,11 +312,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1or(JNIEnv* env, jobject obj, jstr return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_or, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1or(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_or, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -420,11 +385,6 @@ Java_org_hyperdex_client_Client_async_1string_1prepend(JNIEnv* env, jobject obj, return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_string_prepend, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1string_1prepend(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_string_prepend, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -444,11 +404,6 @@ Java_org_hyperdex_client_Client_async_1string_1append(JNIEnv* env, jobject obj, return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_string_append, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1string_1append(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_string_append, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -468,11 +423,6 @@ Java_org_hyperdex_client_Client_async_1list_1lpush(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_list_lpush, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1list_1lpush(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_list_lpush, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1lpush(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -492,11 +442,6 @@ Java_org_hyperdex_client_Client_async_1list_1rpush(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_list_rpush, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1list_1rpush(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_list_rpush, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1rpush(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -588,11 +533,6 @@ Java_org_hyperdex_client_Client_async_1document_1rename(JNIEnv* env, jobject obj return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_document_rename, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1document_1rename(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_document_rename, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1rename(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) @@ -612,11 +552,6 @@ Java_org_hyperdex_client_Client_async_1document_1unset(JNIEnv* env, jobject obj, return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_document_unset, spacename, key, attributes); } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Client_uxact_1document_1unset(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) -{ - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_document_unset, microtransaction, attributes); -} JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1unset(JNIEnv* env, jobject obj, jstring spacename, jstring key, jobject predicates, jobject attributes) diff --git a/bindings/java/org_hyperdex_client_Client.h b/bindings/java/org_hyperdex_client_Client.h index 1cefda55..927c5065 100644 --- a/bindings/java/org_hyperdex_client_Client.h +++ b/bindings/java/org_hyperdex_client_Client.h @@ -12,7 +12,7 @@ extern "C" { * Method: initialize * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_initialize +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_initialize (JNIEnv *, jclass); /* @@ -20,7 +20,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPER * Method: terminate * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_terminate +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_terminate (JNIEnv *, jclass); /* @@ -28,7 +28,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPER * Method: _create * Signature: (Ljava/lang/String;I)V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1create +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1create (JNIEnv *, jobject, jstring, jint); /* @@ -36,7 +36,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPER * Method: _destroy * Signature: ()V */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1destroy +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client__1destroy (JNIEnv *, jobject); /* @@ -44,999 +44,895 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPER * Method: inner_loop * Signature: ()J */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Client_inner_1loop +JNIEXPORT HYPERDEX_API jlong JNICALL Java_org_hyperdex_client_Client_inner_1loop (JNIEnv *, jobject); /* * Class: org_hyperdex_client_Client * Method: async_get - * Signature: (Ljava/lang/String;Ljava/lang/Object;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get - (JNIEnv *, jobject, jstring, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get + (JNIEnv *, jobject, jstring, jstring); /* * Class: org_hyperdex_client_Client * Method: async_get_partial - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/List;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get_1partial - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1get_1partial + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_put - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_put - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1put - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_put - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1put - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1put + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_put * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1put +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1put (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_put_if_not_exist - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put_1if_1not_1exist - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1put_1if_1not_1exist + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_del - * Signature: (Ljava/lang/String;Ljava/lang/Object;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1del - (JNIEnv *, jobject, jstring, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1del + (JNIEnv *, jobject, jstring, jstring); /* * Class: org_hyperdex_client_Client * Method: async_cond_del - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1del - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1del + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_del * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1del +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1del (JNIEnv *, jobject, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_atomic_add - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1add - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_atomic_add - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1add - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1add + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_add - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1add - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1add + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_atomic_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1add +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_atomic_sub - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1sub - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_atomic_sub - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1sub - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1sub + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_sub - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_atomic_sub * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1sub +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_atomic_mul - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mul - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_atomic_mul - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1mul - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mul + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_mul - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_atomic_mul * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mul +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_atomic_div - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1div - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_atomic_div - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1div - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1div + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_div - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1div - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1div + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_atomic_div * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1div +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_atomic_mod - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mod - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1mod + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_mod - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mod - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mod + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_atomic_mod * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mod +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_atomic_and - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1and - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_atomic_and - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1and - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1and + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_and - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1and - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1and + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_atomic_and * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1and +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_atomic_or - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1or - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_atomic_or - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1atomic_1or - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1or + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_or - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1or - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1or + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_atomic_or * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1or +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_atomic_xor - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1xor - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1xor + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_xor - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1xor - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1xor + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_atomic_xor * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1xor +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_atomic_min - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1min - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1min + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_min - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1min - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1min + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_atomic_min * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1min +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_atomic_max - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1max - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1atomic_1max + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_atomic_max - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1max - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1max + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_atomic_max * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1max +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_string_prepend - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1prepend - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_string_prepend - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1string_1prepend - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1prepend + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_string_prepend - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1prepend - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1prepend + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_string_prepend * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1prepend +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_string_append - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1append - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_string_append - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1string_1append - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1string_1append + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_string_append - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1append - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1append + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_string_append * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1append +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_list_lpush - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1lpush - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_list_lpush - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1list_1lpush - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1lpush + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_list_lpush - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1lpush - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1lpush + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_list_lpush * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1lpush +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1lpush (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_list_rpush - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1rpush - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_list_rpush - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1list_1rpush - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1list_1rpush + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_list_rpush - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1rpush - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1rpush + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_list_rpush * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1rpush +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1list_1rpush (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_set_add - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1add - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1add + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_set_add - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1add - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1add + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_set_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1add +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_set_remove - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1remove - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1remove + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_set_remove - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1remove - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1remove + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_set_remove * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1remove +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1remove (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_set_intersect - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1intersect - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1intersect + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_set_intersect - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1intersect - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1intersect + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_set_intersect * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1intersect +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1intersect (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_set_union - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1union - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1set_1union + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_set_union - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1union - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1set_1union + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_set_union * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1union +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1set_1union (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_document_rename - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1rename - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_document_rename - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1document_1rename - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1rename + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_document_rename - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1rename - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1rename + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_document_rename * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1rename +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1rename (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_document_unset - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; - */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1unset - (JNIEnv *, jobject, jstring, jobject, jobject); - -/* - * Class: org_hyperdex_client_Client - * Method: uxact_document_unset - * Signature: (Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_uxact_1document_1unset - (JNIEnv *, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1document_1unset + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_document_unset - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1unset - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1unset + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_document_unset * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1unset +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1document_1unset (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_add - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1add - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1add + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_add - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1add - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1add + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1add +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_remove - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1remove - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1remove + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_remove - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1remove - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1remove + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_remove * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1remove +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1remove (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_atomic_add - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1add - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1add + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_atomic_add - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1add - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1add + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_atomic_add * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1add +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1add (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_atomic_sub - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1sub - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1sub + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_atomic_sub - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1sub - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1sub + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_atomic_sub * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1sub +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1sub (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_atomic_mul - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mul - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mul + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_atomic_mul - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mul - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mul + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_atomic_mul * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mul +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mul (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_atomic_div - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1div - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1div + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_atomic_div - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1div - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1div + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_atomic_div * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1div +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1div (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_atomic_mod - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mod - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1mod + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_atomic_mod - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mod - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1mod + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_atomic_mod * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mod +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1mod (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_atomic_and - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1and - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1and + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_atomic_and - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1and - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1and + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_atomic_and * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1and +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1and (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_atomic_or - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1or - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1or + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_atomic_or - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1or - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1or + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_atomic_or * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1or +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1or (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_atomic_xor - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1xor - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1xor + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_atomic_xor - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1xor - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1xor + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_atomic_xor * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1xor +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1xor (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_string_prepend - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1prepend - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1prepend + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_string_prepend - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1prepend - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1prepend + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_string_prepend * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1prepend +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1prepend (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_string_append - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1append - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1string_1append + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_string_append - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1append - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1string_1append + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_string_append * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1append +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1string_1append (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_atomic_min - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1min - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1min + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_atomic_min - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1min - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1min + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_atomic_min * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1min +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1min (JNIEnv *, jobject, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_map_atomic_max - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1max - (JNIEnv *, jobject, jstring, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1map_1atomic_1max + (JNIEnv *, jobject, jstring, jstring, jobject); /* * Class: org_hyperdex_client_Client * Method: async_cond_map_atomic_max - * Signature: (Ljava/lang/String;Ljava/lang/Object;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1max - (JNIEnv *, jobject, jstring, jobject, jobject, jobject); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1map_1atomic_1max + (JNIEnv *, jobject, jstring, jstring, jobject, jobject); /* * Class: org_hyperdex_client_Client * Method: async_group_map_atomic_max * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1max +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1group_1map_1atomic_1max (JNIEnv *, jobject, jstring, jobject, jobject); /* @@ -1044,7 +940,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPER * Method: search * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_search +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_search (JNIEnv *, jobject, jstring, jobject); /* @@ -1052,7 +948,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPER * Method: async_search_describe * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1search_1describe +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1search_1describe (JNIEnv *, jobject, jstring, jobject); /* @@ -1060,7 +956,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPER * Method: sorted_search * Signature: (Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;IZ)Lorg/hyperdex/client/Iterator; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_sorted_1search +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_sorted_1search (JNIEnv *, jobject, jstring, jobject, jstring, jint, jboolean); /* @@ -1068,7 +964,7 @@ JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPER * Method: async_count * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1count +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1count (JNIEnv *, jobject, jstring, jobject); #ifdef __cplusplus diff --git a/doc/java/client/ops.tex b/doc/java/client/ops.tex index b5eb5016..1bade70d 100644 --- a/doc/java/client/ops.tex +++ b/doc/java/client/ops.tex @@ -200,9 +200,6 @@ \subsubsection{\code{uxact\_put}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_put( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -616,9 +613,6 @@ \subsubsection{\code{uxact\_atomic\_add}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_atomic_add( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -818,9 +812,6 @@ \subsubsection{\code{uxact\_atomic\_sub}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_atomic_sub( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -1020,9 +1011,6 @@ \subsubsection{\code{uxact\_atomic\_mul}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_atomic_mul( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -1222,9 +1210,6 @@ \subsubsection{\code{uxact\_atomic\_div}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_atomic_div( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -1601,9 +1586,6 @@ \subsubsection{\code{uxact\_atomic\_and}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_atomic_and( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -1803,9 +1785,6 @@ \subsubsection{\code{uxact\_atomic\_or}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_atomic_or( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -2536,9 +2515,6 @@ \subsubsection{\code{uxact\_string\_prepend}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_string_prepend( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -2738,9 +2714,6 @@ \subsubsection{\code{uxact\_string\_append}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_string_append( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -2940,9 +2913,6 @@ \subsubsection{\code{uxact\_list\_lpush}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_list_lpush( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -3142,9 +3112,6 @@ \subsubsection{\code{uxact\_list\_rpush}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_list_rpush( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -4052,9 +4019,6 @@ \subsubsection{\code{uxact\_document\_rename}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_document_rename( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -4254,9 +4218,6 @@ \subsubsection{\code{uxact\_document\_unset}} \paragraph{Definition:} \begin{javacode} -public Iterator uxact_document_unset( - Microtransaction microtransaction, - Map attributes) \end{javacode} \paragraph{Parameters:} @@ -6891,6 +6852,57 @@ \subsubsection{\code{search}} \paragraph{Returns:} \input{\topdir/java/client/fragments/return_iterator__status_attributes} +%%%%%%%%%%%%%%%%%%%% search_describe %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsubsection{\code{search\_describe}} +\label{api:java:search_describe} +\index{search\_describe!Java API} +\input{\topdir/client/fragments/search_describe} + +\paragraph{Definition:} +\begin{javacode} +public String search_describe( + String spacename, + Map predicates) throws HyperDexClientException +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{String spacename}\\ +\input{\topdir/java/client/fragments/in_asynccall_spacename} +\item \code{Map predicates}\\ +\input{\topdir/java/client/fragments/in_asynccall_predicates} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_asynccall__status_description} + +\pagebreak +\subsubsection{\code{async\_search\_describe}} +\label{api:java:async_search_describe} +\index{async\_search\_describe!Java API} +\input{\topdir/client/fragments/search_describe} + +\paragraph{Definition:} +\begin{javacode} +public Deferred async_search_describe( + String spacename, + Map predicates) throws HyperDexClientException +\end{javacode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{String spacename}\\ +\input{\topdir/java/client/fragments/in_asynccall_spacename} +\item \code{Map predicates}\\ +\input{\topdir/java/client/fragments/in_asynccall_predicates} +\end{itemize} + +\paragraph{Returns:} +\input{\topdir/java/client/fragments/return_async_asynccall__status_description} + +\paragraph{See also:} This is the asynchronous form of \code{search\_describe}. + %%%%%%%%%%%%%%%%%%%% sorted_search %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{sorted\_search}} From 499c27ae83bb91cbc1d7b4cd77bbf769d0bc94c6 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Thu, 19 Feb 2015 21:57:09 -0500 Subject: [PATCH 16/28] Actually generate the typ conversion call --- Makefile.am | 8 +- bindings/c.py | 7 + bindings/go/client/client.go | 230 ++++++++++++++--------------- client/c.cc | 14 +- test/go/Basic.go | 84 +++++------ test/go/BasicSearch.go | 84 +++++------ test/go/CondPut.go | 84 +++++------ test/go/DataTypeFloat.go | 84 +++++------ test/go/DataTypeInt.go | 84 +++++------ test/go/DataTypeListFloat.go | 84 +++++------ test/go/DataTypeListInt.go | 84 +++++------ test/go/DataTypeListString.go | 84 +++++------ test/go/DataTypeMapFloatFloat.go | 84 +++++------ test/go/DataTypeMapFloatInt.go | 84 +++++------ test/go/DataTypeMapFloatString.go | 84 +++++------ test/go/DataTypeMapIntFloat.go | 84 +++++------ test/go/DataTypeMapIntInt.go | 84 +++++------ test/go/DataTypeMapIntString.go | 84 +++++------ test/go/DataTypeMapStringFloat.go | 84 +++++------ test/go/DataTypeMapStringInt.go | 84 +++++------ test/go/DataTypeMapStringString.go | 84 +++++------ test/go/DataTypeSetFloat.go | 84 +++++------ test/go/DataTypeSetInt.go | 84 +++++------ test/go/DataTypeSetString.go | 84 +++++------ test/go/DataTypeString.go | 84 +++++------ test/go/LengthString.go | 84 +++++------ test/go/MultiAttribute.go | 84 +++++------ test/go/RangeSearchInt.go | 84 +++++------ test/go/RangeSearchString.go | 84 +++++------ test/go/RegexSearch.go | 84 +++++------ 30 files changed, 1219 insertions(+), 1224 deletions(-) diff --git a/Makefile.am b/Makefile.am index 7dd6a8c0..b18b8eee 100644 --- a/Makefile.am +++ b/Makefile.am @@ -968,10 +968,6 @@ if ENABLE_CLIENT if ENABLE_PYTHON_BINDINGS TESTS += $(doctest_wrappers) -if ENABLE_TIME_CONSUMING_TESTS -TESTS += $(stress_wrappers) -endif - TESTS += $(python_wrappers) check_PROGRAMS += bindings/python/hyperdex/admin.so check_PROGRAMS += bindings/python/hyperdex/client.so @@ -984,6 +980,10 @@ if ENABLE_RUBY_BINDINGS TESTS += $(ruby_wrappers) endif +if ENABLE_TIME_CONSUMING_TESTS +TESTS += $(stress_wrappers) +endif + endif # ENABLE_PYTHON_BINDINGS endif # ENABLE_CLIENT endif # ENABLE_ADMIN diff --git a/bindings/c.py b/bindings/c.py index ab13c9b4..b3f3612a 100644 --- a/bindings/c.py +++ b/bindings/c.py @@ -697,6 +697,13 @@ def generate_admin_doc(): ); } +HYPERDEX_API void +hyperdex_client_set_type_conversion(hyperdex_client* _cl, bool enabled) +{ + hyperdex::client* cl = reinterpret_cast(_cl); + cl->set_type_conversion(enabled); +} + #ifdef __cplusplus } // extern "C" #endif // __cplusplus diff --git a/bindings/go/client/client.go b/bindings/go/client/client.go index 392df3a9..a13a6eb5 100644 --- a/bindings/go/client/client.go +++ b/bindings/go/client/client.go @@ -1131,18 +1131,17 @@ func (client *Client) AsynccallSpacenameKeyStatusAttributes(stub func(client *C. inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { var er error @@ -1193,18 +1192,17 @@ func (client *Client) AsynccallSpacenameKeyAttributenamesStatusAttributes(stub f inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { var er error @@ -1253,18 +1251,17 @@ func (client *Client) AsynccallSpacenameKeyAttributesStatus(stub func(client *C. inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1312,18 +1309,17 @@ func (client *Client) AsynccallSpacenameKeyPredicatesAttributesStatus(stub func( inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1365,18 +1361,17 @@ func (client *Client) AsynccallSpacenamePredicatesAttributesStatusCount(stub fun inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { count = uint64(c_count) @@ -1413,18 +1408,17 @@ func (client *Client) AsynccallSpacenameKeyStatus(stub func(client *C.struct_hyp inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1465,18 +1459,17 @@ func (client *Client) AsynccallSpacenameKeyPredicatesStatus(stub func(client *C. inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1511,18 +1504,17 @@ func (client *Client) AsynccallSpacenamePredicatesStatusCount(stub func(client * inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { count = uint64(c_count) @@ -1566,18 +1558,17 @@ func (client *Client) AsynccallSpacenameKeyMapattributesStatus(stub func(client inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1625,18 +1616,17 @@ func (client *Client) AsynccallSpacenameKeyPredicatesMapattributesStatus(stub fu inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } return } @@ -1678,18 +1668,17 @@ func (client *Client) AsynccallSpacenamePredicatesMapattributesStatusCount(stub inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { count = uint64(c_count) @@ -1711,7 +1700,7 @@ func (client *Client) IteratorSpacenamePredicatesStatusAttributes(stub func(clie er = client.convertSpacename(arena, spacename, &c_space) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1719,7 +1708,7 @@ func (client *Client) IteratorSpacenamePredicatesStatusAttributes(stub func(clie er = client.convertPredicates(arena, predicates, &c_checks, &c_checks_sz) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1735,12 +1724,12 @@ func (client *Client) IteratorSpacenamePredicatesStatusAttributes(stub func(clie inner.searches[reqid] = &c_iter } else { err = Error{Status(c_iter.status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))} } inner.mutex.Unlock() if reqid < 0 { - errs <- err + errs<-err close(attrs) close(errs) } @@ -1777,18 +1766,17 @@ func (client *Client) AsynccallSpacenamePredicatesStatusDescription(stub func(cl inner.ops[reqid] = done } else { if c_status != SUCCESS { - err = &Error{Status(c_status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} - } + err = &Error{Status(c_status), + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))}} } inner.mutex.Unlock() if reqid >= 0 { - rz := <-done - if c_status != SUCCESS { - err = &rz - err.Status = Status(c_status) - } + rz := <-done + if c_status != SUCCESS { + err = &rz + err.Status = Status(c_status) + } } if c_status == SUCCESS { desc = C.GoString(c_description) @@ -1813,7 +1801,7 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut er = client.convertSpacename(arena, spacename, &c_space) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1821,7 +1809,7 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut er = client.convertPredicates(arena, predicates, &c_checks, &c_checks_sz) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1829,7 +1817,7 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut er = client.convertSortby(arena, sortby, &c_sort_by) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1837,7 +1825,7 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut er = client.convertLimit(arena, limit, &c_limit) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1845,7 +1833,7 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut er = client.convertMaxmin(arena, maxmin, &c_maxmin) if er != nil { err := Error{Status(WRONGTYPE), er.Error(), ""} - errs <- err + errs<-err close(attrs) close(errs) return @@ -1861,12 +1849,12 @@ func (client *Client) IteratorSpacenamePredicatesSortbyLimitMaxminStatusAttribut inner.searches[reqid] = &c_iter } else { err = Error{Status(c_iter.status), - C.GoString(C.hyperdex_client_error_message(inner.ptr)), - C.GoString(C.hyperdex_client_error_location(inner.ptr))} + C.GoString(C.hyperdex_client_error_message(inner.ptr)), + C.GoString(C.hyperdex_client_error_location(inner.ptr))} } inner.mutex.Unlock() if reqid < 0 { - errs <- err + errs<-err close(attrs) close(errs) } diff --git a/client/c.cc b/client/c.cc index 94ea46f5..aebbdaa9 100644 --- a/client/c.cc +++ b/client/c.cc @@ -160,13 +160,6 @@ hyperdex_client_error_message(hyperdex_client* _cl) return cl->error_message(); } -HYPERDEX_API void -hyperdex_client_set_type_conversion(hyperdex_client* _cl, bool enabled) -{ - hyperdex::client* cl = reinterpret_cast(_cl); - cl->set_type_conversion(enabled); -} - HYPERDEX_API const char* hyperdex_client_error_location(hyperdex_client* _cl) { @@ -1987,6 +1980,13 @@ hyperdex_client_block(hyperdex_client* _cl, int timeout) ); } +HYPERDEX_API void +hyperdex_client_set_type_conversion(hyperdex_client* _cl, bool enabled) +{ + hyperdex::client* cl = reinterpret_cast(_cl); + cl->set_type_conversion(enabled); +} + #ifdef __cplusplus } // extern "C" #endif // __cplusplus diff --git a/test/go/Basic.go b/test/go/Basic.go index 3142dd71..20463b51 100644 --- a/test/go/Basic.go +++ b/test/go/Basic.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/BasicSearch.go b/test/go/BasicSearch.go index dae89fd1..38eaf35b 100644 --- a/test/go/BasicSearch.go +++ b/test/go/BasicSearch.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/CondPut.go b/test/go/CondPut.go index 2eb924a4..a90bf384 100644 --- a/test/go/CondPut.go +++ b/test/go/CondPut.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeFloat.go b/test/go/DataTypeFloat.go index bb96c452..415b4e63 100644 --- a/test/go/DataTypeFloat.go +++ b/test/go/DataTypeFloat.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeInt.go b/test/go/DataTypeInt.go index b5a0101d..7c4f0e05 100644 --- a/test/go/DataTypeInt.go +++ b/test/go/DataTypeInt.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeListFloat.go b/test/go/DataTypeListFloat.go index 1c285ad7..49ab89e2 100644 --- a/test/go/DataTypeListFloat.go +++ b/test/go/DataTypeListFloat.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeListInt.go b/test/go/DataTypeListInt.go index 92ed5e97..d661cb54 100644 --- a/test/go/DataTypeListInt.go +++ b/test/go/DataTypeListInt.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeListString.go b/test/go/DataTypeListString.go index 86deeec5..ee4bb356 100644 --- a/test/go/DataTypeListString.go +++ b/test/go/DataTypeListString.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeMapFloatFloat.go b/test/go/DataTypeMapFloatFloat.go index b5a9d2fd..b6e3752a 100644 --- a/test/go/DataTypeMapFloatFloat.go +++ b/test/go/DataTypeMapFloatFloat.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeMapFloatInt.go b/test/go/DataTypeMapFloatInt.go index bf7e8216..4b242839 100644 --- a/test/go/DataTypeMapFloatInt.go +++ b/test/go/DataTypeMapFloatInt.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeMapFloatString.go b/test/go/DataTypeMapFloatString.go index af8041d1..33de1679 100644 --- a/test/go/DataTypeMapFloatString.go +++ b/test/go/DataTypeMapFloatString.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeMapIntFloat.go b/test/go/DataTypeMapIntFloat.go index 40920c82..e9ce86ad 100644 --- a/test/go/DataTypeMapIntFloat.go +++ b/test/go/DataTypeMapIntFloat.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeMapIntInt.go b/test/go/DataTypeMapIntInt.go index 5775de2a..93162199 100644 --- a/test/go/DataTypeMapIntInt.go +++ b/test/go/DataTypeMapIntInt.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeMapIntString.go b/test/go/DataTypeMapIntString.go index d2bfbd14..57ce30cb 100644 --- a/test/go/DataTypeMapIntString.go +++ b/test/go/DataTypeMapIntString.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeMapStringFloat.go b/test/go/DataTypeMapStringFloat.go index c3e93e29..6401d4a8 100644 --- a/test/go/DataTypeMapStringFloat.go +++ b/test/go/DataTypeMapStringFloat.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeMapStringInt.go b/test/go/DataTypeMapStringInt.go index 8df2aa8f..ae797a30 100644 --- a/test/go/DataTypeMapStringInt.go +++ b/test/go/DataTypeMapStringInt.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeMapStringString.go b/test/go/DataTypeMapStringString.go index 40c77d40..9838fd66 100644 --- a/test/go/DataTypeMapStringString.go +++ b/test/go/DataTypeMapStringString.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeSetFloat.go b/test/go/DataTypeSetFloat.go index cba92098..9d8ee728 100644 --- a/test/go/DataTypeSetFloat.go +++ b/test/go/DataTypeSetFloat.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeSetInt.go b/test/go/DataTypeSetInt.go index 0ee45e23..f8467d50 100644 --- a/test/go/DataTypeSetInt.go +++ b/test/go/DataTypeSetInt.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeSetString.go b/test/go/DataTypeSetString.go index 13c797aa..c34d74b5 100644 --- a/test/go/DataTypeSetString.go +++ b/test/go/DataTypeSetString.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/DataTypeString.go b/test/go/DataTypeString.go index f493d27b..4aa407e8 100644 --- a/test/go/DataTypeString.go +++ b/test/go/DataTypeString.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/LengthString.go b/test/go/LengthString.go index 1a6d77d9..12ad0ebf 100644 --- a/test/go/LengthString.go +++ b/test/go/LengthString.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/MultiAttribute.go b/test/go/MultiAttribute.go index a48265cf..418a8b55 100644 --- a/test/go/MultiAttribute.go +++ b/test/go/MultiAttribute.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/RangeSearchInt.go b/test/go/RangeSearchInt.go index c6b5726e..4bb2001b 100644 --- a/test/go/RangeSearchInt.go +++ b/test/go/RangeSearchInt.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/RangeSearchString.go b/test/go/RangeSearchString.go index 20e31cbc..75531373 100644 --- a/test/go/RangeSearchString.go +++ b/test/go/RangeSearchString.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { diff --git a/test/go/RegexSearch.go b/test/go/RegexSearch.go index 0cabf4c6..b9e53001 100644 --- a/test/go/RegexSearch.go +++ b/test/go/RegexSearch.go @@ -12,40 +12,40 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } for key, lval := range lhs { if rval, ok := rhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } } for key, rval := range rhs { if lval, ok := lhs[key]; ok { - lstr := fmt.Sprintln(lval) - rstr := fmt.Sprintln(rval) - for i := 0; i < 1000; i++ { - if lstr != rstr { - rstr = fmt.Sprintln(rval) - } - } - lmap, lok := lval.(client.Map) - rmap, rok := rval.(client.Map) + lstr := fmt.Sprintln(lval) + rstr := fmt.Sprintln(rval) + for i := 0; i < 1000; i++ { + if lstr != rstr { + rstr = fmt.Sprintln(rval) + } + } + lmap, lok := lval.(client.Map) + rmap, rok := rval.(client.Map) if !(lval == rval || reflect.DeepEqual(lval, rval) || - (lok && rok && sloppyEqualMap(lmap, rmap)) || - lstr == rstr) { + (lok && rok && sloppyEqualMap(lmap, rmap)) || + lstr == rstr) { return false - } + } } else { return false } @@ -54,27 +54,27 @@ func sloppyEqual(lhs map[interface{}]interface{}, rhs map[interface{}]interface{ } func sloppyEqualMap(lhs client.Map, rhs client.Map) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func sloppyEqualAttributes(lhs client.Attributes, rhs client.Attributes) bool { - lmap := map[interface{}]interface{}{} - rmap := map[interface{}]interface{}{} - for k, v := range lhs { - lmap[k] = v - } - for k, v := range rhs { - rmap[k] = v - } - return sloppyEqual(lmap, rmap) + lmap := map[interface{}]interface{}{} + rmap := map[interface{}]interface{}{} + for k, v := range lhs { + lmap[k] = v + } + for k, v := range rhs { + rmap[k] = v + } + return sloppyEqual(lmap, rmap) } func main() { From 073a718c66cb8ab5c2af81ee5d5a34d06a2e13e6 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Fri, 20 Feb 2015 19:12:19 -0500 Subject: [PATCH 17/28] First steps into proper java bindings and tests --- bindings/java.py | 87 +- bindings/java/org/hyperdex/client/Client.java | 5 + .../org/hyperdex/client/Microtransaction.java | 186 +++++ bindings/java/org_hyperdex_client_Client.c | 2 +- .../org_hyperdex_client_Microtransaction.c | 86 ++ ...rdex_client_Microtransaction.definitions.c | 748 ++++++++++++++++++ .../org_hyperdex_client_Microtransaction.h | 125 +++ bindings/node.js/client.declarations.cc | 136 ---- doc/java/client/ops.tex | 2 +- test/java/DataTypeDocument.java | 34 + test/java/DataTypeInt.java | 73 +- test/java/DataTypeString.java | 98 ++- test/sh/bindings.java.DataTypeDocument.sh | 7 + test/sh/bindings.java.DataTypeInt.sh | 5 +- test/sh/bindings.java.DataTypeString.sh | 5 +- 15 files changed, 1378 insertions(+), 221 deletions(-) create mode 100644 bindings/java/org/hyperdex/client/Microtransaction.java create mode 100644 bindings/java/org_hyperdex_client_Microtransaction.c create mode 100644 bindings/java/org_hyperdex_client_Microtransaction.definitions.c create mode 100644 bindings/java/org_hyperdex_client_Microtransaction.h create mode 100644 test/java/DataTypeDocument.java create mode 100644 test/sh/bindings.java.DataTypeDocument.sh diff --git a/bindings/java.py b/bindings/java.py index c461eb80..8bcab361 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -70,6 +70,36 @@ def CTYPEOF(x): else: raise RuntimeError('Unknown type: ' + str(x)) +def generate_microtransaction_prototype(x): + if x.form is not bindings.MicrotransactionCall: + return '' + + args_list = ', '.join([JTYPEOF(arg) + ' ' + arg.__name__.lower() for arg in x.args_in]) + if x.form == bindings.AsyncCall: + if x.args_out == (bindings.Status, bindings.Attributes): + ret = 'Map' + elif x.args_out == (bindings.Status, bindings.Description): + ret = 'String' + elif x.args_out == (bindings.Status, bindings.Count): + ret = 'Long' + elif x.args_out == (bindings.Status,): + ret = 'Boolean' + else: + print x.args_out + assert False + proto = ' public native Deferred async_{0}({1}) throws HyperDexClientException;\n'.format(x.name, args_list) + proto += ' public {1} {0}('.format(x.name, ret) + proto += args_list + proto += ') throws HyperDexClientException\n {\n' + args_list = ', '.join([arg.__name__.lower() for arg in x.args_in]) + proto += ' return ({2}) async_{0}({1}).waitForIt();\n'.format(x.name, args_list, ret) + proto += ' }\n' + return proto + elif (x.form == bindings.MicrotransactionCall or x.form == bindings.Iterator): + return ' public native Iterator {0}({1});\n'.format(x.name, args_list) + else: + assert False + def generate_client_prototype(x): if x.form is bindings.MicrotransactionCall: return '' @@ -160,15 +190,9 @@ def generate_microtransaction_definition(x): if not (x.form is bindings.MicrotransactionCall): return '' - func = 'JNIEXPORT HYPERDEX_API jobject JNICALL\n' - if x.form == bindings.AsyncCall: - func += 'Java_org_hyperdex_client_Client_async_1{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) - elif x.form == bindings.Iterator: - func += 'Java_org_hyperdex_client_Client_{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) - elif x.form == bindings.MicrotransactionCall: - func += 'Java_org_hyperdex_client_Client_{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) - else: - assert False + func = 'JNIEXPORT HYPERDEX_API jint JNICALL\n' + func += 'Java_org_hyperdex_client_Client_{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) + for arg in x.args_in: func += ', ' + CTYPEOF(arg) + ' ' + arg.__name__.lower() func += ')\n{\n' @@ -187,10 +211,9 @@ def generate_client_definition(x): func += 'Java_org_hyperdex_client_Client_async_1{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) elif x.form == bindings.Iterator: func += 'Java_org_hyperdex_client_Client_{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) - elif x.form == bindings.MicrotransactionCall: - func += 'Java_org_hyperdex_client_Client_{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) else: - assert False + raise RuntimeError('Unknown function type ' + str(x.form)) + for arg in x.args_in: func += ', ' + CTYPEOF(arg) + ' ' + arg.__name__.lower() func += ')\n{\n' @@ -286,10 +309,18 @@ def generate_client_java(): fout.write('\n'.join([generate_client_prototype(c) for c in bindings.Client])) fout.write('}\n') fout.flush() + fout = open(os.path.join(BASE, 'bindings/java/org/hyperdex/client/Microtransaction.java'), 'w') + fout.write(bindings.copyright('*', '2015')) + fout.write(bindings.java.MICROTRANSACTION_HEAD) + fout.write('\n'.join([generate_microtransaction_prototype(c) for c in bindings.Client])) + fout.write('}\n') + fout.flush() os.system('cd bindings/java && javac -cp . org/hyperdex/client/Client.java') os.system('cd bindings/java && javah -cp . org.hyperdex.client.Client') os.system('cd bindings/java && javah -cp . org.hyperdex.client.Client') os.system('cd bindings/java && javah -cp . org.hyperdex.client.Client') + os.system('cd bindings/java && javac -cp . org/hyperdex/client/Microtransaction.java') + os.system('cd bindings/java && javah -cp . org.hyperdex.client.Microtransaction') os.system('cd bindings/java && javah -cp . org.hyperdex.client.Deferred') os.system('cd bindings/java && javah -cp . org.hyperdex.client.GreaterEqual') os.system('cd bindings/java && javah -cp . org.hyperdex.client.GreaterThan') @@ -307,10 +338,15 @@ def generate_client_java(): fout.write(bindings.java.DEFINITIONS_HEAD) fout.write('\n'.join(generate_workers(bindings.Client))) fout.write('\n'.join([generate_client_definition(c) for c in bindings.Client])) + fout = open(os.path.join(BASE, 'bindings/java/org_hyperdex_client_Microtransaction.definitions.c'), 'w') + fout.write(bindings.copyright('*', '2015')) + fout.write(bindings.java.DEFINITIONS_HEAD) + fout.write('\n'.join(generate_workers(bindings.Client))) + fout.write('\n'.join([generate_microtransaction_definition(c) for c in bindings.Client])) def generate_client_doc(): fout = open(os.path.join(BASE, 'doc/java/client/ops.tex'), 'w') - fout.write(bindings.copyright('%', '2014')) + fout.write(bindings.copyright('%', '2014-2015')) fout.write('\n% This LaTeX file is generated by bindings/java.py\n\n') fout.write('\n'.join([generate_api_block(c, 'client') for c in bindings.Client if c.name not in (bindings.DoNotDocument, bindings.MicrotransactionCall)])) @@ -318,6 +354,26 @@ def generate_client_doc(): if __name__ == '__main__': generate_client_java() generate_client_doc() + +MICROTRANSACTION_HEAD = ''' +/* This file is generated by bindings/java.py */ + +package org.hyperdex.client; + +import java.util.List; +import java.util.Map; +import java.util.HashMap; + +public class Microtransaction +{ + protected Microtransaction(Client client, String space) + { + this._create(client, space); + } + + private native void _create(Client client, String space); + +''' JAVA_HEAD = ''' /* This file is generated by bindings/java.py */ @@ -362,6 +418,11 @@ def generate_client_doc(): super.finalize(); } } + + public Microtransaction initMicrotransaction(String space) + { + return new Microtransaction(this, space); + } public synchronized void destroy() { diff --git a/bindings/java/org/hyperdex/client/Client.java b/bindings/java/org/hyperdex/client/Client.java index aab47c8f..95711973 100644 --- a/bindings/java/org/hyperdex/client/Client.java +++ b/bindings/java/org/hyperdex/client/Client.java @@ -67,6 +67,11 @@ protected void finalize() throws Throwable super.finalize(); } } + + public Microtransaction initMicrotransaction(String space) + { + return new Microtransaction(this, space); + } public synchronized void destroy() { diff --git a/bindings/java/org/hyperdex/client/Microtransaction.java b/bindings/java/org/hyperdex/client/Microtransaction.java new file mode 100644 index 00000000..1ef3a07d --- /dev/null +++ b/bindings/java/org/hyperdex/client/Microtransaction.java @@ -0,0 +1,186 @@ +/* Copyright (c) 2015, Cornell University + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of HyperDex nor the names of its contributors may be + * used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* This file is generated by bindings/java.py */ + +package org.hyperdex.client; + +import java.util.List; +import java.util.Map; +import java.util.HashMap; + +public class Microtransaction +{ + protected Microtransaction(Client client, String space) + { + this._create(client, space); + } + + private native void _create(Client client, String space); + + + + + public native Iterator uxact_put(Microtransaction microtransaction, Map attributes); + + + + + + + + + + public native Iterator uxact_atomic_add(Microtransaction microtransaction, Map attributes); + + + + + public native Iterator uxact_atomic_sub(Microtransaction microtransaction, Map attributes); + + + + + public native Iterator uxact_atomic_mul(Microtransaction microtransaction, Map attributes); + + + + + public native Iterator uxact_atomic_div(Microtransaction microtransaction, Map attributes); + + + + + + + + public native Iterator uxact_atomic_and(Microtransaction microtransaction, Map attributes); + + + + + public native Iterator uxact_atomic_or(Microtransaction microtransaction, Map attributes); + + + + + + + + + + + + + + public native Iterator uxact_string_prepend(Microtransaction microtransaction, Map attributes); + + + + + public native Iterator uxact_string_append(Microtransaction microtransaction, Map attributes); + + + + + public native Iterator uxact_list_lpush(Microtransaction microtransaction, Map attributes); + + + + + public native Iterator uxact_list_rpush(Microtransaction microtransaction, Map attributes); + + + + + + + + + + + + + + + + + public native Iterator uxact_document_rename(Microtransaction microtransaction, Map attributes); + + + + + public native Iterator uxact_document_unset(Microtransaction microtransaction, Map attributes); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +} diff --git a/bindings/java/org_hyperdex_client_Client.c b/bindings/java/org_hyperdex_client_Client.c index 90da0ab4..659545a6 100644 --- a/bindings/java/org_hyperdex_client_Client.c +++ b/bindings/java/org_hyperdex_client_Client.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2013, Cornell University +/* Copyright (c) 2013-2015, Cornell University * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/bindings/java/org_hyperdex_client_Microtransaction.c b/bindings/java/org_hyperdex_client_Microtransaction.c new file mode 100644 index 00000000..68e086cc --- /dev/null +++ b/bindings/java/org_hyperdex_client_Microtransaction.c @@ -0,0 +1,86 @@ +/* Copyright (c) 2015, Cornell University + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of HyperDex nor the names of its contributors may be + * used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +/* C */ +#include +#include + +/* HyperDex */ +#include +#include +#include +#include "visibility.h" +#include "bindings/java/org_hyperdex_client_Microtransaction.h" + +JNIEXPORT HYPERDEX_API void JNICALL +Java_org_hyperdex_client_Microtransaction__1create(JNIEnv* env, jobject client, jstring _host, jint port) +{ + jlong lptr; + const char* host; + struct hyperdex_client* ptr; + + lptr = (*env)->GetLongField(env, client, _client_ptr); + ERROR_CHECK_VOID(); + host = (*env)->GetStringUTFChars(env, _host, NULL); + ERROR_CHECK_VOID(); + ptr = hyperdex_client_create(host, port); + (*env)->ReleaseStringUTFChars(env, _host, host); + + if (!ptr) + { + hyperdex_java_out_of_memory(env); + return; + } + + ERROR_CHECK_VOID(); + lptr = (long) ptr; + (*env)->SetLongField(env, client, _client_ptr, lptr); + ERROR_CHECK_VOID(); + assert(sizeof(long) >= sizeof(struct hyperdex_client*)); +} + +JNIEXPORT HYPERDEX_API void JNICALL +Java_org_hyperdex_client_Microtransactoin__1destroy(JNIEnv* env, jobject client) +{ + jlong lptr; + struct hyperdex_client* ptr; + + lptr = (*env)->GetLongField(env, client, _client_ptr); + ERROR_CHECK_VOID(); + ptr = (struct hyperdex_client*)lptr; + + if (ptr) + { + hyperdex_client_destroy(ptr); + } + + (*env)->SetLongField(env, client, _client_ptr, 0); + ERROR_CHECK_VOID(); +} + +#include "bindings/java/org_hyperdex_client_Microtransaction.definitions.c" diff --git a/bindings/java/org_hyperdex_client_Microtransaction.definitions.c b/bindings/java/org_hyperdex_client_Microtransaction.definitions.c new file mode 100644 index 00000000..c553a557 --- /dev/null +++ b/bindings/java/org_hyperdex_client_Microtransaction.definitions.c @@ -0,0 +1,748 @@ +/* Copyright (c) 2015, Cornell University + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of HyperDex nor the names of its contributors may be + * used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* This file is generated by bindings/java.py */ + +#include "visibility.h" + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key) +{ + const char* in_space; + const char* in_key; + size_t in_key_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_key, in_key_sz, &o->status, &o->attrs, &o->attrs_sz); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status_attributes; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key, jobject attributenames); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key, jobject attributenames) +{ + const char* in_space; + const char* in_key; + size_t in_key_sz; + const char** in_attrnames; + size_t in_attrnames_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_attributenames(env, obj, o->arena, attributenames, &in_attrnames, &in_attrnames_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_key, in_key_sz, in_attrnames, in_attrnames_sz, &o->status, &o->attrs, &o->attrs_sz); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status_attributes; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject attributes); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject attributes) +{ + const char* in_space; + const char* in_key; + size_t in_key_sz; + const struct hyperdex_client_attribute* in_attrs; + size_t in_attrs_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_attributes(env, obj, o->arena, attributes, &in_attrs, &in_attrs_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_key, in_key_sz, in_attrs, in_attrs_sz, &o->status); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject attributes); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject attributes) +{ + const char* in_space; + const char* in_key; + size_t in_key_sz; + const struct hyperdex_client_attribute_check* in_checks; + size_t in_checks_sz; + const struct hyperdex_client_attribute* in_attrs; + size_t in_attrs_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_attributes(env, obj, o->arena, attributes, &in_attrs, &in_attrs_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_key, in_key_sz, in_checks, in_checks_sz, in_attrs, in_attrs_sz, &o->status); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_predicates_attributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject attributes); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_predicates_attributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject attributes) +{ + const char* in_space; + const struct hyperdex_client_attribute_check* in_checks; + size_t in_checks_sz; + const struct hyperdex_client_attribute* in_attrs; + size_t in_attrs_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_attributes(env, obj, o->arena, attributes, &in_attrs, &in_attrs_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_checks, in_checks_sz, in_attrs, in_attrs_sz, &o->status, &o->count); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status_count; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key) +{ + const char* in_space; + const char* in_key; + size_t in_key_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_key, in_key_sz, &o->status); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_predicates__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_predicates__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates) +{ + const char* in_space; + const char* in_key; + size_t in_key_sz; + const struct hyperdex_client_attribute_check* in_checks; + size_t in_checks_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_key, in_key_sz, in_checks, in_checks_sz, &o->status); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_predicates__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_predicates__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates) +{ + const char* in_space; + const struct hyperdex_client_attribute_check* in_checks; + size_t in_checks_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_checks, in_checks_sz, &o->status, &o->count); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status_count; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject mapattributes); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject mapattributes) +{ + const char* in_space; + const char* in_key; + size_t in_key_sz; + const struct hyperdex_client_map_attribute* in_mapattrs; + size_t in_mapattrs_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_mapattributes(env, obj, o->arena, mapattributes, &in_mapattrs, &in_mapattrs_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_key, in_key_sz, in_mapattrs, in_mapattrs_sz, &o->status); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject mapattributes); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject mapattributes) +{ + const char* in_space; + const char* in_key; + size_t in_key_sz; + const struct hyperdex_client_attribute_check* in_checks; + size_t in_checks_sz; + const struct hyperdex_client_map_attribute* in_mapattrs; + size_t in_mapattrs_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_mapattributes(env, obj, o->arena, mapattributes, &in_mapattrs, &in_mapattrs_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_key, in_key_sz, in_checks, in_checks_sz, in_mapattrs, in_mapattrs_sz, &o->status); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_predicates_mapattributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject mapattributes); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_predicates_mapattributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject mapattributes) +{ + const char* in_space; + const struct hyperdex_client_attribute_check* in_checks; + size_t in_checks_sz; + const struct hyperdex_client_map_attribute* in_mapattrs; + size_t in_mapattrs_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_mapattributes(env, obj, o->arena, mapattributes, &in_mapattrs, &in_mapattrs_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_checks, in_checks_sz, in_mapattrs, in_mapattrs_sz, &o->status, &o->count); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status_count; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_iterator__spacename_predicates__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_iterator__spacename_predicates__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates) +{ + const char* in_space; + const struct hyperdex_client_attribute_check* in_checks; + size_t in_checks_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _iterator, _iterator_init, obj); + struct hyperdex_java_client_iterator* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_iterator_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_checks, in_checks_sz, &o->status, &o->attrs, &o->attrs_sz); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_iterator_encode_status_attributes; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_predicates__status_description(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const char** description), jstring spacename, jobject predicates); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_asynccall__spacename_predicates__status_description(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const char** description), jstring spacename, jobject predicates) +{ + const char* in_space; + const struct hyperdex_client_attribute_check* in_checks; + size_t in_checks_sz; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_client_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_checks, in_checks_sz, &o->status, &o->description); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_deferred_encode_status_description; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_iterator__spacename_predicates_sortby_limit_maxmin__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates, jstring sortby, jint limit, jboolean maxmin); + +JNIEXPORT HYPERDEX_API jobject JNICALL +hyperdex_java_client_iterator__spacename_predicates_sortby_limit_maxmin__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates, jstring sortby, jint limit, jboolean maxmin) +{ + const char* in_space; + const struct hyperdex_client_attribute_check* in_checks; + size_t in_checks_sz; + const char* in_sort_by; + uint64_t in_limit; + int in_maxmin; + int success = 0; + struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); + jobject op = (*env)->NewObject(env, _iterator, _iterator_init, obj); + struct hyperdex_java_client_iterator* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_iterator_ptr(env, op); + ERROR_CHECK(0); + success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); + if (success < 0) return 0; + success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); + if (success < 0) return 0; + success = hyperdex_java_client_convert_sortby(env, obj, o->arena, sortby, &in_sort_by); + if (success < 0) return 0; + success = hyperdex_java_client_convert_limit(env, obj, o->arena, limit, &in_limit); + if (success < 0) return 0; + success = hyperdex_java_client_convert_maxmin(env, obj, o->arena, maxmin, &in_maxmin); + if (success < 0) return 0; + o->reqid = f(client, in_space, in_checks, in_checks_sz, in_sort_by, in_limit, in_maxmin, &o->status, &o->attrs, &o->attrs_sz); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_client_iterator_encode_status_attributes; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1put(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_put, microtransaction, attributes); +} + + + + + + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1add(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_add, microtransaction, attributes); +} + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1sub(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_sub, microtransaction, attributes); +} + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1mul(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_mul, microtransaction, attributes); +} + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1div(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_div, microtransaction, attributes); +} + + + + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1and(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_and, microtransaction, attributes); +} + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1atomic_1or(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_or, microtransaction, attributes); +} + + + + + + + + + + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1string_1prepend(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_string_prepend, microtransaction, attributes); +} + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1string_1append(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_string_append, microtransaction, attributes); +} + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1list_1lpush(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_list_lpush, microtransaction, attributes); +} + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1list_1rpush(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_list_rpush, microtransaction, attributes); +} + + + + + + + + + + + + + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1document_1rename(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_document_rename, microtransaction, attributes); +} + + + + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Client_uxact_1document_1unset(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +{ + return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_document_unset, microtransaction, attributes); +} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/bindings/java/org_hyperdex_client_Microtransaction.h b/bindings/java/org_hyperdex_client_Microtransaction.h new file mode 100644 index 00000000..90c034b7 --- /dev/null +++ b/bindings/java/org_hyperdex_client_Microtransaction.h @@ -0,0 +1,125 @@ +/* DO NOT EDIT THIS FILE - it is machine generated */ +#include +/* Header for class org_hyperdex_client_Microtransaction */ + +#ifndef _Included_org_hyperdex_client_Microtransaction +#define _Included_org_hyperdex_client_Microtransaction +#ifdef __cplusplus +extern "C" { +#endif +/* + * Class: org_hyperdex_client_Microtransaction + * Method: _create + * Signature: (Lorg/hyperdex/client/Client;Ljava/lang/String;)V + */ +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction__1create + (JNIEnv *, jobject, jobject, jstring); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_put + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1put + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_atomic_add + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1add + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_atomic_sub + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1sub + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_atomic_mul + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1mul + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_atomic_div + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1div + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_atomic_and + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1and + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_atomic_or + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1or + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_string_prepend + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1string_1prepend + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_string_append + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1string_1append + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_list_lpush + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1list_1lpush + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_list_rpush + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1list_1rpush + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_document_rename + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1document_1rename + (JNIEnv *, jobject, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: uxact_document_unset + * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1document_1unset + (JNIEnv *, jobject, jobject, jobject); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/bindings/node.js/client.declarations.cc b/bindings/node.js/client.declarations.cc index b26ad7cc..bbbd2cfe 100644 --- a/bindings/node.js/client.declarations.cc +++ b/bindings/node.js/client.declarations.cc @@ -28,139 +28,3 @@ #ifdef HYPERDEX_NODE_INCLUDED_CLIENT_CC -<<<<<<< HEAD -======= -static v8::Handle asynccall__spacename_key__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_attributenames__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_attributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_predicates_attributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_predicates_attributes__status_count(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_predicates__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_predicates__status_count(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, uint64_t* count), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_mapattributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_key_predicates_mapattributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); -static v8::Handle asynccall__spacename_predicates_mapattributes__status_count(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), const v8::Arguments& args); -static v8::Handle iterator__spacename_predicates__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); -static v8::Handle asynccall__spacename_predicates__status_description(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const char** description), const v8::Arguments& args); -static v8::Handle iterator__spacename_predicates_sortby_limit_maxmin__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); - -static v8::Handle get(const v8::Arguments& args); -static v8::Handle get_partial(const v8::Arguments& args); -static v8::Handle put(const v8::Arguments& args); -static v8::Handle cond_put(const v8::Arguments& args); -static v8::Handle cond_put_or_create(const v8::Arguments& args); -static v8::Handle group_put(const v8::Arguments& args); -static v8::Handle put_if_not_exist(const v8::Arguments& args); -static v8::Handle del(const v8::Arguments& args); -static v8::Handle cond_del(const v8::Arguments& args); -static v8::Handle group_del(const v8::Arguments& args); -static v8::Handle atomic_add(const v8::Arguments& args); -static v8::Handle cond_atomic_add(const v8::Arguments& args); -static v8::Handle group_atomic_add(const v8::Arguments& args); -static v8::Handle atomic_sub(const v8::Arguments& args); -static v8::Handle cond_atomic_sub(const v8::Arguments& args); -static v8::Handle group_atomic_sub(const v8::Arguments& args); -static v8::Handle atomic_mul(const v8::Arguments& args); -static v8::Handle cond_atomic_mul(const v8::Arguments& args); -static v8::Handle group_atomic_mul(const v8::Arguments& args); -static v8::Handle atomic_div(const v8::Arguments& args); -static v8::Handle cond_atomic_div(const v8::Arguments& args); -static v8::Handle group_atomic_div(const v8::Arguments& args); -static v8::Handle atomic_mod(const v8::Arguments& args); -static v8::Handle cond_atomic_mod(const v8::Arguments& args); -static v8::Handle group_atomic_mod(const v8::Arguments& args); -static v8::Handle atomic_and(const v8::Arguments& args); -static v8::Handle cond_atomic_and(const v8::Arguments& args); -static v8::Handle group_atomic_and(const v8::Arguments& args); -static v8::Handle atomic_or(const v8::Arguments& args); -static v8::Handle cond_atomic_or(const v8::Arguments& args); -static v8::Handle group_atomic_or(const v8::Arguments& args); -static v8::Handle atomic_xor(const v8::Arguments& args); -static v8::Handle cond_atomic_xor(const v8::Arguments& args); -static v8::Handle group_atomic_xor(const v8::Arguments& args); -static v8::Handle atomic_min(const v8::Arguments& args); -static v8::Handle cond_atomic_min(const v8::Arguments& args); -static v8::Handle group_atomic_min(const v8::Arguments& args); -static v8::Handle atomic_max(const v8::Arguments& args); -static v8::Handle cond_atomic_max(const v8::Arguments& args); -static v8::Handle group_atomic_max(const v8::Arguments& args); -static v8::Handle string_prepend(const v8::Arguments& args); -static v8::Handle cond_string_prepend(const v8::Arguments& args); -static v8::Handle group_string_prepend(const v8::Arguments& args); -static v8::Handle string_append(const v8::Arguments& args); -static v8::Handle cond_string_append(const v8::Arguments& args); -static v8::Handle group_string_append(const v8::Arguments& args); -static v8::Handle list_lpush(const v8::Arguments& args); -static v8::Handle cond_list_lpush(const v8::Arguments& args); -static v8::Handle group_list_lpush(const v8::Arguments& args); -static v8::Handle list_rpush(const v8::Arguments& args); -static v8::Handle cond_list_rpush(const v8::Arguments& args); -static v8::Handle group_list_rpush(const v8::Arguments& args); -static v8::Handle set_add(const v8::Arguments& args); -static v8::Handle cond_set_add(const v8::Arguments& args); -static v8::Handle group_set_add(const v8::Arguments& args); -static v8::Handle set_remove(const v8::Arguments& args); -static v8::Handle cond_set_remove(const v8::Arguments& args); -static v8::Handle group_set_remove(const v8::Arguments& args); -static v8::Handle set_intersect(const v8::Arguments& args); -static v8::Handle cond_set_intersect(const v8::Arguments& args); -static v8::Handle group_set_intersect(const v8::Arguments& args); -static v8::Handle set_union(const v8::Arguments& args); -static v8::Handle cond_set_union(const v8::Arguments& args); -static v8::Handle group_set_union(const v8::Arguments& args); -static v8::Handle document_rename(const v8::Arguments& args); -static v8::Handle cond_document_rename(const v8::Arguments& args); -static v8::Handle group_document_rename(const v8::Arguments& args); -static v8::Handle document_unset(const v8::Arguments& args); -static v8::Handle cond_document_unset(const v8::Arguments& args); -static v8::Handle group_document_unset(const v8::Arguments& args); -static v8::Handle map_add(const v8::Arguments& args); -static v8::Handle cond_map_add(const v8::Arguments& args); -static v8::Handle group_map_add(const v8::Arguments& args); -static v8::Handle map_remove(const v8::Arguments& args); -static v8::Handle cond_map_remove(const v8::Arguments& args); -static v8::Handle group_map_remove(const v8::Arguments& args); -static v8::Handle map_atomic_add(const v8::Arguments& args); -static v8::Handle cond_map_atomic_add(const v8::Arguments& args); -static v8::Handle group_map_atomic_add(const v8::Arguments& args); -static v8::Handle map_atomic_sub(const v8::Arguments& args); -static v8::Handle cond_map_atomic_sub(const v8::Arguments& args); -static v8::Handle group_map_atomic_sub(const v8::Arguments& args); -static v8::Handle map_atomic_mul(const v8::Arguments& args); -static v8::Handle cond_map_atomic_mul(const v8::Arguments& args); -static v8::Handle group_map_atomic_mul(const v8::Arguments& args); -static v8::Handle map_atomic_div(const v8::Arguments& args); -static v8::Handle cond_map_atomic_div(const v8::Arguments& args); -static v8::Handle group_map_atomic_div(const v8::Arguments& args); -static v8::Handle map_atomic_mod(const v8::Arguments& args); -static v8::Handle cond_map_atomic_mod(const v8::Arguments& args); -static v8::Handle group_map_atomic_mod(const v8::Arguments& args); -static v8::Handle map_atomic_and(const v8::Arguments& args); -static v8::Handle cond_map_atomic_and(const v8::Arguments& args); -static v8::Handle group_map_atomic_and(const v8::Arguments& args); -static v8::Handle map_atomic_or(const v8::Arguments& args); -static v8::Handle cond_map_atomic_or(const v8::Arguments& args); -static v8::Handle group_map_atomic_or(const v8::Arguments& args); -static v8::Handle map_atomic_xor(const v8::Arguments& args); -static v8::Handle cond_map_atomic_xor(const v8::Arguments& args); -static v8::Handle group_map_atomic_xor(const v8::Arguments& args); -static v8::Handle map_string_prepend(const v8::Arguments& args); -static v8::Handle cond_map_string_prepend(const v8::Arguments& args); -static v8::Handle group_map_string_prepend(const v8::Arguments& args); -static v8::Handle map_string_append(const v8::Arguments& args); -static v8::Handle cond_map_string_append(const v8::Arguments& args); -static v8::Handle group_map_string_append(const v8::Arguments& args); -static v8::Handle map_atomic_min(const v8::Arguments& args); -static v8::Handle cond_map_atomic_min(const v8::Arguments& args); -static v8::Handle group_map_atomic_min(const v8::Arguments& args); -static v8::Handle map_atomic_max(const v8::Arguments& args); -static v8::Handle cond_map_atomic_max(const v8::Arguments& args); -static v8::Handle group_map_atomic_max(const v8::Arguments& args); -static v8::Handle search(const v8::Arguments& args); -static v8::Handle search_describe(const v8::Arguments& args); -static v8::Handle sorted_search(const v8::Arguments& args); -static v8::Handle count(const v8::Arguments& args); - -#endif // HYPERDEX_NODE_INCLUDED_CLIENT_CC ->>>>>>> master diff --git a/doc/java/client/ops.tex b/doc/java/client/ops.tex index 951e95d5..9f987cf0 100644 --- a/doc/java/client/ops.tex +++ b/doc/java/client/ops.tex @@ -1,4 +1,4 @@ -% Copyright (c) 2014, Cornell University +% Copyright (c) 2014-2015, Cornell University % All rights reserved. % % Redistribution and use in source and binary forms, with or without diff --git a/test/java/DataTypeDocument.java b/test/java/DataTypeDocument.java new file mode 100644 index 00000000..3e0ddc7f --- /dev/null +++ b/test/java/DataTypeDocument.java @@ -0,0 +1,34 @@ +import java.util.*; + +import org.hyperdex.client.Client; +import org.hyperdex.client.ByteString; +import org.hyperdex.client.HyperDexClientException; +import org.hyperdex.client.Iterator; +import org.hyperdex.client.LessEqual; +import org.hyperdex.client.GreaterEqual; +import org.hyperdex.client.LessThan; +import org.hyperdex.client.GreaterThan; +import org.hyperdex.client.Range; +import org.hyperdex.client.Regex; +import org.hyperdex.client.LengthEquals; +import org.hyperdex.client.LengthLessEqual; +import org.hyperdex.client.LengthGreaterEqual; + +import org.junit.*; + +public class DataTypeListString +{ + private Client c; + + @Before + public void setUp() throws Exception { + c = new Client(args[0], Integer.parseInt(args[1])); + } + + @Test + public static void insertDocument() + { + + } +} + diff --git a/test/java/DataTypeInt.java b/test/java/DataTypeInt.java index fb7a021a..7897b077 100755 --- a/test/java/DataTypeInt.java +++ b/test/java/DataTypeInt.java @@ -14,34 +14,55 @@ import org.hyperdex.client.LengthLessEqual; import org.hyperdex.client.LengthGreaterEqual; +import org.junit.*; +import static org.junit.Assert.* ; + public class DataTypeInt { - public static void main(String[] args) throws HyperDexClientException - { - Client c = new Client(args[0], Integer.parseInt(args[1])); - Map attrs0 = new HashMap(); - Object obj0 = c.put("kv", "k", attrs0); - assert(obj0 != null); - Boolean bool0 = (Boolean)obj0; - assert(bool0 == true); - Map get1 = c.get("kv", "k"); - assert(get1 != null); - Map expected1 = new HashMap(); - expected1.put("v", 0); - get1.entrySet().containsAll(expected1.entrySet()); - expected1.entrySet().containsAll(get1.entrySet()); - Map attrs2 = new HashMap(); - attrs2.put("v", 1); - Object obj2 = c.put("kv", "k", attrs2); - assert(obj2 != null); - Boolean bool2 = (Boolean)obj2; - assert(bool2 == true); - Map get3 = c.get("kv", "k"); - assert(get3 != null); - Map expected3 = new HashMap(); - expected3.put("v", 1); - get3.entrySet().containsAll(expected3.entrySet()); - expected3.entrySet().containsAll(get3.entrySet()); + private Client c; + + @Before + public void setUp() throws Exception { + c = new Client(System.getProperty("hyperdex_host"), + Integer.parseInt(System.getProperty("hyperdex_port"))); + } + + @Test + public void testInsertEmpty() throws HyperDexClientException { + Map attrs = new HashMap(); + Object obj = c.put("kv", "k", attrs); + assertNotNull(obj); + Boolean bool = (Boolean)obj; + assertTrue(bool); + + Map get = c.get("kv", "k"); + assertNotNull(get); + + Map expected = new HashMap(); + expected.put("v", 0); + + assertEquals(expected, get); + } + + @Test + public void testInsertZero() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", 1); + + Boolean res = (Boolean)c.put("kv", "k", attrs); + assertTrue(res); + + Map get = c.get("kv", "k"); + assertNotNull(get); + + Map expected = new HashMap(); + expected.put("v", 1); + + assertEquals(expected, get); + } + + @Test + public void testInteger() throws HyperDexClientException { Map attrs4 = new HashMap(); attrs4.put("v", -1); Object obj4 = c.put("kv", "k", attrs4); diff --git a/test/java/DataTypeString.java b/test/java/DataTypeString.java index ec234162..dd5a68b6 100755 --- a/test/java/DataTypeString.java +++ b/test/java/DataTypeString.java @@ -14,47 +14,65 @@ import org.hyperdex.client.LengthLessEqual; import org.hyperdex.client.LengthGreaterEqual; +import org.junit.*; +import static org.junit.Assert.* ; + public class DataTypeString { - public static void main(String[] args) throws HyperDexClientException - { - Client c = new Client(args[0], Integer.parseInt(args[1])); - Map attrs0 = new HashMap(); - Object obj0 = c.put("kv", "k", attrs0); - assert(obj0 != null); - Boolean bool0 = (Boolean)obj0; - assert(bool0 == true); - Map get1 = c.get("kv", "k"); - assert(get1 != null); - Map expected1 = new HashMap(); - expected1.put("v", ""); - get1.entrySet().containsAll(expected1.entrySet()); - expected1.entrySet().containsAll(get1.entrySet()); - Map attrs2 = new HashMap(); - attrs2.put("v", "xxx"); - Object obj2 = c.put("kv", "k", attrs2); - assert(obj2 != null); - Boolean bool2 = (Boolean)obj2; - assert(bool2 == true); - Map get3 = c.get("kv", "k"); - assert(get3 != null); - Map expected3 = new HashMap(); - expected3.put("v", "xxx"); - get3.entrySet().containsAll(expected3.entrySet()); - expected3.entrySet().containsAll(get3.entrySet()); - Map attrs4 = new HashMap(); - byte[] bytes5 = {(byte) 0xde, (byte) 0xad, (byte) 0xbe, (byte) 0xef}; - attrs4.put("v", new ByteString(bytes5)); - Object obj4 = c.put("kv", "k", attrs4); - assert(obj4 != null); - Boolean bool4 = (Boolean)obj4; - assert(bool4 == true); - Map get6 = c.get("kv", "k"); - assert(get6 != null); - Map expected6 = new HashMap(); - byte[] bytes7 = {(byte) 0xde, (byte) 0xad, (byte) 0xbe, (byte) 0xef}; - expected6.put("v", new ByteString(bytes7)); - get6.entrySet().containsAll(expected6.entrySet()); - expected6.entrySet().containsAll(get6.entrySet()); + private Client c; + + @Before + public void setUp() throws Exception { + c = new Client(System.getProperty("hyperdex_host"), + Integer.parseInt(System.getProperty("hyperdex_port"))); + } + + @Test + public void insertEmptyValue() throws HyperDexClientException { + Map attrs = new HashMap(); + + Object obj = c.put("kv", "k", attrs); + assertNotNull(obj); + Boolean bool = (Boolean)obj; + assertTrue(bool); + + Map get = c.get("kv", "k"); + assertNotNull(get); + + Map expected = new HashMap(); + expected.put("v", ""); + assertEquals(get, expected); + } + + @Test + public void insertString() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", "xxx"); + + Boolean res = (Boolean)c.put("kv", "k", attrs); + assertTrue(res); + + Map get = c.get("kv", "k"); + assertNotNull(get); + + Map expected = new HashMap(); + expected.put("v", "xxx"); + assertEquals(get, expected); + } + + @Test + public void insertBytes() throws HyperDexClientException { + Map attrs = new HashMap(); + byte[] bytes = {(byte) 0xde, (byte) 0xad, (byte) 0xbe, (byte) 0xef}; + attrs.put("v", new ByteString(bytes)); + Boolean res = (Boolean)c.put("kv", "k", attrs); + assertTrue(res); + + Map get = c.get("kv", "k"); + assertNotNull(get); + + Map expected = new HashMap(); + expected.put("v", new ByteString(bytes)); + assertEquals(get, expected); } } diff --git a/test/sh/bindings.java.DataTypeDocument.sh b/test/sh/bindings.java.DataTypeDocument.sh new file mode 100644 index 00000000..6c17c0fd --- /dev/null +++ b/test/sh/bindings.java.DataTypeDocument.sh @@ -0,0 +1,7 @@ +#!/bin/sh +javac -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:/usr/share/java/junit4.jar -d "${HYPERDEX_BUILDDIR}"/test/java "${HYPERDEX_SRCDIR}"/test/java/DataTypeDocument.java + +python2 "${HYPERDEX_SRCDIR}"/test/runner.py --space="space kv key k attributes document v" --daemons=1 -- \ + java -ea -Djava.library.path="${HYPERDEX_BUILDDIR}"/.libs:/usr/local/lib:/usr/local/lib64:/usr/lib:/usr/lib64:/u -Dhyperdex_host={HOST} -Dhyperdex_port={PORT} \ + -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:"${HYPERDEX_SRCDIR}"/test/java:/usr/share/java/junit4.jar org.junit.runner.JUnitCore DataTypeDocument + diff --git a/test/sh/bindings.java.DataTypeInt.sh b/test/sh/bindings.java.DataTypeInt.sh index 563abce9..2ad3edfd 100755 --- a/test/sh/bindings.java.DataTypeInt.sh +++ b/test/sh/bindings.java.DataTypeInt.sh @@ -1,5 +1,6 @@ #!/bin/sh -javac -d "${HYPERDEX_BUILDDIR}"/test/java "${HYPERDEX_SRCDIR}"/test/java/DataTypeInt.java +javac -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:/usr/share/java/junit4.jar -d "${HYPERDEX_BUILDDIR}"/test/java "${HYPERDEX_SRCDIR}"/test/java/DataTypeInt.java python2 "${HYPERDEX_SRCDIR}"/test/runner.py --space="space kv key k attributes int v" --daemons=1 -- \ - java -ea -Djava.library.path="${HYPERDEX_BUILDDIR}"/.libs:/usr/local/lib:/usr/local/lib64:/usr/lib:/usr/lib64 DataTypeInt {HOST} {PORT} + java -ea -Djava.library.path="${HYPERDEX_BUILDDIR}"/.libs:/usr/local/lib:/usr/local/lib64:/usr/lib:/usr/lib64:/u -Dhyperdex_host={HOST} -Dhyperdex_port={PORT} \ + -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:"${HYPERDEX_SRCDIR}"/test/java:/usr/share/java/junit4.jar org.junit.runner.JUnitCore DataTypeInt diff --git a/test/sh/bindings.java.DataTypeString.sh b/test/sh/bindings.java.DataTypeString.sh index ccd8f482..c3b335a0 100755 --- a/test/sh/bindings.java.DataTypeString.sh +++ b/test/sh/bindings.java.DataTypeString.sh @@ -1,5 +1,6 @@ #!/bin/sh -javac -d "${HYPERDEX_BUILDDIR}"/test/java "${HYPERDEX_SRCDIR}"/test/java/DataTypeString.java +javac -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:/usr/share/java/junit4.jar -d "${HYPERDEX_BUILDDIR}"/test/java "${HYPERDEX_SRCDIR}"/test/java/DataTypeString.java python2 "${HYPERDEX_SRCDIR}"/test/runner.py --space="space kv key k attributes v" --daemons=1 -- \ - java -ea -Djava.library.path="${HYPERDEX_BUILDDIR}"/.libs:/usr/local/lib:/usr/local/lib64:/usr/lib:/usr/lib64 DataTypeString {HOST} {PORT} + java -ea -Djava.library.path="${HYPERDEX_BUILDDIR}"/.libs:/usr/local/lib:/usr/local/lib64:/usr/lib:/usr/lib64:/u -Dhyperdex_host={HOST} -Dhyperdex_port={PORT} \ + -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:"${HYPERDEX_SRCDIR}"/test/java:/usr/share/java/junit4.jar org.junit.runner.JUnitCore DataTypeString From 6deae0657bc6d32246d5a66c85fc918c3cf0c924 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Sun, 22 Feb 2015 13:01:43 -0500 Subject: [PATCH 18/28] Almost working document support in Java --- Makefile.am | 7 + bindings/java.py | 2 +- .../java/org/hyperdex/client/ByteString.java | 2 +- bindings/java/org_hyperdex_client_Client.c | 40 +++++- test/java/DataTypeDocument.java | 50 ++++--- test/java/DataTypeInt.java | 124 +++++++++--------- test/java/DataTypeString.java | 23 ++-- test/java/Microtransactions.java | 31 +++++ test/python/DataTypeDocument.py | 5 + test/sh/bindings.java.DataTypeDocument.sh | 0 test/sh/bindings.java.Microtransactions.sh | 6 + 11 files changed, 197 insertions(+), 93 deletions(-) create mode 100644 test/java/Microtransactions.java mode change 100644 => 100755 test/sh/bindings.java.DataTypeDocument.sh create mode 100644 test/sh/bindings.java.Microtransactions.sh diff --git a/Makefile.am b/Makefile.am index c2933a10..5de7f8ce 100644 --- a/Makefile.am +++ b/Makefile.am @@ -624,6 +624,7 @@ EXTRA_DIST += bindings/java.py EXTRA_DIST += bindings/java/org/hyperdex/client/ByteString.java EXTRA_DIST += bindings/java/org_hyperdex_client_Client.definitions.c EXTRA_DIST += bindings/java/org/hyperdex/client/Client.java +EXTRA_DIST += bindings/java/org/hyperdex/client/Document.java EXTRA_DIST += bindings/java/org/hyperdex/client/Deferred.java EXTRA_DIST += bindings/java/org/hyperdex/client/GreaterEqual.java EXTRA_DIST += bindings/java/org/hyperdex/client/GreaterThan.java @@ -634,6 +635,7 @@ EXTRA_DIST += bindings/java/org/hyperdex/client/LengthGreaterEqual.java EXTRA_DIST += bindings/java/org/hyperdex/client/LengthLessEqual.java EXTRA_DIST += bindings/java/org/hyperdex/client/LessEqual.java EXTRA_DIST += bindings/java/org/hyperdex/client/LessThan.java +EXTRA_DIST += bindings/java/org/hyperdex/client/Microtransaction.java EXTRA_DIST += bindings/java/org/hyperdex/client/Operation.java EXTRA_DIST += bindings/java/org/hyperdex/client/Predicate.java EXTRA_DIST += bindings/java/org/hyperdex/client/Range.java @@ -881,6 +883,7 @@ java_wrappers = java_wrappers += test/sh/bindings.java.BasicSearch.sh java_wrappers += test/sh/bindings.java.Basic.sh java_wrappers += test/sh/bindings.java.CondPut.sh +java_wrappers += test/sh/bindings.java.DataTypeDocument.sh java_wrappers += test/sh/bindings.java.DataTypeFloat.sh java_wrappers += test/sh/bindings.java.DataTypeInt.sh java_wrappers += test/sh/bindings.java.DataTypeListFloat.sh @@ -900,6 +903,7 @@ java_wrappers += test/sh/bindings.java.DataTypeSetInt.sh java_wrappers += test/sh/bindings.java.DataTypeSetString.sh java_wrappers += test/sh/bindings.java.DataTypeString.sh java_wrappers += test/sh/bindings.java.LengthString.sh +java_wrappers += test/sh/bindings.java.Microtransactions.sh java_wrappers += test/sh/bindings.java.MultiAttribute.sh java_wrappers += test/sh/bindings.java.RangeSearchInt.sh java_wrappers += test/sh/bindings.java.RangeSearchString.sh @@ -1026,6 +1030,7 @@ EXTRA_DIST += test/python/GroupAtomic.py EXTRA_DIST += test/python/HyperMongo.py EXTRA_DIST += test/python/LengthString.py EXTRA_DIST += test/python/MultiAttribute.py +EXTRA_DIST += test/python/Microtransactions.py EXTRA_DIST += test/python/RangeSearchInt.py EXTRA_DIST += test/python/RangeSearchString.py EXTRA_DIST += test/python/RegexSearch.py @@ -1033,6 +1038,7 @@ EXTRA_DIST += test/python/testlib.py EXTRA_DIST += test/java/Basic.java EXTRA_DIST += test/java/BasicSearch.java EXTRA_DIST += test/java/CondPut.java +EXTRA_DIST += test/java/DataTypeDocument.java EXTRA_DIST += test/java/DataTypeFloat.java EXTRA_DIST += test/java/DataTypeInt.java EXTRA_DIST += test/java/DataTypeListFloat.java @@ -1052,6 +1058,7 @@ EXTRA_DIST += test/java/DataTypeSetInt.java EXTRA_DIST += test/java/DataTypeSetString.java EXTRA_DIST += test/java/DataTypeString.java EXTRA_DIST += test/java/LengthString.java +EXTRA_DIST += test/java/Microtransactions.java EXTRA_DIST += test/java/MultiAttribute.java EXTRA_DIST += test/java/RangeSearchInt.java EXTRA_DIST += test/java/RangeSearchString.java diff --git a/bindings/java.py b/bindings/java.py index 8bcab361..6e3a0c52 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -1,4 +1,4 @@ -# Copyright (c) 2013-2014, Cornell University +# Copyright (c) 2013-2015, Cornell University # All rights reserved. # # Redistribution and use in source and binary forms, with or without diff --git a/bindings/java/org/hyperdex/client/ByteString.java b/bindings/java/org/hyperdex/client/ByteString.java index 1c85e3eb..cc02dc31 100644 --- a/bindings/java/org/hyperdex/client/ByteString.java +++ b/bindings/java/org/hyperdex/client/ByteString.java @@ -1,5 +1,5 @@ /* Copyright (c) 2011-2013, Nick Tolomiczenko - * Copyright (c) 2013, Cornell University + * Copyright (c) 2013-2015, Cornell University * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/bindings/java/org_hyperdex_client_Client.c b/bindings/java/org_hyperdex_client_Client.c index 659545a6..c49444cd 100644 --- a/bindings/java/org_hyperdex_client_Client.c +++ b/bindings/java/org_hyperdex_client_Client.c @@ -56,6 +56,10 @@ static jclass _byte_string; static jmethodID _byte_string_init; static jmethodID _byte_string_get; +static jclass _document; +static jmethodID _document_init; +static jmethodID _document_to_string; + static jclass _boolean; static jmethodID _boolean_init; @@ -166,6 +170,10 @@ Java_org_hyperdex_client_Client_initialize(JNIEnv* env, jclass client) /* cache class String */ REF(_string, (*env)->FindClass(env, "java/lang/String")); + /* cache class Document */ + REF(_document, (*env)->FindClass(env, "org/hyperdex/client/Document")); + _document_init = (*env)->GetMethodID(env, _document, "", "(Ljava/lang/String;)V"); + _document_to_string = (*env)->GetMethodID(env, _document, "toString", "()Ljava/lang/String;"); /* cache class ByteString */ REF(_byte_string, (*env)->FindClass(env, "org/hyperdex/client/ByteString")); _byte_string_init = (*env)->GetMethodID(env, _byte_string, "", "([B)V"); @@ -265,6 +273,9 @@ Java_org_hyperdex_client_Client_initialize(JNIEnv* env, jclass client) _pred_length_greater_equal_x = (*env)->GetFieldID(env, _pred_length_greater_equal, "x", "Ljava/lang/Object;"); CHECK_CACHE(_string); + CHECK_CACHE(_document); + CHECK_CACHE(_document_init); + CHECK_CACHE(_document_to_string); CHECK_CACHE(_byte_string); CHECK_CACHE(_byte_string_init); CHECK_CACHE(_byte_string_get); @@ -344,6 +355,7 @@ Java_org_hyperdex_client_Client_initialize(JNIEnv* env, jclass client) JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Client_terminate(JNIEnv* env, jclass client) { + (*env)->DeleteGlobalRef(env, _document); (*env)->DeleteGlobalRef(env, _string); (*env)->DeleteGlobalRef(env, _byte_string); (*env)->DeleteGlobalRef(env, _boolean); @@ -496,6 +508,7 @@ typedef int (*elem_float_fptr)(void*, double, enum hyperdex_ds_returncode*); return -1; \ } +/* Convert a single elment of a list, map, or set*/ static int hyperdex_java_client_convert_elem(JNIEnv* env, jobject obj, @@ -784,6 +797,27 @@ hyperdex_java_client_convert_type(JNIEnv* env, *datatype = HYPERDATATYPE_GENERIC; return 0; } + else if ((*env)->IsInstanceOf(env, x, _document) == JNI_TRUE) + { + x = (*env)->CallObjectMethod(env, x, _document_to_string); + tmp_str = (*env)->GetStringUTFChars(env, x, 0); + ERROR_CHECK(-1); + tmp_str_sz = (*env)->GetStringUTFLength(env, x); + ERROR_CHECK(-1); + success = hyperdex_ds_copy_string(arena, tmp_str, tmp_str_sz, + &error, value, value_sz); + (*env)->ReleaseStringUTFChars(env, x, tmp_str); + ERROR_CHECK(-1); + *datatype = HYPERDATATYPE_DOCUMENT; + + if (success < 0) + { + hyperdex_java_out_of_memory(env); + return -1; + } + + return 0; + } else if ((*env)->IsInstanceOf(env, x, _string) == JNI_TRUE) { tmp_str = (*env)->GetStringUTFChars(env, x, 0); @@ -1449,8 +1483,10 @@ hyperdex_java_client_build_attribute(JNIEnv* env, BUILD_FLOAT(tmp, tmp_d); return tmp; case HYPERDATATYPE_DOCUMENT: - hyperdex_java_client_throw_exception(env, HYPERDEX_CLIENT_WRONGTYPE, "Java bindings do not support JSON objects"); - return 0; + BUILD_STRING(tmp2, attr->value, attr->value_sz); + // Build document from string + tmp = (*env)->NewObject(env, _document, _document_init, tmp2); + return tmp; case HYPERDATATYPE_LIST_STRING: hyperdex_ds_iterator_init(&iter, attr->datatype, attr->value, attr->value_sz); ret = (*env)->NewObject(env, _array_list, _array_list_init); diff --git a/test/java/DataTypeDocument.java b/test/java/DataTypeDocument.java index 3e0ddc7f..3ce9673c 100644 --- a/test/java/DataTypeDocument.java +++ b/test/java/DataTypeDocument.java @@ -1,34 +1,52 @@ import java.util.*; import org.hyperdex.client.Client; -import org.hyperdex.client.ByteString; +import org.hyperdex.client.Document; import org.hyperdex.client.HyperDexClientException; -import org.hyperdex.client.Iterator; -import org.hyperdex.client.LessEqual; -import org.hyperdex.client.GreaterEqual; -import org.hyperdex.client.LessThan; -import org.hyperdex.client.GreaterThan; -import org.hyperdex.client.Range; -import org.hyperdex.client.Regex; -import org.hyperdex.client.LengthEquals; -import org.hyperdex.client.LengthLessEqual; -import org.hyperdex.client.LengthGreaterEqual; import org.junit.*; +import static org.junit.Assert.* ; -public class DataTypeListString +public class DataTypeDocument { private Client c; @Before - public void setUp() throws Exception { - c = new Client(args[0], Integer.parseInt(args[1])); + public void setUpHyperdexClient() throws Exception { + c = new Client(System.getProperty("hyperdex_host"), + Integer.parseInt(System.getProperty("hyperdex_port"))); + } + + @After + public void destroyHyperdexClient() { + c = null; + } + + @Test + public void insertEmptyValue() throws HyperDexClientException { + Map attrs = new HashMap(); + + Boolean res = c.put("kv", "k", attrs); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap(); + expected.put("v", new Document("{}")); + assertEquals(expected, get); } @Test - public static void insertDocument() - { + public void insertEmptyDocument() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", new Document("{}")); + + Boolean res = c.put("kv", "k", attrs); + assertTrue(res); + Map get = c.get("kv", "k"); + Map expected = new HashMap(); + expected.put("v", new Document("{}")); + assertEquals(expected, get); } } diff --git a/test/java/DataTypeInt.java b/test/java/DataTypeInt.java index 7897b077..3d96d015 100755 --- a/test/java/DataTypeInt.java +++ b/test/java/DataTypeInt.java @@ -22,24 +22,40 @@ public class DataTypeInt private Client c; @Before - public void setUp() throws Exception { + public void setUpHyperdexClient() throws Exception { c = new Client(System.getProperty("hyperdex_host"), Integer.parseInt(System.getProperty("hyperdex_port"))); } + @After + public void destroyHyperdexClient() { + c = null; + } + @Test public void testInsertEmpty() throws HyperDexClientException { Map attrs = new HashMap(); - Object obj = c.put("kv", "k", attrs); - assertNotNull(obj); - Boolean bool = (Boolean)obj; - assertTrue(bool); + Boolean res = c.put("kv", "k", attrs); + assertTrue(res); Map get = c.get("kv", "k"); - assertNotNull(get); + Map expected = new HashMap(); + expected.put("v", 0L); + + assertEquals(expected, get); + } + + @Test + public void testInsertOne() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", 1L); + Boolean res = c.put("kv", "k", attrs); + assertTrue(res); + + Map get = c.get("kv", "k"); Map expected = new HashMap(); - expected.put("v", 0); + expected.put("v", 1L); assertEquals(expected, get); } @@ -47,69 +63,57 @@ public void testInsertEmpty() throws HyperDexClientException { @Test public void testInsertZero() throws HyperDexClientException { Map attrs = new HashMap(); - attrs.put("v", 1); + attrs.put("v", 0L); - Boolean res = (Boolean)c.put("kv", "k", attrs); + Boolean res = c.put("kv", "k", attrs); assertTrue(res); Map get = c.get("kv", "k"); - assertNotNull(get); + Map expected = new HashMap(); + expected.put("v", 0L); + + assertEquals(expected, get); + } + + @Test + public void testNegativeValue() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", -1L); + Boolean res = c.put("kv", "k", attrs); + assertTrue(res); + Map get = c.get("kv", "k"); Map expected = new HashMap(); - expected.put("v", 1); + expected.put("v", -1L); assertEquals(expected, get); } @Test - public void testInteger() throws HyperDexClientException { - Map attrs4 = new HashMap(); - attrs4.put("v", -1); - Object obj4 = c.put("kv", "k", attrs4); - assert(obj4 != null); - Boolean bool4 = (Boolean)obj4; - assert(bool4 == true); - Map get5 = c.get("kv", "k"); - assert(get5 != null); - Map expected5 = new HashMap(); - expected5.put("v", -1); - get5.entrySet().containsAll(expected5.entrySet()); - expected5.entrySet().containsAll(get5.entrySet()); - Map attrs6 = new HashMap(); - attrs6.put("v", 0); - Object obj6 = c.put("kv", "k", attrs6); - assert(obj6 != null); - Boolean bool6 = (Boolean)obj6; - assert(bool6 == true); - Map get7 = c.get("kv", "k"); - assert(get7 != null); - Map expected7 = new HashMap(); - expected7.put("v", 0); - get7.entrySet().containsAll(expected7.entrySet()); - expected7.entrySet().containsAll(get7.entrySet()); - Map attrs8 = new HashMap(); - attrs8.put("v", 9223372036854775807L); - Object obj8 = c.put("kv", "k", attrs8); - assert(obj8 != null); - Boolean bool8 = (Boolean)obj8; - assert(bool8 == true); - Map get9 = c.get("kv", "k"); - assert(get9 != null); - Map expected9 = new HashMap(); - expected9.put("v", 9223372036854775807L); - get9.entrySet().containsAll(expected9.entrySet()); - expected9.entrySet().containsAll(get9.entrySet()); - Map attrs10 = new HashMap(); - attrs10.put("v", -9223372036854775808L); - Object obj10 = c.put("kv", "k", attrs10); - assert(obj10 != null); - Boolean bool10 = (Boolean)obj10; - assert(bool10 == true); - Map get11 = c.get("kv", "k"); - assert(get11 != null); - Map expected11 = new HashMap(); - expected11.put("v", -9223372036854775808L); - get11.entrySet().containsAll(expected11.entrySet()); - expected11.entrySet().containsAll(get11.entrySet()); + public void testInsertHugePositiveValue() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", 9223372036854775807L); + Boolean res = c.put("kv", "k", attrs); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap(); + expected.put("v", 9223372036854775807L); + + assertEquals(expected, get); + } + + @Test + public void testInsertHugeNegativeValue() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", -9223372036854775807L); + Boolean res = c.put("kv", "k", attrs); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap(); + expected.put("v", -9223372036854775807L); + + assertEquals(expected, get); } } diff --git a/test/java/DataTypeString.java b/test/java/DataTypeString.java index dd5a68b6..0c71c9f9 100755 --- a/test/java/DataTypeString.java +++ b/test/java/DataTypeString.java @@ -22,23 +22,24 @@ public class DataTypeString private Client c; @Before - public void setUp() throws Exception { + public void setUpHyperdexClient() throws Exception { c = new Client(System.getProperty("hyperdex_host"), Integer.parseInt(System.getProperty("hyperdex_port"))); } + @After + public void destroyHyperdexClient() { + c = null; + } + @Test public void insertEmptyValue() throws HyperDexClientException { Map attrs = new HashMap(); - Object obj = c.put("kv", "k", attrs); - assertNotNull(obj); - Boolean bool = (Boolean)obj; - assertTrue(bool); + Boolean res = c.put("kv", "k", attrs); + assertTrue(res); Map get = c.get("kv", "k"); - assertNotNull(get); - Map expected = new HashMap(); expected.put("v", ""); assertEquals(get, expected); @@ -49,12 +50,10 @@ public void insertString() throws HyperDexClientException { Map attrs = new HashMap(); attrs.put("v", "xxx"); - Boolean res = (Boolean)c.put("kv", "k", attrs); + Boolean res = c.put("kv", "k", attrs); assertTrue(res); Map get = c.get("kv", "k"); - assertNotNull(get); - Map expected = new HashMap(); expected.put("v", "xxx"); assertEquals(get, expected); @@ -65,12 +64,10 @@ public void insertBytes() throws HyperDexClientException { Map attrs = new HashMap(); byte[] bytes = {(byte) 0xde, (byte) 0xad, (byte) 0xbe, (byte) 0xef}; attrs.put("v", new ByteString(bytes)); - Boolean res = (Boolean)c.put("kv", "k", attrs); + Boolean res = c.put("kv", "k", attrs); assertTrue(res); Map get = c.get("kv", "k"); - assertNotNull(get); - Map expected = new HashMap(); expected.put("v", new ByteString(bytes)); assertEquals(get, expected); diff --git a/test/java/Microtransactions.java b/test/java/Microtransactions.java new file mode 100644 index 00000000..a9183f09 --- /dev/null +++ b/test/java/Microtransactions.java @@ -0,0 +1,31 @@ +import java.util.*; + +import org.hyperdex.client.Client; +import org.hyperdex.client.Document; +import org.hyperdex.client.HyperDexClientException; + +import org.junit.*; +import static org.junit.Assert.* ; + +public class Microtransactions +{ + private Client c; + + @Before + public void setUpHyperdexClient() throws Exception { + c = new Client(System.getProperty("hyperdex_host"), + Integer.parseInt(System.getProperty("hyperdex_port"))); + } + + @After + public void destroyHyperdexClient() { + c = null; + } + + @Test + public void singleOperation() throws HyperDexClientException { + Microtransaction utx = c.initMicrotransaction(); + } +} + + diff --git a/test/python/DataTypeDocument.py b/test/python/DataTypeDocument.py index 5fa41fbe..b431d86e 100644 --- a/test/python/DataTypeDocument.py +++ b/test/python/DataTypeDocument.py @@ -10,7 +10,12 @@ def to_objectset(xs): return set([frozenset(x.items()) for x in xs]) + +# Empty Document +assertTrue(c.put('kv', 'k', {})) +assertEquals(c.get('kv', 'k')['v'], Document({})) +# Basic Stuff assertTrue(c.put('kv', 'k', {'v': Document({})})) assertEquals(c.get('kv', 'k')['v'], Document({})) assertTrue(c.put('kv', 'k', {'v': Document({'a': 'b', 'c': {'d' : 1, 'e': 'f', 'g': -2 }})})) diff --git a/test/sh/bindings.java.DataTypeDocument.sh b/test/sh/bindings.java.DataTypeDocument.sh old mode 100644 new mode 100755 diff --git a/test/sh/bindings.java.Microtransactions.sh b/test/sh/bindings.java.Microtransactions.sh new file mode 100644 index 00000000..c8e64c5c --- /dev/null +++ b/test/sh/bindings.java.Microtransactions.sh @@ -0,0 +1,6 @@ +#!/bin/sh +javac -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:/usr/share/java/junit4.jar -d "${HYPERDEX_BUILDDIR}"/test/java "${HYPERDEX_SRCDIR}"/test/java/Microtransactions.java + +python2 "${HYPERDEX_SRCDIR}"/test/runner.py --space="space kv key k attributes int v" --daemons=1 -- \ + java -ea -Djava.library.path="${HYPERDEX_BUILDDIR}"/.libs:/usr/local/lib:/usr/local/lib64:/usr/lib:/usr/lib64:/u -Dhyperdex_host={HOST} -Dhyperdex_port={PORT} \ + -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:"${HYPERDEX_SRCDIR}"/test/java:/usr/share/java/junit4.jar org.junit.runner.JUnitCore Microtransactions From 15d6a275d8e28809c3a0706474ad04b447ff98fc Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Sun, 22 Feb 2015 15:29:59 -0500 Subject: [PATCH 19/28] Cleaned up bindings --- bindings/node.js/client.declarations.cc | 133 +++++++++++ bindings/nodejs.py | 13 +- bindings/python.py | 13 +- bindings/python/hyperdex/client.pyx | 127 ---------- bindings/ruby.py | 8 +- doc/python/client/ops.tex | 299 ------------------------ 6 files changed, 152 insertions(+), 441 deletions(-) diff --git a/bindings/node.js/client.declarations.cc b/bindings/node.js/client.declarations.cc index bbbd2cfe..e5786ce3 100644 --- a/bindings/node.js/client.declarations.cc +++ b/bindings/node.js/client.declarations.cc @@ -28,3 +28,136 @@ #ifdef HYPERDEX_NODE_INCLUDED_CLIENT_CC +static v8::Handle asynccall__spacename_key__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); +static v8::Handle asynccall__spacename_key_attributenames__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); +static v8::Handle asynccall__spacename_key_attributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); +static v8::Handle asynccall__spacename_key_predicates_attributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); +static v8::Handle asynccall__spacename_predicates_attributes__status_count(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), const v8::Arguments& args); +static v8::Handle asynccall__spacename_key__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); +static v8::Handle asynccall__spacename_key_predicates__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); +static v8::Handle asynccall__spacename_predicates__status_count(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, uint64_t* count), const v8::Arguments& args); +static v8::Handle asynccall__spacename_key_mapattributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); +static v8::Handle asynccall__spacename_key_predicates_mapattributes__status(int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), const v8::Arguments& args); +static v8::Handle asynccall__spacename_predicates_mapattributes__status_count(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), const v8::Arguments& args); +static v8::Handle iterator__spacename_predicates__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); +static v8::Handle asynccall__spacename_predicates__status_description(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const char** description), const v8::Arguments& args); +static v8::Handle iterator__spacename_predicates_sortby_limit_maxmin__status_attributes(int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), const v8::Arguments& args); + +static v8::Handle get(const v8::Arguments& args); +static v8::Handle get_partial(const v8::Arguments& args); +static v8::Handle put(const v8::Arguments& args); +static v8::Handle cond_put(const v8::Arguments& args); +static v8::Handle cond_put_or_create(const v8::Arguments& args); +static v8::Handle group_put(const v8::Arguments& args); +static v8::Handle put_if_not_exist(const v8::Arguments& args); +static v8::Handle del(const v8::Arguments& args); +static v8::Handle cond_del(const v8::Arguments& args); +static v8::Handle group_del(const v8::Arguments& args); +static v8::Handle atomic_add(const v8::Arguments& args); +static v8::Handle cond_atomic_add(const v8::Arguments& args); +static v8::Handle group_atomic_add(const v8::Arguments& args); +static v8::Handle atomic_sub(const v8::Arguments& args); +static v8::Handle cond_atomic_sub(const v8::Arguments& args); +static v8::Handle group_atomic_sub(const v8::Arguments& args); +static v8::Handle atomic_mul(const v8::Arguments& args); +static v8::Handle cond_atomic_mul(const v8::Arguments& args); +static v8::Handle group_atomic_mul(const v8::Arguments& args); +static v8::Handle atomic_div(const v8::Arguments& args); +static v8::Handle cond_atomic_div(const v8::Arguments& args); +static v8::Handle group_atomic_div(const v8::Arguments& args); +static v8::Handle atomic_mod(const v8::Arguments& args); +static v8::Handle cond_atomic_mod(const v8::Arguments& args); +static v8::Handle group_atomic_mod(const v8::Arguments& args); +static v8::Handle atomic_and(const v8::Arguments& args); +static v8::Handle cond_atomic_and(const v8::Arguments& args); +static v8::Handle group_atomic_and(const v8::Arguments& args); +static v8::Handle atomic_or(const v8::Arguments& args); +static v8::Handle cond_atomic_or(const v8::Arguments& args); +static v8::Handle group_atomic_or(const v8::Arguments& args); +static v8::Handle atomic_xor(const v8::Arguments& args); +static v8::Handle cond_atomic_xor(const v8::Arguments& args); +static v8::Handle group_atomic_xor(const v8::Arguments& args); +static v8::Handle atomic_min(const v8::Arguments& args); +static v8::Handle cond_atomic_min(const v8::Arguments& args); +static v8::Handle group_atomic_min(const v8::Arguments& args); +static v8::Handle atomic_max(const v8::Arguments& args); +static v8::Handle cond_atomic_max(const v8::Arguments& args); +static v8::Handle group_atomic_max(const v8::Arguments& args); +static v8::Handle string_prepend(const v8::Arguments& args); +static v8::Handle cond_string_prepend(const v8::Arguments& args); +static v8::Handle group_string_prepend(const v8::Arguments& args); +static v8::Handle string_append(const v8::Arguments& args); +static v8::Handle cond_string_append(const v8::Arguments& args); +static v8::Handle group_string_append(const v8::Arguments& args); +static v8::Handle list_lpush(const v8::Arguments& args); +static v8::Handle cond_list_lpush(const v8::Arguments& args); +static v8::Handle group_list_lpush(const v8::Arguments& args); +static v8::Handle list_rpush(const v8::Arguments& args); +static v8::Handle cond_list_rpush(const v8::Arguments& args); +static v8::Handle group_list_rpush(const v8::Arguments& args); +static v8::Handle set_add(const v8::Arguments& args); +static v8::Handle cond_set_add(const v8::Arguments& args); +static v8::Handle group_set_add(const v8::Arguments& args); +static v8::Handle set_remove(const v8::Arguments& args); +static v8::Handle cond_set_remove(const v8::Arguments& args); +static v8::Handle group_set_remove(const v8::Arguments& args); +static v8::Handle set_intersect(const v8::Arguments& args); +static v8::Handle cond_set_intersect(const v8::Arguments& args); +static v8::Handle group_set_intersect(const v8::Arguments& args); +static v8::Handle set_union(const v8::Arguments& args); +static v8::Handle cond_set_union(const v8::Arguments& args); +static v8::Handle group_set_union(const v8::Arguments& args); +static v8::Handle document_rename(const v8::Arguments& args); +static v8::Handle cond_document_rename(const v8::Arguments& args); +static v8::Handle group_document_rename(const v8::Arguments& args); +static v8::Handle document_unset(const v8::Arguments& args); +static v8::Handle cond_document_unset(const v8::Arguments& args); +static v8::Handle group_document_unset(const v8::Arguments& args); +static v8::Handle map_add(const v8::Arguments& args); +static v8::Handle cond_map_add(const v8::Arguments& args); +static v8::Handle group_map_add(const v8::Arguments& args); +static v8::Handle map_remove(const v8::Arguments& args); +static v8::Handle cond_map_remove(const v8::Arguments& args); +static v8::Handle group_map_remove(const v8::Arguments& args); +static v8::Handle map_atomic_add(const v8::Arguments& args); +static v8::Handle cond_map_atomic_add(const v8::Arguments& args); +static v8::Handle group_map_atomic_add(const v8::Arguments& args); +static v8::Handle map_atomic_sub(const v8::Arguments& args); +static v8::Handle cond_map_atomic_sub(const v8::Arguments& args); +static v8::Handle group_map_atomic_sub(const v8::Arguments& args); +static v8::Handle map_atomic_mul(const v8::Arguments& args); +static v8::Handle cond_map_atomic_mul(const v8::Arguments& args); +static v8::Handle group_map_atomic_mul(const v8::Arguments& args); +static v8::Handle map_atomic_div(const v8::Arguments& args); +static v8::Handle cond_map_atomic_div(const v8::Arguments& args); +static v8::Handle group_map_atomic_div(const v8::Arguments& args); +static v8::Handle map_atomic_mod(const v8::Arguments& args); +static v8::Handle cond_map_atomic_mod(const v8::Arguments& args); +static v8::Handle group_map_atomic_mod(const v8::Arguments& args); +static v8::Handle map_atomic_and(const v8::Arguments& args); +static v8::Handle cond_map_atomic_and(const v8::Arguments& args); +static v8::Handle group_map_atomic_and(const v8::Arguments& args); +static v8::Handle map_atomic_or(const v8::Arguments& args); +static v8::Handle cond_map_atomic_or(const v8::Arguments& args); +static v8::Handle group_map_atomic_or(const v8::Arguments& args); +static v8::Handle map_atomic_xor(const v8::Arguments& args); +static v8::Handle cond_map_atomic_xor(const v8::Arguments& args); +static v8::Handle group_map_atomic_xor(const v8::Arguments& args); +static v8::Handle map_string_prepend(const v8::Arguments& args); +static v8::Handle cond_map_string_prepend(const v8::Arguments& args); +static v8::Handle group_map_string_prepend(const v8::Arguments& args); +static v8::Handle map_string_append(const v8::Arguments& args); +static v8::Handle cond_map_string_append(const v8::Arguments& args); +static v8::Handle group_map_string_append(const v8::Arguments& args); +static v8::Handle map_atomic_min(const v8::Arguments& args); +static v8::Handle cond_map_atomic_min(const v8::Arguments& args); +static v8::Handle group_map_atomic_min(const v8::Arguments& args); +static v8::Handle map_atomic_max(const v8::Arguments& args); +static v8::Handle cond_map_atomic_max(const v8::Arguments& args); +static v8::Handle group_map_atomic_max(const v8::Arguments& args); +static v8::Handle search(const v8::Arguments& args); +static v8::Handle search_describe(const v8::Arguments& args); +static v8::Handle sorted_search(const v8::Arguments& args); +static v8::Handle count(const v8::Arguments& args); + +#endif // HYPERDEX_NODE_INCLUDED_CLIENT_CC diff --git a/bindings/nodejs.py b/bindings/nodejs.py index 4f660cee..832b2cb8 100644 --- a/bindings/nodejs.py +++ b/bindings/nodejs.py @@ -40,6 +40,9 @@ def generate_worker_declarations(xs, lib): call = bindings.call_name(x) if call in calls: continue + if x.form is bindings.MicrotransactionCall: + continue #TODO support microtransactions in NodeJS + assert x.form in (bindings.AsyncCall, bindings.Iterator) fptr = bindings.c.generate_func_ptr(x, lib) yield 'static v8::Handle {0}({1}, const v8::Arguments& args);'.format(call, fptr) @@ -56,6 +59,8 @@ def generate_worker_definitions(xs, lib): call = bindings.call_name(x) if call in calls: continue + if x.form is bindings.MicrotransactionCall: + continue #TODO support microtransactions in NodeJS assert x.form in (bindings.AsyncCall, bindings.Iterator) fptr = bindings.c.generate_func_ptr(x, lib) func = 'v8::Handle\nHyperDexClient :: ' @@ -181,7 +186,7 @@ def generate_client_declarations(): fout.write('#ifdef HYPERDEX_NODE_INCLUDED_CLIENT_CC\n\n') fout.write('\n'.join(generate_worker_declarations(bindings.Client, 'client'))) fout.write('\n\n') - fout.write('\n'.join([generate_declaration(c) for c in bindings.Client])) + fout.write('\n'.join([generate_declaration(c) for c in bindings.Client if c.form is not bindings.MicrotransactionCall])) fout.write('\n\n#endif // HYPERDEX_NODE_INCLUDED_CLIENT_CC\n') def generate_client_definitions(): @@ -191,7 +196,7 @@ def generate_client_definitions(): fout.write('#ifdef HYPERDEX_NODE_INCLUDED_CLIENT_CC\n\n') fout.write('\n'.join(generate_worker_definitions(bindings.Client, 'client'))) fout.write('\n\n') - fout.write('\n'.join([generate_definition(c) for c in bindings.Client])) + fout.write('\n'.join([generate_definition(c) for c in bindings.Client if c.form is not bindings.MicrotransactionCall])) fout.write('\n#endif // HYPERDEX_NODE_INCLUDED_CLIENT_CC\n') def generate_client_prototypes(): @@ -199,7 +204,7 @@ def generate_client_prototypes(): fout.write(bindings.copyright('/', '2014')) fout.write('\n// This file is generated by bindings/nodejs.py\n\n') fout.write('#ifdef HYPERDEX_NODE_INCLUDED_CLIENT_CC\n\n') - fout.write('\n'.join([generate_prototype(c) for c in bindings.Client])) + fout.write('\n'.join([generate_prototype(c) for c in bindings.Client if c.form is not bindings.MicrotransactionCall])) fout.write('\n\n#endif // HYPERDEX_NODE_INCLUDED_CLIENT_CC\n') def generate_client_doc(): @@ -207,7 +212,7 @@ def generate_client_doc(): fout.write(bindings.copyright('%', '2014')) fout.write('\n% This LaTeX file is generated by bindings/nodejs.py\n\n') fout.write('\n'.join([generate_api_block(c, 'client') for c in bindings.Client - if c.name not in bindings.DoNotDocument])) + if c.name not in bindings.DoNotDocument and c.form is not bindings.MicrotransactionCall])) if __name__ == '__main__': generate_client_declarations() diff --git a/bindings/python.py b/bindings/python.py index 96b24b9a..387f98cc 100644 --- a/bindings/python.py +++ b/bindings/python.py @@ -171,10 +171,7 @@ def generate_workers(xs): raise RuntimeError('unknown function type') calls.add(call) -def generate_microtransaction_method(x, lib): - if not (x.form is bindings.MicrotransactionCall): - return '' - +def generate_microtransaction_method(x, lib): py_name = name(x).replace('uxact_', '') typed_args = ', '.join([(PYTYPEOF(arg) + ' ' + arg_name(arg)).strip() @@ -213,7 +210,7 @@ def generate_method(x, lib, auth=True): meth = 'def {0}(self, {1}):\n'.format(name(x), typed_args) meth += ' return self.{0}(hyperdex_{3}_{1}, {2})\n'.format(bindings.call_name(x), x.name, arg_list, lib) elif x.form == bindings.MicrotransactionCall: - return '' #not in client + raise RuntimeError('generate_method cannot be called on MicrotransactionCall') else: raise RuntimeError('unknown function type') return indent(meth)[:-1] @@ -276,9 +273,9 @@ def generate_client_python(): current = bindings.substitute_generated('Function Pointers', current, fps, prefix='#') methods = '\n'.join(generate_workers(bindings.Client)) methods += '\n' - methods += '\n'.join([generate_method(c, 'client') for c in bindings.Client]) + methods += '\n'.join([generate_method(c, 'client') for c in bindings.Client if c.form is not bindings.MicrotransactionCall]) current = bindings.substitute_generated('Methods', current, methods, prefix='#') - utx_methods = '\n'.join([generate_microtransaction_method(c, 'client') for c in bindings.Client]) + utx_methods = '\n'.join([generate_microtransaction_method(c, 'client') for c in bindings.Client if c.form is bindings.MicrotransactionCall]) current = bindings.substitute_generated('UTX Methods', current, utx_methods, prefix='#') fout.write(current) @@ -287,7 +284,7 @@ def generate_client_doc(): fout.write(bindings.copyright('%', '2014')) fout.write('\n% This LaTeX file is generated by bindings/python.py\n\n') fout.write('\n'.join([generate_api_block(c, 'client') for c in bindings.Client - if c.name not in bindings.DoNotDocument])) + if c.name not in bindings.DoNotDocument and c.form is not bindings.MicrotransactionCall])) if __name__ == '__main__': generate_client_python() diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index c693c5c5..ddfe6016 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -1192,9 +1192,6 @@ cdef class Microtransaction: self.transaction = hyperdex_client_uxact_init(self.client.client, in_space, &self.deferred.status) # Begin Automatically Generated UTX Methods - - - def put(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1203,13 +1200,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - - - - - def atomic_add(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1218,9 +1208,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - def atomic_sub(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1229,9 +1216,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - def atomic_mul(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1240,9 +1224,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - def atomic_div(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1251,12 +1232,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - - - - def atomic_and(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1265,9 +1240,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - def atomic_or(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1276,18 +1248,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - - - - - - - - - - def string_prepend(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1296,9 +1256,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - def string_append(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1307,9 +1264,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - def list_lpush(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1318,9 +1272,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - def list_rpush(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1329,21 +1280,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - - - - - - - - - - - - - def document_rename(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1352,9 +1288,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - def document_unset(self, dict attributes): cdef hyperdex_client_attribute* in_attrs cdef size_t in_attrs_sz @@ -1363,53 +1296,6 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # End Automatically Generated UTX Methods def async_group_commit(self, dict checks): cdef hyperdex_client_attribute_check* chks @@ -1894,7 +1780,6 @@ cdef class Client: if secret is not None: attributes['__secret'] = secret return self.async_put(spacename, key, attributes, auth).wait() - def async_cond_put(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_put, spacename, key, predicates, attributes, auth) def cond_put(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1935,7 +1820,6 @@ cdef class Client: def atomic_add(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_add(spacename, key, attributes, auth).wait() - def async_cond_atomic_add(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_add, spacename, key, predicates, attributes, auth) def cond_atomic_add(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1951,7 +1835,6 @@ cdef class Client: def atomic_sub(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_sub(spacename, key, attributes, auth).wait() - def async_cond_atomic_sub(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_sub, spacename, key, predicates, attributes, auth) def cond_atomic_sub(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1967,7 +1850,6 @@ cdef class Client: def atomic_mul(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_mul(spacename, key, attributes, auth).wait() - def async_cond_atomic_mul(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_mul, spacename, key, predicates, attributes, auth) def cond_atomic_mul(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -1983,7 +1865,6 @@ cdef class Client: def atomic_div(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_div(spacename, key, attributes, auth).wait() - def async_cond_atomic_div(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_div, spacename, key, predicates, attributes, auth) def cond_atomic_div(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2014,7 +1895,6 @@ cdef class Client: def atomic_and(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_and(spacename, key, attributes, auth).wait() - def async_cond_atomic_and(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_and, spacename, key, predicates, attributes, auth) def cond_atomic_and(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2030,7 +1910,6 @@ cdef class Client: def atomic_or(self, bytes spacename, key, dict attributes, auth=None): return self.async_atomic_or(spacename, key, attributes, auth).wait() - def async_cond_atomic_or(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_atomic_or, spacename, key, predicates, attributes, auth) def cond_atomic_or(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2091,7 +1970,6 @@ cdef class Client: def string_prepend(self, bytes spacename, key, dict attributes, auth=None): return self.async_string_prepend(spacename, key, attributes, auth).wait() - def async_cond_string_prepend(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_string_prepend, spacename, key, predicates, attributes, auth) def cond_string_prepend(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2107,7 +1985,6 @@ cdef class Client: def string_append(self, bytes spacename, key, dict attributes, auth=None): return self.async_string_append(spacename, key, attributes, auth).wait() - def async_cond_string_append(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_string_append, spacename, key, predicates, attributes, auth) def cond_string_append(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2123,7 +2000,6 @@ cdef class Client: def list_lpush(self, bytes spacename, key, dict attributes, auth=None): return self.async_list_lpush(spacename, key, attributes, auth).wait() - def async_cond_list_lpush(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_list_lpush, spacename, key, predicates, attributes, auth) def cond_list_lpush(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2139,7 +2015,6 @@ cdef class Client: def list_rpush(self, bytes spacename, key, dict attributes, auth=None): return self.async_list_rpush(spacename, key, attributes, auth).wait() - def async_cond_list_rpush(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_list_rpush, spacename, key, predicates, attributes, auth) def cond_list_rpush(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2215,7 +2090,6 @@ cdef class Client: def document_rename(self, bytes spacename, key, dict attributes, auth=None): return self.async_document_rename(spacename, key, attributes, auth).wait() - def async_cond_document_rename(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_document_rename, spacename, key, predicates, attributes, auth) def cond_document_rename(self, bytes spacename, key, dict predicates, dict attributes, auth=None): @@ -2231,7 +2105,6 @@ cdef class Client: def document_unset(self, bytes spacename, key, dict attributes, auth=None): return self.async_document_unset(spacename, key, attributes, auth).wait() - def async_cond_document_unset(self, bytes spacename, key, dict predicates, dict attributes, auth=None): return self.asynccall__spacename_key_predicates_attributes__status(hyperdex_client_cond_document_unset, spacename, key, predicates, attributes, auth) def cond_document_unset(self, bytes spacename, key, dict predicates, dict attributes, auth=None): diff --git a/bindings/ruby.py b/bindings/ruby.py index 2901374d..ea72eda4 100644 --- a/bindings/ruby.py +++ b/bindings/ruby.py @@ -76,6 +76,8 @@ def generate_worker(call, x): def generate_workers(xs): calls = set([]) for x in xs: + if x.form is bindings.MicrotransactionCall: + continue #TODO support microtransactions in Ruby call = bindings.call_name(x) if call in calls: continue @@ -173,21 +175,21 @@ def generate_client_prototypes(): fout = open(os.path.join(BASE, 'bindings/ruby/prototypes.c'), 'w') fout.write(bindings.copyright('*', '2013-2014')) fout.write('\n/* This file is generated by bindings/ruby.py */\n\n') - fout.write(''.join([generate_prototype(c) for c in bindings.Client])) + fout.write(''.join([generate_prototype(c) for c in bindings.Client if c.form is not bindings.MicrotransactionCall])) def generate_client_definitions(): fout = open(os.path.join(BASE, 'bindings/ruby/definitions.c'), 'w') fout.write(bindings.copyright('*', '2013-2014')) fout.write('\n/* This file is generated by bindings/ruby.py */\n\n') fout.write('\n'.join(generate_workers(bindings.Client))) - fout.write('\n'.join([generate_definition(c) for c in bindings.Client])) + fout.write('\n'.join([generate_definition(c) for c in bindings.Client if c.form is not bindings.MicrotransactionCall])) def generate_client_doc(): fout = open(os.path.join(BASE, 'doc/ruby/client/ops.tex'), 'w') fout.write(bindings.copyright('%', '2013-2014')) fout.write('\n% This LaTeX file is generated by bindings/ruby.py\n\n') fout.write('\n'.join([generate_api_block(c, 'client') for c in bindings.Client - if c.name not in bindings.DoNotDocument])) + if c.name not in bindings.DoNotDocument if c.form is not bindings.MicrotransactionCall])) if __name__ == '__main__': generate_client_prototypes() diff --git a/doc/python/client/ops.tex b/doc/python/client/ops.tex index 6c885fb6..dd6944b0 100644 --- a/doc/python/client/ops.tex +++ b/doc/python/client/ops.tex @@ -175,29 +175,6 @@ \subsubsection{\code{async\_put}} \paragraph{See also:} This is the asynchronous form of \code{put}. -%%%%%%%%%%%%%%%%%%%% uxact_put %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_put}} -\label{api:python:uxact_put} -\index{uxact\_put!Python API} -\input{\topdir/client/fragments/uxact_put} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_put(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_put %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_put}} @@ -606,29 +583,6 @@ \subsubsection{\code{async\_atomic\_add}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_add}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_add %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_add}} -\label{api:python:uxact_atomic_add} -\index{uxact\_atomic\_add!Python API} -\input{\topdir/client/fragments/uxact_atomic_add} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_atomic_add(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_add %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_add}} @@ -786,29 +740,6 @@ \subsubsection{\code{async\_atomic\_sub}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_sub}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_sub %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_sub}} -\label{api:python:uxact_atomic_sub} -\index{uxact\_atomic\_sub!Python API} -\input{\topdir/client/fragments/uxact_atomic_sub} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_atomic_sub(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_sub %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_sub}} @@ -966,29 +897,6 @@ \subsubsection{\code{async\_atomic\_mul}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_mul}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_mul %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_mul}} -\label{api:python:uxact_atomic_mul} -\index{uxact\_atomic\_mul!Python API} -\input{\topdir/client/fragments/uxact_atomic_mul} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_atomic_mul(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_mul %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_mul}} @@ -1146,29 +1054,6 @@ \subsubsection{\code{async\_atomic\_div}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_div}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_div %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_div}} -\label{api:python:uxact_atomic_div} -\index{uxact\_atomic\_div!Python API} -\input{\topdir/client/fragments/uxact_atomic_div} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_atomic_div(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_div %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_div}} @@ -1483,29 +1368,6 @@ \subsubsection{\code{async\_atomic\_and}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_and}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_and %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_and}} -\label{api:python:uxact_atomic_and} -\index{uxact\_atomic\_and!Python API} -\input{\topdir/client/fragments/uxact_atomic_and} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_atomic_and(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_and %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_and}} @@ -1663,29 +1525,6 @@ \subsubsection{\code{async\_atomic\_or}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_or}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_or %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_or}} -\label{api:python:uxact_atomic_or} -\index{uxact\_atomic\_or!Python API} -\input{\topdir/client/fragments/uxact_atomic_or} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_atomic_or(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_or %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_or}} @@ -2314,29 +2153,6 @@ \subsubsection{\code{async\_string\_prepend}} \paragraph{See also:} This is the asynchronous form of \code{string\_prepend}. -%%%%%%%%%%%%%%%%%%%% uxact_string_prepend %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_string\_prepend}} -\label{api:python:uxact_string_prepend} -\index{uxact\_string\_prepend!Python API} -\input{\topdir/client/fragments/uxact_string_prepend} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_string_prepend(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_string_prepend %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_string\_prepend}} @@ -2494,29 +2310,6 @@ \subsubsection{\code{async\_string\_append}} \paragraph{See also:} This is the asynchronous form of \code{string\_append}. -%%%%%%%%%%%%%%%%%%%% uxact_string_append %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_string\_append}} -\label{api:python:uxact_string_append} -\index{uxact\_string\_append!Python API} -\input{\topdir/client/fragments/uxact_string_append} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_string_append(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_string_append %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_string\_append}} @@ -2674,29 +2467,6 @@ \subsubsection{\code{async\_list\_lpush}} \paragraph{See also:} This is the asynchronous form of \code{list\_lpush}. -%%%%%%%%%%%%%%%%%%%% uxact_list_lpush %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_list\_lpush}} -\label{api:python:uxact_list_lpush} -\index{uxact\_list\_lpush!Python API} -\input{\topdir/client/fragments/uxact_list_lpush} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_list_lpush(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_list_lpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_list\_lpush}} @@ -2854,29 +2624,6 @@ \subsubsection{\code{async\_list\_rpush}} \paragraph{See also:} This is the asynchronous form of \code{list\_rpush}. -%%%%%%%%%%%%%%%%%%%% uxact_list_rpush %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_list\_rpush}} -\label{api:python:uxact_list_rpush} -\index{uxact\_list\_rpush!Python API} -\input{\topdir/client/fragments/uxact_list_rpush} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_list_rpush(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_list_rpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_list\_rpush}} @@ -3662,29 +3409,6 @@ \subsubsection{\code{async\_document\_rename}} \paragraph{See also:} This is the asynchronous form of \code{document\_rename}. -%%%%%%%%%%%%%%%%%%%% uxact_document_rename %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_document\_rename}} -\label{api:python:uxact_document_rename} -\index{uxact\_document\_rename!Python API} -\input{\topdir/client/fragments/uxact_document_rename} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_document_rename(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_document_rename %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_document\_rename}} @@ -3842,29 +3566,6 @@ \subsubsection{\code{async\_document\_unset}} \paragraph{See also:} This is the asynchronous form of \code{document\_unset}. -%%%%%%%%%%%%%%%%%%%% uxact_document_unset %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_document\_unset}} -\label{api:python:uxact_document_unset} -\index{uxact\_document\_unset!Python API} -\input{\topdir/client/fragments/uxact_document_unset} - -\paragraph{Definition:} -\begin{pythoncode} -def uxact_document_unset(self, microtransaction, attributes) -\end{pythoncode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{microtransaction}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_microtransaction} -\item \code{attributes}\\ -\input{\topdir/python/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/python/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_document_unset %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_document\_unset}} From afbb25bd0da65cce67649381b956f9b4c3822bf4 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Sun, 22 Feb 2015 18:44:50 -0500 Subject: [PATCH 20/28] More testing for Document --- .../java/org/hyperdex/client/Document.java | 56 +++++++++++++++++++ bindings/java/org_hyperdex_client_Client.c | 9 ++- test/java/DataTypeDocument.java | 26 +++++++++ test/java/DataTypeString.java | 10 ++++ 4 files changed, 98 insertions(+), 3 deletions(-) create mode 100644 bindings/java/org/hyperdex/client/Document.java diff --git a/bindings/java/org/hyperdex/client/Document.java b/bindings/java/org/hyperdex/client/Document.java new file mode 100644 index 00000000..c9e8c228 --- /dev/null +++ b/bindings/java/org/hyperdex/client/Document.java @@ -0,0 +1,56 @@ +/* Copyright (c) 2015, Cornell University + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of HyperDex nor the names of its contributors may be + * used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +package org.hyperdex.client; + +public class Document { + private String json; + + public Document(String json) { + this.json = json; + } + + @Override + public String toString() { + return json; + } + + @Override + public int hashCode() { + return json.hashCode(); + } + + @Override + public boolean equals(Object object) { + if(object instanceof Document) { + return ((Document)object).toString().equals(this.toString()); + } else { + return false; + } + } +} diff --git a/bindings/java/org_hyperdex_client_Client.c b/bindings/java/org_hyperdex_client_Client.c index c49444cd..a4609bdd 100644 --- a/bindings/java/org_hyperdex_client_Client.c +++ b/bindings/java/org_hyperdex_client_Client.c @@ -55,6 +55,7 @@ static jclass _string; static jclass _byte_string; static jmethodID _byte_string_init; static jmethodID _byte_string_get; +static jmethodID _byte_string_to_string; static jclass _document; static jmethodID _document_init; @@ -178,6 +179,7 @@ Java_org_hyperdex_client_Client_initialize(JNIEnv* env, jclass client) REF(_byte_string, (*env)->FindClass(env, "org/hyperdex/client/ByteString")); _byte_string_init = (*env)->GetMethodID(env, _byte_string, "", "([B)V"); _byte_string_get = (*env)->GetMethodID(env, _byte_string, "getBytes", "()[B"); + _byte_string_to_string = (*env)->GetMethodID(env, _byte_string, "toString", "()Ljava/lang/String;"); /* cache class Boolean */ REF(_boolean, (*env)->FindClass(env, "java/lang/Boolean")); _boolean_init = (*env)->GetMethodID(env, _boolean, "", "(Z)V"); @@ -279,6 +281,7 @@ Java_org_hyperdex_client_Client_initialize(JNIEnv* env, jclass client) CHECK_CACHE(_byte_string); CHECK_CACHE(_byte_string_init); CHECK_CACHE(_byte_string_get); + CHECK_CACHE(_byte_string_to_string); CHECK_CACHE(_boolean); CHECK_CACHE(_boolean_init); CHECK_CACHE(_long); @@ -1483,10 +1486,10 @@ hyperdex_java_client_build_attribute(JNIEnv* env, BUILD_FLOAT(tmp, tmp_d); return tmp; case HYPERDATATYPE_DOCUMENT: - BUILD_STRING(tmp2, attr->value, attr->value_sz); + BUILD_STRING(tmp, attr->value, attr->value_sz); // Build document from string - tmp = (*env)->NewObject(env, _document, _document_init, tmp2); - return tmp; + tmp2 = (*env)->CallObjectMethod(env, tmp, _byte_string_to_string); + return (*env)->NewObject(env, _document, _document_init, tmp2); case HYPERDATATYPE_LIST_STRING: hyperdex_ds_iterator_init(&iter, attr->datatype, attr->value, attr->value_sz); ret = (*env)->NewObject(env, _array_list, _array_list_init); diff --git a/test/java/DataTypeDocument.java b/test/java/DataTypeDocument.java index 3ce9673c..0746a7d0 100644 --- a/test/java/DataTypeDocument.java +++ b/test/java/DataTypeDocument.java @@ -46,6 +46,32 @@ public void insertEmptyDocument() throws HyperDexClientException { Map get = c.get("kv", "k"); Map expected = new HashMap(); expected.put("v", new Document("{}")); + + String str1 = expected.get("v").toString(); + String str2 = get.get("v").toString(); + + assertEquals(str1.length(), str2.length()); + for(int i = 0; i < str1.length(); ++i) + { + assertEquals(str1.charAt(i), str2.charAt(i)); + } + + assertEquals(expected.get("v"), get.get("v")); + assertEquals(expected, get); + } + + @Test + public void insertNestedDocument() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", new Document("{\"a\" : { \"b\" : \"c\"}}")); + + Boolean res = c.put("kv", "k", attrs); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap(); + assert(get.get("v") instanceof Document); + expected.put("v", new Document("{\"a\":{\"b\":\"c\"}}")); // be careful about formatting... assertEquals(expected, get); } } diff --git a/test/java/DataTypeString.java b/test/java/DataTypeString.java index 0c71c9f9..4f82608d 100755 --- a/test/java/DataTypeString.java +++ b/test/java/DataTypeString.java @@ -72,4 +72,14 @@ public void insertBytes() throws HyperDexClientException { expected.put("v", new ByteString(bytes)); assertEquals(get, expected); } + + @Test + public void correctByteString() { + String original = "42 is the answer"; + + ByteString bstring = new ByteString(bstring.getBytes()); + String result = bstring.toString(); + + assertEquals(original, result); + } } From 5e0d18a9cc6cab957482868505a5876e8b6f9ac9 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Sun, 22 Feb 2015 23:14:01 -0500 Subject: [PATCH 21/28] Some more Java microtransaction work --- Makefile.am | 2 + bindings/java.py | 62 +- .../java/org/hyperdex/client/ByteString.java | 3 +- bindings/java/org/hyperdex/client/Client.java | 13 - .../org/hyperdex/client/Microtransaction.java | 142 ++- .../org_hyperdex_client_Client.definitions.c | 13 - .../org_hyperdex_client_Microtransaction.c | 38 +- ...rdex_client_Microtransaction.definitions.c | 168 +-- .../org_hyperdex_client_Microtransaction.h | 980 +++++++++++++++++- doc/java/client/ops.tex | 286 ----- test/java/DataTypeDocument.java | 14 +- test/java/DataTypeInt.java | 4 +- test/java/DataTypeString.java | 6 +- test/java/Microtransactions.java | 3 +- test/sh/bindings.java.Microtransactions.sh | 0 15 files changed, 1140 insertions(+), 594 deletions(-) mode change 100644 => 100755 test/sh/bindings.java.Microtransactions.sh diff --git a/Makefile.am b/Makefile.am index 5de7f8ce..f7033c6d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -636,6 +636,7 @@ EXTRA_DIST += bindings/java/org/hyperdex/client/LengthLessEqual.java EXTRA_DIST += bindings/java/org/hyperdex/client/LessEqual.java EXTRA_DIST += bindings/java/org/hyperdex/client/LessThan.java EXTRA_DIST += bindings/java/org/hyperdex/client/Microtransaction.java +EXTRA_DIST += bindings/java/org_hyperdex_client_Microtransaction.definitions.c EXTRA_DIST += bindings/java/org/hyperdex/client/Operation.java EXTRA_DIST += bindings/java/org/hyperdex/client/Predicate.java EXTRA_DIST += bindings/java/org/hyperdex/client/Range.java @@ -658,6 +659,7 @@ noinst_HEADERS += bindings/java/org_hyperdex_client_Range.h noinst_HEADERS += bindings/java/org_hyperdex_client_Regex.h libhyperdex_client_java_la_SOURCES = +libhyperdex_client_java_la_SOURCES += bindings/java/org_hyperdex_client_Microtransaction.c libhyperdex_client_java_la_SOURCES += bindings/java/org_hyperdex_client_Client.c libhyperdex_client_java_la_CPPFLAGS = $(JNI_CPPFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) libhyperdex_client_java_la_CFLAGS = $(AM_CFLAGS) $(CFLAGS) -Wmissing-prototypes diff --git a/bindings/java.py b/bindings/java.py index 6e3a0c52..5f407cf6 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -71,41 +71,11 @@ def CTYPEOF(x): raise RuntimeError('Unknown type: ' + str(x)) def generate_microtransaction_prototype(x): - if x.form is not bindings.MicrotransactionCall: - return '' - - args_list = ', '.join([JTYPEOF(arg) + ' ' + arg.__name__.lower() for arg in x.args_in]) - if x.form == bindings.AsyncCall: - if x.args_out == (bindings.Status, bindings.Attributes): - ret = 'Map' - elif x.args_out == (bindings.Status, bindings.Description): - ret = 'String' - elif x.args_out == (bindings.Status, bindings.Count): - ret = 'Long' - elif x.args_out == (bindings.Status,): - ret = 'Boolean' - else: - print x.args_out - assert False - proto = ' public native Deferred async_{0}({1}) throws HyperDexClientException;\n'.format(x.name, args_list) - proto += ' public {1} {0}('.format(x.name, ret) - proto += args_list - proto += ') throws HyperDexClientException\n {\n' - args_list = ', '.join([arg.__name__.lower() for arg in x.args_in]) - proto += ' return ({2}) async_{0}({1}).waitForIt();\n'.format(x.name, args_list, ret) - proto += ' }\n' - return proto - elif (x.form == bindings.MicrotransactionCall or x.form == bindings.Iterator): - return ' public native Iterator {0}({1});\n'.format(x.name, args_list) - else: - assert False + return ' public native Integer {0}(Map attrs) throws HyperDexClientException;\n'.format(x.name) def generate_client_prototype(x): - if x.form is bindings.MicrotransactionCall: - return '' - args_list = ', '.join([JTYPEOF(arg) + ' ' + arg.__name__.lower() for arg in x.args_in]) - if x.form == bindings.AsyncCall: + if x.form is bindings.AsyncCall: if x.args_out == (bindings.Status, bindings.Attributes): ret = 'Map' elif x.args_out == (bindings.Status, bindings.Description): @@ -115,8 +85,8 @@ def generate_client_prototype(x): elif x.args_out == (bindings.Status,): ret = 'Boolean' else: - print x.args_out - assert False + raise RuntimeError('Cannot handle args: ' + str(x.args_out)) + proto = ' public native Deferred async_{0}({1}) throws HyperDexClientException;\n'.format(x.name, args_list) proto += ' public {1} {0}('.format(x.name, ret) proto += args_list @@ -125,10 +95,10 @@ def generate_client_prototype(x): proto += ' return ({2}) async_{0}({1}).waitForIt();\n'.format(x.name, args_list, ret) proto += ' }\n' return proto - elif (x.form == bindings.MicrotransactionCall or x.form == bindings.Iterator): + elif x.form is bindings.Iterator: return ' public native Iterator {0}({1});\n'.format(x.name, args_list) else: - assert False + raise RuntimeError('Unknown function type: ' + str(x.form)) def generate_worker(call, x): if x.form == bindings.AsyncCall: @@ -136,7 +106,7 @@ def generate_worker(call, x): elif x.form == bindings.Iterator: cls = 'iterator' else: - assert False + raise RuntimeError('Unknown function type: ' + str(x.form)) fptr = bindings.c.generate_func_ptr(x, 'client') func = 'JNIEXPORT HYPERDEX_API jobject JNICALL\n' @@ -187,25 +157,19 @@ def generate_workers(xs): calls.add(call) def generate_microtransaction_definition(x): - if not (x.form is bindings.MicrotransactionCall): - return '' - func = 'JNIEXPORT HYPERDEX_API jint JNICALL\n' - func += 'Java_org_hyperdex_client_Client_{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) + func += 'Java_org_hyperdex_client_Microtransaction_{0}(JNIEnv* env '.format(x.name.replace('_', '_1')) for arg in x.args_in: func += ', ' + CTYPEOF(arg) + ' ' + arg.__name__.lower() func += ')\n{\n' - func += ' return hyperdex_java_client_{0}(env, obj, hyperdex_client_{1}'.format(bindings.call_name(x), x.name) + func += ' return hyperdex_java_uactx_{0}(env, hyperdex_client_{1}'.format(bindings.call_name(x), x.name) for arg in x.args_in: func += ', ' + arg.__name__.lower() func += ');\n}\n' return func def generate_client_definition(x): - if x.form is bindings.MicrotransactionCall: - return '' - func = 'JNIEXPORT HYPERDEX_API jobject JNICALL\n' if x.form == bindings.AsyncCall: func += 'Java_org_hyperdex_client_Client_async_1{0}(JNIEnv* env, jobject obj'.format(x.name.replace('_', '_1')) @@ -306,7 +270,7 @@ def generate_client_java(): fout = open(os.path.join(BASE, 'bindings/java/org/hyperdex/client/Client.java'), 'w') fout.write(bindings.copyright('*', '2013-2015')) fout.write(bindings.java.JAVA_HEAD) - fout.write('\n'.join([generate_client_prototype(c) for c in bindings.Client])) + fout.write('\n'.join([generate_client_prototype(c) for c in bindings.Client if c.form is not bindings.MicrotransactionCall])) fout.write('}\n') fout.flush() fout = open(os.path.join(BASE, 'bindings/java/org/hyperdex/client/Microtransaction.java'), 'w') @@ -337,19 +301,19 @@ def generate_client_java(): fout.write(bindings.copyright('*', '2013-2015')) fout.write(bindings.java.DEFINITIONS_HEAD) fout.write('\n'.join(generate_workers(bindings.Client))) - fout.write('\n'.join([generate_client_definition(c) for c in bindings.Client])) + fout.write('\n'.join([generate_client_definition(c) for c in bindings.Client if c.form is not bindings.MicrotransactionCall])) fout = open(os.path.join(BASE, 'bindings/java/org_hyperdex_client_Microtransaction.definitions.c'), 'w') fout.write(bindings.copyright('*', '2015')) fout.write(bindings.java.DEFINITIONS_HEAD) fout.write('\n'.join(generate_workers(bindings.Client))) - fout.write('\n'.join([generate_microtransaction_definition(c) for c in bindings.Client])) + fout.write('\n'.join([generate_microtransaction_definition(c) for c in bindings.Client if c.form is bindings.MicrotransactionCall])) def generate_client_doc(): fout = open(os.path.join(BASE, 'doc/java/client/ops.tex'), 'w') fout.write(bindings.copyright('%', '2014-2015')) fout.write('\n% This LaTeX file is generated by bindings/java.py\n\n') fout.write('\n'.join([generate_api_block(c, 'client') for c in bindings.Client - if c.name not in (bindings.DoNotDocument, bindings.MicrotransactionCall)])) + if c.form not in (bindings.DoNotDocument, bindings.MicrotransactionCall)])) if __name__ == '__main__': generate_client_java() diff --git a/bindings/java/org/hyperdex/client/ByteString.java b/bindings/java/org/hyperdex/client/ByteString.java index cc02dc31..c10bb949 100644 --- a/bindings/java/org/hyperdex/client/ByteString.java +++ b/bindings/java/org/hyperdex/client/ByteString.java @@ -90,7 +90,8 @@ public String decode(String encoding) public String toString(String encoding) throws UnsupportedEncodingException { - return decode(encoding); + // Terminating NULL character is redundant in string representation + return decode(encoding).replace("\0", ""); } public static String toString(byte[] bytes, String encoding) diff --git a/bindings/java/org/hyperdex/client/Client.java b/bindings/java/org/hyperdex/client/Client.java index 95711973..106ba9d2 100644 --- a/bindings/java/org/hyperdex/client/Client.java +++ b/bindings/java/org/hyperdex/client/Client.java @@ -131,7 +131,6 @@ public Boolean put(String spacename, Object key, Map attributes) return (Boolean) async_put(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_put(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_put(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -180,7 +179,6 @@ public Boolean atomic_add(String spacename, Object key, Map attr return (Boolean) async_atomic_add(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_atomic_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_add(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -199,7 +197,6 @@ public Boolean atomic_sub(String spacename, Object key, Map attr return (Boolean) async_atomic_sub(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_atomic_sub(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_sub(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -218,7 +215,6 @@ public Boolean atomic_mul(String spacename, Object key, Map attr return (Boolean) async_atomic_mul(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_atomic_mul(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_mul(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -237,7 +233,6 @@ public Boolean atomic_div(String spacename, Object key, Map attr return (Boolean) async_atomic_div(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_atomic_div(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_div(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -274,7 +269,6 @@ public Boolean atomic_and(String spacename, Object key, Map attr return (Boolean) async_atomic_and(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_atomic_and(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_and(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -293,7 +287,6 @@ public Boolean atomic_or(String spacename, Object key, Map attri return (Boolean) async_atomic_or(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_atomic_or(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_atomic_or(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -366,7 +359,6 @@ public Boolean string_prepend(String spacename, Object key, Map return (Boolean) async_string_prepend(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_string_prepend(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_string_prepend(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -385,7 +377,6 @@ public Boolean string_append(String spacename, Object key, Map a return (Boolean) async_string_append(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_string_append(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_string_append(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -404,7 +395,6 @@ public Boolean list_lpush(String spacename, Object key, Map attr return (Boolean) async_list_lpush(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_list_lpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_list_lpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -423,7 +413,6 @@ public Boolean list_rpush(String spacename, Object key, Map attr return (Boolean) async_list_rpush(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_list_rpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_list_rpush(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -514,7 +503,6 @@ public Boolean document_rename(String spacename, Object key, Map return (Boolean) async_document_rename(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_document_rename(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_document_rename(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { @@ -533,7 +521,6 @@ public Boolean document_unset(String spacename, Object key, Map return (Boolean) async_document_unset(spacename, key, attributes).waitForIt(); } - public native Deferred async_cond_document_unset(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException; public Boolean cond_document_unset(String spacename, Object key, Map predicates, Map attributes) throws HyperDexClientException { diff --git a/bindings/java/org/hyperdex/client/Microtransaction.java b/bindings/java/org/hyperdex/client/Microtransaction.java index 1ef3a07d..e641aef9 100644 --- a/bindings/java/org/hyperdex/client/Microtransaction.java +++ b/bindings/java/org/hyperdex/client/Microtransaction.java @@ -42,145 +42,261 @@ protected Microtransaction(Client client, String space) private native void _create(Client client, String space); + public native Integer get(Map attrs) throws HyperDexClientException; + public native Integer get_partial(Map attrs) throws HyperDexClientException; + public native Integer put(Map attrs) throws HyperDexClientException; - public native Iterator uxact_put(Microtransaction microtransaction, Map attributes); + public native Integer uxact_put(Map attrs) throws HyperDexClientException; + public native Integer cond_put(Map attrs) throws HyperDexClientException; + public native Integer cond_put_or_create(Map attrs) throws HyperDexClientException; + public native Integer group_put(Map attrs) throws HyperDexClientException; + public native Integer put_if_not_exist(Map attrs) throws HyperDexClientException; + public native Integer del(Map attrs) throws HyperDexClientException; + public native Integer cond_del(Map attrs) throws HyperDexClientException; + public native Integer group_del(Map attrs) throws HyperDexClientException; + public native Integer atomic_add(Map attrs) throws HyperDexClientException; - public native Iterator uxact_atomic_add(Microtransaction microtransaction, Map attributes); + public native Integer uxact_atomic_add(Map attrs) throws HyperDexClientException; + public native Integer cond_atomic_add(Map attrs) throws HyperDexClientException; + public native Integer group_atomic_add(Map attrs) throws HyperDexClientException; + public native Integer atomic_sub(Map attrs) throws HyperDexClientException; - public native Iterator uxact_atomic_sub(Microtransaction microtransaction, Map attributes); + public native Integer uxact_atomic_sub(Map attrs) throws HyperDexClientException; + public native Integer cond_atomic_sub(Map attrs) throws HyperDexClientException; + public native Integer group_atomic_sub(Map attrs) throws HyperDexClientException; + public native Integer atomic_mul(Map attrs) throws HyperDexClientException; - public native Iterator uxact_atomic_mul(Microtransaction microtransaction, Map attributes); + public native Integer uxact_atomic_mul(Map attrs) throws HyperDexClientException; + public native Integer cond_atomic_mul(Map attrs) throws HyperDexClientException; + public native Integer group_atomic_mul(Map attrs) throws HyperDexClientException; + public native Integer atomic_div(Map attrs) throws HyperDexClientException; - public native Iterator uxact_atomic_div(Microtransaction microtransaction, Map attributes); + public native Integer uxact_atomic_div(Map attrs) throws HyperDexClientException; + public native Integer cond_atomic_div(Map attrs) throws HyperDexClientException; + public native Integer group_atomic_div(Map attrs) throws HyperDexClientException; + public native Integer atomic_mod(Map attrs) throws HyperDexClientException; + public native Integer cond_atomic_mod(Map attrs) throws HyperDexClientException; + public native Integer group_atomic_mod(Map attrs) throws HyperDexClientException; + public native Integer atomic_and(Map attrs) throws HyperDexClientException; - public native Iterator uxact_atomic_and(Microtransaction microtransaction, Map attributes); + public native Integer uxact_atomic_and(Map attrs) throws HyperDexClientException; + public native Integer cond_atomic_and(Map attrs) throws HyperDexClientException; + public native Integer group_atomic_and(Map attrs) throws HyperDexClientException; + public native Integer atomic_or(Map attrs) throws HyperDexClientException; - public native Iterator uxact_atomic_or(Microtransaction microtransaction, Map attributes); + public native Integer uxact_atomic_or(Map attrs) throws HyperDexClientException; + public native Integer cond_atomic_or(Map attrs) throws HyperDexClientException; + public native Integer group_atomic_or(Map attrs) throws HyperDexClientException; + public native Integer atomic_xor(Map attrs) throws HyperDexClientException; + public native Integer cond_atomic_xor(Map attrs) throws HyperDexClientException; + public native Integer group_atomic_xor(Map attrs) throws HyperDexClientException; + public native Integer atomic_min(Map attrs) throws HyperDexClientException; + public native Integer cond_atomic_min(Map attrs) throws HyperDexClientException; + public native Integer group_atomic_min(Map attrs) throws HyperDexClientException; + public native Integer atomic_max(Map attrs) throws HyperDexClientException; + public native Integer cond_atomic_max(Map attrs) throws HyperDexClientException; + public native Integer group_atomic_max(Map attrs) throws HyperDexClientException; + public native Integer string_prepend(Map attrs) throws HyperDexClientException; - public native Iterator uxact_string_prepend(Microtransaction microtransaction, Map attributes); + public native Integer uxact_string_prepend(Map attrs) throws HyperDexClientException; + public native Integer cond_string_prepend(Map attrs) throws HyperDexClientException; + public native Integer group_string_prepend(Map attrs) throws HyperDexClientException; + public native Integer string_append(Map attrs) throws HyperDexClientException; - public native Iterator uxact_string_append(Microtransaction microtransaction, Map attributes); + public native Integer uxact_string_append(Map attrs) throws HyperDexClientException; + public native Integer cond_string_append(Map attrs) throws HyperDexClientException; + public native Integer group_string_append(Map attrs) throws HyperDexClientException; + public native Integer list_lpush(Map attrs) throws HyperDexClientException; - public native Iterator uxact_list_lpush(Microtransaction microtransaction, Map attributes); + public native Integer uxact_list_lpush(Map attrs) throws HyperDexClientException; + public native Integer cond_list_lpush(Map attrs) throws HyperDexClientException; + public native Integer group_list_lpush(Map attrs) throws HyperDexClientException; + public native Integer list_rpush(Map attrs) throws HyperDexClientException; - public native Iterator uxact_list_rpush(Microtransaction microtransaction, Map attributes); + public native Integer uxact_list_rpush(Map attrs) throws HyperDexClientException; + public native Integer cond_list_rpush(Map attrs) throws HyperDexClientException; + public native Integer group_list_rpush(Map attrs) throws HyperDexClientException; + public native Integer set_add(Map attrs) throws HyperDexClientException; + public native Integer cond_set_add(Map attrs) throws HyperDexClientException; + public native Integer group_set_add(Map attrs) throws HyperDexClientException; + public native Integer set_remove(Map attrs) throws HyperDexClientException; + public native Integer cond_set_remove(Map attrs) throws HyperDexClientException; + public native Integer group_set_remove(Map attrs) throws HyperDexClientException; + public native Integer set_intersect(Map attrs) throws HyperDexClientException; + public native Integer cond_set_intersect(Map attrs) throws HyperDexClientException; + public native Integer group_set_intersect(Map attrs) throws HyperDexClientException; + public native Integer set_union(Map attrs) throws HyperDexClientException; + public native Integer cond_set_union(Map attrs) throws HyperDexClientException; + public native Integer group_set_union(Map attrs) throws HyperDexClientException; + public native Integer document_rename(Map attrs) throws HyperDexClientException; - public native Iterator uxact_document_rename(Microtransaction microtransaction, Map attributes); + public native Integer uxact_document_rename(Map attrs) throws HyperDexClientException; + public native Integer cond_document_rename(Map attrs) throws HyperDexClientException; + public native Integer group_document_rename(Map attrs) throws HyperDexClientException; + public native Integer document_unset(Map attrs) throws HyperDexClientException; - public native Iterator uxact_document_unset(Microtransaction microtransaction, Map attributes); + public native Integer uxact_document_unset(Map attrs) throws HyperDexClientException; + public native Integer cond_document_unset(Map attrs) throws HyperDexClientException; + public native Integer group_document_unset(Map attrs) throws HyperDexClientException; + public native Integer map_add(Map attrs) throws HyperDexClientException; + public native Integer cond_map_add(Map attrs) throws HyperDexClientException; + public native Integer group_map_add(Map attrs) throws HyperDexClientException; + public native Integer map_remove(Map attrs) throws HyperDexClientException; + public native Integer cond_map_remove(Map attrs) throws HyperDexClientException; + public native Integer group_map_remove(Map attrs) throws HyperDexClientException; + public native Integer map_atomic_add(Map attrs) throws HyperDexClientException; + public native Integer cond_map_atomic_add(Map attrs) throws HyperDexClientException; + public native Integer group_map_atomic_add(Map attrs) throws HyperDexClientException; + public native Integer map_atomic_sub(Map attrs) throws HyperDexClientException; + public native Integer cond_map_atomic_sub(Map attrs) throws HyperDexClientException; + public native Integer group_map_atomic_sub(Map attrs) throws HyperDexClientException; + public native Integer map_atomic_mul(Map attrs) throws HyperDexClientException; + public native Integer cond_map_atomic_mul(Map attrs) throws HyperDexClientException; + public native Integer group_map_atomic_mul(Map attrs) throws HyperDexClientException; + public native Integer map_atomic_div(Map attrs) throws HyperDexClientException; + public native Integer cond_map_atomic_div(Map attrs) throws HyperDexClientException; + public native Integer group_map_atomic_div(Map attrs) throws HyperDexClientException; + public native Integer map_atomic_mod(Map attrs) throws HyperDexClientException; + public native Integer cond_map_atomic_mod(Map attrs) throws HyperDexClientException; + public native Integer group_map_atomic_mod(Map attrs) throws HyperDexClientException; + public native Integer map_atomic_and(Map attrs) throws HyperDexClientException; + public native Integer cond_map_atomic_and(Map attrs) throws HyperDexClientException; + public native Integer group_map_atomic_and(Map attrs) throws HyperDexClientException; + public native Integer map_atomic_or(Map attrs) throws HyperDexClientException; + public native Integer cond_map_atomic_or(Map attrs) throws HyperDexClientException; + public native Integer group_map_atomic_or(Map attrs) throws HyperDexClientException; + public native Integer map_atomic_xor(Map attrs) throws HyperDexClientException; + public native Integer cond_map_atomic_xor(Map attrs) throws HyperDexClientException; + public native Integer group_map_atomic_xor(Map attrs) throws HyperDexClientException; + public native Integer map_string_prepend(Map attrs) throws HyperDexClientException; + public native Integer cond_map_string_prepend(Map attrs) throws HyperDexClientException; + public native Integer group_map_string_prepend(Map attrs) throws HyperDexClientException; + public native Integer map_string_append(Map attrs) throws HyperDexClientException; + public native Integer cond_map_string_append(Map attrs) throws HyperDexClientException; + public native Integer group_map_string_append(Map attrs) throws HyperDexClientException; + public native Integer map_atomic_min(Map attrs) throws HyperDexClientException; + public native Integer cond_map_atomic_min(Map attrs) throws HyperDexClientException; + public native Integer group_map_atomic_min(Map attrs) throws HyperDexClientException; + public native Integer map_atomic_max(Map attrs) throws HyperDexClientException; + public native Integer cond_map_atomic_max(Map attrs) throws HyperDexClientException; + public native Integer group_map_atomic_max(Map attrs) throws HyperDexClientException; + public native Integer search(Map attrs) throws HyperDexClientException; + public native Integer search_describe(Map attrs) throws HyperDexClientException; + public native Integer sorted_search(Map attrs) throws HyperDexClientException; + public native Integer count(Map attrs) throws HyperDexClientException; } diff --git a/bindings/java/org_hyperdex_client_Client.definitions.c b/bindings/java/org_hyperdex_client_Client.definitions.c index f6bc5b89..cf987a17 100644 --- a/bindings/java/org_hyperdex_client_Client.definitions.c +++ b/bindings/java/org_hyperdex_client_Client.definitions.c @@ -571,7 +571,6 @@ Java_org_hyperdex_client_Client_async_1put(JNIEnv* env, jobject obj, jstring spa return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_put, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1put(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -620,7 +619,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1add(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_add, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1add(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -639,7 +637,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1sub(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_sub, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1sub(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -658,7 +655,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1mul(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_mul, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1mul(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -677,7 +673,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1div(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_div, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1div(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -714,7 +709,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1and(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_and, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1and(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -733,7 +727,6 @@ Java_org_hyperdex_client_Client_async_1atomic_1or(JNIEnv* env, jobject obj, jstr return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_atomic_or, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1atomic_1or(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -806,7 +799,6 @@ Java_org_hyperdex_client_Client_async_1string_1prepend(JNIEnv* env, jobject obj, return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_string_prepend, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1prepend(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -825,7 +817,6 @@ Java_org_hyperdex_client_Client_async_1string_1append(JNIEnv* env, jobject obj, return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_string_append, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1string_1append(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -844,7 +835,6 @@ Java_org_hyperdex_client_Client_async_1list_1lpush(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_list_lpush, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1lpush(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -863,7 +853,6 @@ Java_org_hyperdex_client_Client_async_1list_1rpush(JNIEnv* env, jobject obj, jst return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_list_rpush, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1list_1rpush(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -954,7 +943,6 @@ Java_org_hyperdex_client_Client_async_1document_1rename(JNIEnv* env, jobject obj return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_document_rename, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1rename(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { @@ -973,7 +961,6 @@ Java_org_hyperdex_client_Client_async_1document_1unset(JNIEnv* env, jobject obj, return hyperdex_java_client_asynccall__spacename_key_attributes__status(env, obj, hyperdex_client_document_unset, spacename, key, attributes); } - JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Client_async_1cond_1document_1unset(JNIEnv* env, jobject obj, jstring spacename, jobject key, jobject predicates, jobject attributes) { diff --git a/bindings/java/org_hyperdex_client_Microtransaction.c b/bindings/java/org_hyperdex_client_Microtransaction.c index 68e086cc..fb0f6183 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.c +++ b/bindings/java/org_hyperdex_client_Microtransaction.c @@ -38,48 +38,14 @@ #include "bindings/java/org_hyperdex_client_Microtransaction.h" JNIEXPORT HYPERDEX_API void JNICALL -Java_org_hyperdex_client_Microtransaction__1create(JNIEnv* env, jobject client, jstring _host, jint port) +Java_org_hyperdex_client_Microtransaction__1create(JNIEnv* env, jobject uxact, jobject client, jstring _host) { - jlong lptr; - const char* host; - struct hyperdex_client* ptr; - - lptr = (*env)->GetLongField(env, client, _client_ptr); - ERROR_CHECK_VOID(); - host = (*env)->GetStringUTFChars(env, _host, NULL); - ERROR_CHECK_VOID(); - ptr = hyperdex_client_create(host, port); - (*env)->ReleaseStringUTFChars(env, _host, host); - - if (!ptr) - { - hyperdex_java_out_of_memory(env); - return; - } - ERROR_CHECK_VOID(); - lptr = (long) ptr; - (*env)->SetLongField(env, client, _client_ptr, lptr); - ERROR_CHECK_VOID(); - assert(sizeof(long) >= sizeof(struct hyperdex_client*)); } JNIEXPORT HYPERDEX_API void JNICALL -Java_org_hyperdex_client_Microtransactoin__1destroy(JNIEnv* env, jobject client) +Java_org_hyperdex_client_Microtransactoin__1destroy(JNIEnv* env) { - jlong lptr; - struct hyperdex_client* ptr; - - lptr = (*env)->GetLongField(env, client, _client_ptr); - ERROR_CHECK_VOID(); - ptr = (struct hyperdex_client*)lptr; - - if (ptr) - { - hyperdex_client_destroy(ptr); - } - - (*env)->SetLongField(env, client, _client_ptr, 0); ERROR_CHECK_VOID(); } diff --git a/bindings/java/org_hyperdex_client_Microtransaction.definitions.c b/bindings/java/org_hyperdex_client_Microtransaction.definitions.c index c553a557..fb651eed 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.definitions.c +++ b/bindings/java/org_hyperdex_client_Microtransaction.definitions.c @@ -553,196 +553,80 @@ hyperdex_java_client_iterator__spacename_predicates_sortby_limit_maxmin__status_ ERROR_CHECK(0); return op; } - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1put(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1put(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_put, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_put, microtransaction, attributes); } - - - - - - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1add(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1add(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_add, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_add, microtransaction, attributes); } - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1sub(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1sub(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_sub, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_sub, microtransaction, attributes); } - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1mul(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1mul(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_mul, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_mul, microtransaction, attributes); } - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1div(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1div(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_div, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_div, microtransaction, attributes); } - - - - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1and(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1and(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_and, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_and, microtransaction, attributes); } - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1atomic_1or(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1or(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_atomic_or, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_or, microtransaction, attributes); } - - - - - - - - - - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1string_1prepend(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1string_1prepend(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_string_prepend, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_string_prepend, microtransaction, attributes); } - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1string_1append(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1string_1append(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_string_append, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_string_append, microtransaction, attributes); } - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1list_1lpush(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1list_1lpush(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_list_lpush, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_list_lpush, microtransaction, attributes); } - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1list_1rpush(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1list_1rpush(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_list_rpush, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_list_rpush, microtransaction, attributes); } - - - - - - - - - - - - - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1document_1rename(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1document_1rename(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_document_rename, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_document_rename, microtransaction, attributes); } - - - JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Client_uxact_1document_1unset(JNIEnv* env, jobject obj, jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_uxact_1document_1unset(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_client_microtransactioncall__microtransaction_attributes__(env, obj, hyperdex_client_uxact_document_unset, microtransaction, attributes); + return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_document_unset, microtransaction, attributes); } - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bindings/java/org_hyperdex_client_Microtransaction.h b/bindings/java/org_hyperdex_client_Microtransaction.h index 90c034b7..11c7e2cb 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.h +++ b/bindings/java/org_hyperdex_client_Microtransaction.h @@ -15,109 +15,1037 @@ extern "C" { JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction__1create (JNIEnv *, jobject, jobject, jstring); +/* + * Class: org_hyperdex_client_Microtransaction + * Method: get + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_get + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: get_partial + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_get_1partial + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: put + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_put + (JNIEnv *, jobject, jobject); + /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_put - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1put - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_put + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1put + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_put_or_create + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1put_1or_1create + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_put + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1put + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: put_if_not_exist + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_put_1if_1not_1exist + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: del + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_del + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_del + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1del + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_del + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1del + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1add + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_atomic_add - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1add - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_atomic_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_atomic_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_sub + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1sub + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_atomic_sub - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1sub - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_atomic_sub + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1sub + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_atomic_sub + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1sub + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_mul + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1mul + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_atomic_mul - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1mul - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_atomic_mul + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1mul + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_atomic_mul + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1mul + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_div + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1div + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_atomic_div - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1div - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_atomic_div + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1div + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_atomic_div + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1div + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_mod + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1mod + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_atomic_mod + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1mod + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_atomic_mod + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1mod + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_and + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1and + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_atomic_and - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1and - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_atomic_and + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1and + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_atomic_and + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1and + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_or + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1or + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_atomic_or - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1or - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_atomic_or + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1or + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_atomic_or + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1or + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_xor + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1xor + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_atomic_xor + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1xor + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_atomic_xor + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1xor + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_min + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1min + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_atomic_min + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1min + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_atomic_min + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1min + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_max + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1max + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_atomic_max + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1max + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_atomic_max + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1max + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: string_prepend + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_string_1prepend + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_string_prepend - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1string_1prepend - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_string_prepend + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1string_1prepend + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_string_prepend + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1string_1prepend + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: string_append + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_string_1append + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_string_append - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1string_1append - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_string_append + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1string_1append + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_string_append + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1string_1append + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: list_lpush + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_list_1lpush + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_list_lpush - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1list_1lpush - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_list_lpush + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1list_1lpush + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_list_lpush + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1list_1lpush + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: list_rpush + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_list_1rpush + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_list_rpush - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1list_1rpush - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_list_rpush + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1list_1rpush + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_list_rpush + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1list_1rpush + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: set_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_set_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_set_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1set_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_set_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1set_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: set_remove + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_set_1remove + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_set_remove + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1set_1remove + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_set_remove + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1set_1remove + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: set_intersect + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_set_1intersect + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_set_intersect + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1set_1intersect + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_set_intersect + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1set_1intersect + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: set_union + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_set_1union + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_set_union + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1set_1union + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_set_union + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1set_1union + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: document_rename + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_document_1rename + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_document_rename - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1document_1rename - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_document_rename + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1document_1rename + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_document_rename + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1document_1rename + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: document_unset + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_document_1unset + (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: uxact_document_unset - * Signature: (Lorg/hyperdex/client/Microtransaction;Ljava/util/Map;)Lorg/hyperdex/client/Iterator; + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; */ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1document_1unset - (JNIEnv *, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_document_unset + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1document_1unset + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_document_unset + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1document_1unset + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_remove + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1remove + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_remove + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1remove + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_remove + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1remove + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_atomic_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_atomic_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_atomic_add + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1add + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_atomic_sub + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1sub + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_atomic_sub + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1sub + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_atomic_sub + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1sub + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_atomic_mul + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1mul + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_atomic_mul + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1mul + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_atomic_mul + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1mul + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_atomic_div + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1div + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_atomic_div + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1div + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_atomic_div + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1div + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_atomic_mod + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1mod + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_atomic_mod + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1mod + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_atomic_mod + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1mod + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_atomic_and + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1and + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_atomic_and + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1and + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_atomic_and + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1and + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_atomic_or + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1or + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_atomic_or + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1or + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_atomic_or + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1or + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_atomic_xor + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1xor + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_atomic_xor + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1xor + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_atomic_xor + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1xor + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_string_prepend + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1string_1prepend + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_string_prepend + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1string_1prepend + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_string_prepend + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1string_1prepend + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_string_append + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1string_1append + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_string_append + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1string_1append + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_string_append + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1string_1append + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_atomic_min + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1min + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_atomic_min + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1min + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_atomic_min + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1min + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: map_atomic_max + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1max + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: cond_map_atomic_max + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1max + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: group_map_atomic_max + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1max + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: search + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_search + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: search_describe + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_search_1describe + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: sorted_search + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_sorted_1search + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: count + * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_count + (JNIEnv *, jobject, jobject); #ifdef __cplusplus } diff --git a/doc/java/client/ops.tex b/doc/java/client/ops.tex index 9f987cf0..a3205104 100644 --- a/doc/java/client/ops.tex +++ b/doc/java/client/ops.tex @@ -191,28 +191,6 @@ \subsubsection{\code{async\_put}} \paragraph{See also:} This is the asynchronous form of \code{put}. -%%%%%%%%%%%%%%%%%%%% uxact_put %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_put}} -\label{api:java:uxact_put} -\index{uxact\_put!Java API} -\input{\topdir/client/fragments/uxact_put} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_put %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_put}} @@ -667,28 +645,6 @@ \subsubsection{\code{async\_atomic\_add}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_add}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_add %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_add}} -\label{api:java:uxact_atomic_add} -\index{uxact\_atomic\_add!Java API} -\input{\topdir/client/fragments/uxact_atomic_add} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_add %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_add}} @@ -866,28 +822,6 @@ \subsubsection{\code{async\_atomic\_sub}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_sub}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_sub %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_sub}} -\label{api:java:uxact_atomic_sub} -\index{uxact\_atomic\_sub!Java API} -\input{\topdir/client/fragments/uxact_atomic_sub} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_sub %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_sub}} @@ -1065,28 +999,6 @@ \subsubsection{\code{async\_atomic\_mul}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_mul}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_mul %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_mul}} -\label{api:java:uxact_atomic_mul} -\index{uxact\_atomic\_mul!Java API} -\input{\topdir/client/fragments/uxact_atomic_mul} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_mul %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_mul}} @@ -1264,28 +1176,6 @@ \subsubsection{\code{async\_atomic\_div}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_div}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_div %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_div}} -\label{api:java:uxact_atomic_div} -\index{uxact\_atomic\_div!Java API} -\input{\topdir/client/fragments/uxact_atomic_div} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_div %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_div}} @@ -1640,28 +1530,6 @@ \subsubsection{\code{async\_atomic\_and}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_and}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_and %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_and}} -\label{api:java:uxact_atomic_and} -\index{uxact\_atomic\_and!Java API} -\input{\topdir/client/fragments/uxact_atomic_and} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_and %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_and}} @@ -1839,28 +1707,6 @@ \subsubsection{\code{async\_atomic\_or}} \paragraph{See also:} This is the asynchronous form of \code{atomic\_or}. -%%%%%%%%%%%%%%%%%%%% uxact_atomic_or %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_atomic\_or}} -\label{api:java:uxact_atomic_or} -\index{uxact\_atomic\_or!Java API} -\input{\topdir/client/fragments/uxact_atomic_or} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_atomic_or %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_atomic\_or}} @@ -2569,28 +2415,6 @@ \subsubsection{\code{async\_string\_prepend}} \paragraph{See also:} This is the asynchronous form of \code{string\_prepend}. -%%%%%%%%%%%%%%%%%%%% uxact_string_prepend %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_string\_prepend}} -\label{api:java:uxact_string_prepend} -\index{uxact\_string\_prepend!Java API} -\input{\topdir/client/fragments/uxact_string_prepend} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_string_prepend %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_string\_prepend}} @@ -2768,28 +2592,6 @@ \subsubsection{\code{async\_string\_append}} \paragraph{See also:} This is the asynchronous form of \code{string\_append}. -%%%%%%%%%%%%%%%%%%%% uxact_string_append %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_string\_append}} -\label{api:java:uxact_string_append} -\index{uxact\_string\_append!Java API} -\input{\topdir/client/fragments/uxact_string_append} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_string_append %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_string\_append}} @@ -2967,28 +2769,6 @@ \subsubsection{\code{async\_list\_lpush}} \paragraph{See also:} This is the asynchronous form of \code{list\_lpush}. -%%%%%%%%%%%%%%%%%%%% uxact_list_lpush %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_list\_lpush}} -\label{api:java:uxact_list_lpush} -\index{uxact\_list\_lpush!Java API} -\input{\topdir/client/fragments/uxact_list_lpush} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_list_lpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_list\_lpush}} @@ -3166,28 +2946,6 @@ \subsubsection{\code{async\_list\_rpush}} \paragraph{See also:} This is the asynchronous form of \code{list\_rpush}. -%%%%%%%%%%%%%%%%%%%% uxact_list_rpush %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_list\_rpush}} -\label{api:java:uxact_list_rpush} -\index{uxact\_list\_rpush!Java API} -\input{\topdir/client/fragments/uxact_list_rpush} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_list_rpush %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_list\_rpush}} @@ -4073,28 +3831,6 @@ \subsubsection{\code{async\_document\_rename}} \paragraph{See also:} This is the asynchronous form of \code{document\_rename}. -%%%%%%%%%%%%%%%%%%%% uxact_document_rename %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_document\_rename}} -\label{api:java:uxact_document_rename} -\index{uxact\_document\_rename!Java API} -\input{\topdir/client/fragments/uxact_document_rename} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_document_rename %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_document\_rename}} @@ -4272,28 +4008,6 @@ \subsubsection{\code{async\_document\_unset}} \paragraph{See also:} This is the asynchronous form of \code{document\_unset}. -%%%%%%%%%%%%%%%%%%%% uxact_document_unset %%%%%%%%%%%%%%%%%%%% -\pagebreak -\subsubsection{\code{uxact\_document\_unset}} -\label{api:java:uxact_document_unset} -\index{uxact\_document\_unset!Java API} -\input{\topdir/client/fragments/uxact_document_unset} - -\paragraph{Definition:} -\begin{javacode} -\end{javacode} - -\paragraph{Parameters:} -\begin{itemize}[noitemsep] -\item \code{Microtransaction microtransaction}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_microtransaction} -\item \code{Map attributes}\\ -\input{\topdir/java/client/fragments/in_microtransactioncall_attributes} -\end{itemize} - -\paragraph{Returns:} -\input{\topdir/java/client/fragments/return_microtransactioncall__} - %%%%%%%%%%%%%%%%%%%% cond_document_unset %%%%%%%%%%%%%%%%%%%% \pagebreak \subsubsection{\code{cond\_document\_unset}} diff --git a/test/java/DataTypeDocument.java b/test/java/DataTypeDocument.java index 0746a7d0..09d2c776 100644 --- a/test/java/DataTypeDocument.java +++ b/test/java/DataTypeDocument.java @@ -18,7 +18,9 @@ public void setUpHyperdexClient() throws Exception { } @After - public void destroyHyperdexClient() { + public void destroyHyperdexClient() throws HyperDexClientException { + Map match_all = new HashMap(); + c.group_del("kv", match_all); c = null; } @@ -47,16 +49,6 @@ public void insertEmptyDocument() throws HyperDexClientException { Map expected = new HashMap(); expected.put("v", new Document("{}")); - String str1 = expected.get("v").toString(); - String str2 = get.get("v").toString(); - - assertEquals(str1.length(), str2.length()); - for(int i = 0; i < str1.length(); ++i) - { - assertEquals(str1.charAt(i), str2.charAt(i)); - } - - assertEquals(expected.get("v"), get.get("v")); assertEquals(expected, get); } diff --git a/test/java/DataTypeInt.java b/test/java/DataTypeInt.java index 3d96d015..1e83938d 100755 --- a/test/java/DataTypeInt.java +++ b/test/java/DataTypeInt.java @@ -28,7 +28,9 @@ public void setUpHyperdexClient() throws Exception { } @After - public void destroyHyperdexClient() { + public void destroyHyperdexClient() throws HyperDexClientException { + Map match_all = new HashMap(); + c.group_del("kv", match_all); c = null; } diff --git a/test/java/DataTypeString.java b/test/java/DataTypeString.java index 4f82608d..b3f12a5c 100755 --- a/test/java/DataTypeString.java +++ b/test/java/DataTypeString.java @@ -28,7 +28,9 @@ public void setUpHyperdexClient() throws Exception { } @After - public void destroyHyperdexClient() { + public void destroyHyperdexClient() throws HyperDexClientException { + Map match_all = new HashMap(); + c.group_del("kv", match_all); c = null; } @@ -77,7 +79,7 @@ public void insertBytes() throws HyperDexClientException { public void correctByteString() { String original = "42 is the answer"; - ByteString bstring = new ByteString(bstring.getBytes()); + ByteString bstring = new ByteString(original.getBytes()); String result = bstring.toString(); assertEquals(original, result); diff --git a/test/java/Microtransactions.java b/test/java/Microtransactions.java index a9183f09..811a8b53 100644 --- a/test/java/Microtransactions.java +++ b/test/java/Microtransactions.java @@ -2,6 +2,7 @@ import org.hyperdex.client.Client; import org.hyperdex.client.Document; +import org.hyperdex.client.Microtransaction; import org.hyperdex.client.HyperDexClientException; import org.junit.*; @@ -24,7 +25,7 @@ public void destroyHyperdexClient() { @Test public void singleOperation() throws HyperDexClientException { - Microtransaction utx = c.initMicrotransaction(); + Microtransaction utx = c.initMicrotransaction("kv"); } } diff --git a/test/sh/bindings.java.Microtransactions.sh b/test/sh/bindings.java.Microtransactions.sh old mode 100644 new mode 100755 From 48ddc78d3172b32f6053164fda249f101e71162e Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Mon, 23 Feb 2015 17:47:44 -0500 Subject: [PATCH 22/28] Restore java code generation --- Makefile.am | 1 + bindings/java.py | 41 +- bindings/java/client-util.h | 50 + .../org/hyperdex/client/Microtransaction.java | 272 +---- bindings/java/org_hyperdex_client_Client.c | 192 ++-- .../org_hyperdex_client_Microtransaction.c | 107 +- ...rdex_client_Microtransaction.definitions.c | 732 ++++--------- .../org_hyperdex_client_Microtransaction.h | 988 +----------------- 8 files changed, 533 insertions(+), 1850 deletions(-) create mode 100644 bindings/java/client-util.h diff --git a/Makefile.am b/Makefile.am index f7033c6d..0f4690c3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -645,6 +645,7 @@ EXTRA_DIST += bindings/java/org/hyperdex/ycsb/HyperDex.java EXTRA_DIST += test/java/.exists # Client +noinst_HEADERS += bindings/java/client-util.h noinst_HEADERS += bindings/java/org_hyperdex_client_Client.h noinst_HEADERS += bindings/java/org_hyperdex_client_Deferred.h noinst_HEADERS += bindings/java/org_hyperdex_client_GreaterEqual.h diff --git a/bindings/java.py b/bindings/java.py index 5f407cf6..3f219847 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -71,7 +71,7 @@ def CTYPEOF(x): raise RuntimeError('Unknown type: ' + str(x)) def generate_microtransaction_prototype(x): - return ' public native Integer {0}(Map attrs) throws HyperDexClientException;\n'.format(x.name) + return ' public native int {0}(Map attrs) throws HyperDexClientException;\n'.format(x.name.replace("uxact_", "")) def generate_client_prototype(x): args_list = ', '.join([JTYPEOF(arg) + ' ' + arg.__name__.lower() for arg in x.args_in]) @@ -158,15 +158,27 @@ def generate_workers(xs): def generate_microtransaction_definition(x): func = 'JNIEXPORT HYPERDEX_API jint JNICALL\n' - func += 'Java_org_hyperdex_client_Microtransaction_{0}(JNIEnv* env '.format(x.name.replace('_', '_1')) + func += 'Java_org_hyperdex_client_Microtransaction_{0}(JNIEnv* env '.format(x.name.replace('uxact_', '').replace('_', '_1')) for arg in x.args_in: func += ', ' + CTYPEOF(arg) + ' ' + arg.__name__.lower() func += ')\n{\n' - func += ' return hyperdex_java_uactx_{0}(env, hyperdex_client_{1}'.format(bindings.call_name(x), x.name) - for arg in x.args_in: - func += ', ' + arg.__name__.lower() - func += ');\n}\n' + + # Function Body + func += ' jobject client;\n' + func += ' struct hyperdex_client* client_ptr;\n' + func += ' struct hyperdex_client_microtransaction* uxact;\n' + func += ' const struct hyperdex_client_attribute *_attrs;\n' + func += ' struct hyperdex_ds_arena *arena;\n' + func += ' size_t _attrs_sz;\n\n' + func += ' client = hyperdex_uxact_get_client(env, microtransaction);\n' + func += ' client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction);\n' + func += ' uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction);\n' + func += ' arena = hyperdex_uxact_get_arena_ptr(env, microtransaction);\n' + func += ' hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz);\n' + func += ' return (jint)hyperdex_client_{0}(client_ptr, uxact, _attrs, _attrs_sz);\n'.format(x.name) + + func += '}\n' return func def generate_client_definition(x): @@ -276,7 +288,7 @@ def generate_client_java(): fout = open(os.path.join(BASE, 'bindings/java/org/hyperdex/client/Microtransaction.java'), 'w') fout.write(bindings.copyright('*', '2015')) fout.write(bindings.java.MICROTRANSACTION_HEAD) - fout.write('\n'.join([generate_microtransaction_prototype(c) for c in bindings.Client])) + fout.write('\n'.join([generate_microtransaction_prototype(c) for c in bindings.Client if c.form is bindings.MicrotransactionCall])) fout.write('}\n') fout.flush() os.system('cd bindings/java && javac -cp . org/hyperdex/client/Client.java') @@ -305,7 +317,6 @@ def generate_client_java(): fout = open(os.path.join(BASE, 'bindings/java/org_hyperdex_client_Microtransaction.definitions.c'), 'w') fout.write(bindings.copyright('*', '2015')) fout.write(bindings.java.DEFINITIONS_HEAD) - fout.write('\n'.join(generate_workers(bindings.Client))) fout.write('\n'.join([generate_microtransaction_definition(c) for c in bindings.Client if c.form is bindings.MicrotransactionCall])) def generate_client_doc(): @@ -332,11 +343,21 @@ def generate_client_doc(): { protected Microtransaction(Client client, String space) { - this._create(client, space); + this.client = client; + this._create(space); } - private native void _create(Client client, String space); + private Client client; + private long uxact_ptr; + private long status_ptr; + + private native void _create(String space); + private native void _destroy(); + + /* cached IDs */ + private static native void initialize(); + private static native void terminate(); ''' JAVA_HEAD = ''' diff --git a/bindings/java/client-util.h b/bindings/java/client-util.h new file mode 100644 index 00000000..c2384d4a --- /dev/null +++ b/bindings/java/client-util.h @@ -0,0 +1,50 @@ +/* Copyright (c) 2015, Cornell University + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of HyperDex nor the names of its contributors may be + * used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef JAVA_UTIL_H +#define JAVA_UTIL_H + +#include + +/* HyperDex */ +#include +#include + +const char* +hyperdex_java_client_convert_cstring(JNIEnv* env, + struct hyperdex_ds_arena* arena, + jobject str); + +int +hyperdex_java_client_convert_attributes(JNIEnv* env, jobject client, + struct hyperdex_ds_arena* arena, + jobject x, + const struct hyperdex_client_attribute** _attrs, + size_t* _attrs_sz); + +#endif diff --git a/bindings/java/org/hyperdex/client/Microtransaction.java b/bindings/java/org/hyperdex/client/Microtransaction.java index e641aef9..14642370 100644 --- a/bindings/java/org/hyperdex/client/Microtransaction.java +++ b/bindings/java/org/hyperdex/client/Microtransaction.java @@ -37,266 +37,44 @@ public class Microtransaction { protected Microtransaction(Client client, String space) { - this._create(client, space); + this.client = client; + this._create(space); } - private native void _create(Client client, String space); + private Client client; - public native Integer get(Map attrs) throws HyperDexClientException; - - public native Integer get_partial(Map attrs) throws HyperDexClientException; - - public native Integer put(Map attrs) throws HyperDexClientException; - - public native Integer uxact_put(Map attrs) throws HyperDexClientException; - - public native Integer cond_put(Map attrs) throws HyperDexClientException; - - public native Integer cond_put_or_create(Map attrs) throws HyperDexClientException; - - public native Integer group_put(Map attrs) throws HyperDexClientException; - - public native Integer put_if_not_exist(Map attrs) throws HyperDexClientException; - - public native Integer del(Map attrs) throws HyperDexClientException; - - public native Integer cond_del(Map attrs) throws HyperDexClientException; - - public native Integer group_del(Map attrs) throws HyperDexClientException; - - public native Integer atomic_add(Map attrs) throws HyperDexClientException; - - public native Integer uxact_atomic_add(Map attrs) throws HyperDexClientException; - - public native Integer cond_atomic_add(Map attrs) throws HyperDexClientException; - - public native Integer group_atomic_add(Map attrs) throws HyperDexClientException; - - public native Integer atomic_sub(Map attrs) throws HyperDexClientException; - - public native Integer uxact_atomic_sub(Map attrs) throws HyperDexClientException; - - public native Integer cond_atomic_sub(Map attrs) throws HyperDexClientException; - - public native Integer group_atomic_sub(Map attrs) throws HyperDexClientException; - - public native Integer atomic_mul(Map attrs) throws HyperDexClientException; - - public native Integer uxact_atomic_mul(Map attrs) throws HyperDexClientException; - - public native Integer cond_atomic_mul(Map attrs) throws HyperDexClientException; - - public native Integer group_atomic_mul(Map attrs) throws HyperDexClientException; - - public native Integer atomic_div(Map attrs) throws HyperDexClientException; - - public native Integer uxact_atomic_div(Map attrs) throws HyperDexClientException; - - public native Integer cond_atomic_div(Map attrs) throws HyperDexClientException; - - public native Integer group_atomic_div(Map attrs) throws HyperDexClientException; - - public native Integer atomic_mod(Map attrs) throws HyperDexClientException; - - public native Integer cond_atomic_mod(Map attrs) throws HyperDexClientException; - - public native Integer group_atomic_mod(Map attrs) throws HyperDexClientException; - - public native Integer atomic_and(Map attrs) throws HyperDexClientException; - - public native Integer uxact_atomic_and(Map attrs) throws HyperDexClientException; - - public native Integer cond_atomic_and(Map attrs) throws HyperDexClientException; - - public native Integer group_atomic_and(Map attrs) throws HyperDexClientException; - - public native Integer atomic_or(Map attrs) throws HyperDexClientException; - - public native Integer uxact_atomic_or(Map attrs) throws HyperDexClientException; - - public native Integer cond_atomic_or(Map attrs) throws HyperDexClientException; - - public native Integer group_atomic_or(Map attrs) throws HyperDexClientException; - - public native Integer atomic_xor(Map attrs) throws HyperDexClientException; - - public native Integer cond_atomic_xor(Map attrs) throws HyperDexClientException; - - public native Integer group_atomic_xor(Map attrs) throws HyperDexClientException; - - public native Integer atomic_min(Map attrs) throws HyperDexClientException; - - public native Integer cond_atomic_min(Map attrs) throws HyperDexClientException; - - public native Integer group_atomic_min(Map attrs) throws HyperDexClientException; - - public native Integer atomic_max(Map attrs) throws HyperDexClientException; - - public native Integer cond_atomic_max(Map attrs) throws HyperDexClientException; - - public native Integer group_atomic_max(Map attrs) throws HyperDexClientException; - - public native Integer string_prepend(Map attrs) throws HyperDexClientException; - - public native Integer uxact_string_prepend(Map attrs) throws HyperDexClientException; - - public native Integer cond_string_prepend(Map attrs) throws HyperDexClientException; - - public native Integer group_string_prepend(Map attrs) throws HyperDexClientException; - - public native Integer string_append(Map attrs) throws HyperDexClientException; - - public native Integer uxact_string_append(Map attrs) throws HyperDexClientException; - - public native Integer cond_string_append(Map attrs) throws HyperDexClientException; - - public native Integer group_string_append(Map attrs) throws HyperDexClientException; - - public native Integer list_lpush(Map attrs) throws HyperDexClientException; - - public native Integer uxact_list_lpush(Map attrs) throws HyperDexClientException; - - public native Integer cond_list_lpush(Map attrs) throws HyperDexClientException; - - public native Integer group_list_lpush(Map attrs) throws HyperDexClientException; - - public native Integer list_rpush(Map attrs) throws HyperDexClientException; - - public native Integer uxact_list_rpush(Map attrs) throws HyperDexClientException; - - public native Integer cond_list_rpush(Map attrs) throws HyperDexClientException; - - public native Integer group_list_rpush(Map attrs) throws HyperDexClientException; - - public native Integer set_add(Map attrs) throws HyperDexClientException; - - public native Integer cond_set_add(Map attrs) throws HyperDexClientException; - - public native Integer group_set_add(Map attrs) throws HyperDexClientException; - - public native Integer set_remove(Map attrs) throws HyperDexClientException; - - public native Integer cond_set_remove(Map attrs) throws HyperDexClientException; - - public native Integer group_set_remove(Map attrs) throws HyperDexClientException; - - public native Integer set_intersect(Map attrs) throws HyperDexClientException; - - public native Integer cond_set_intersect(Map attrs) throws HyperDexClientException; - - public native Integer group_set_intersect(Map attrs) throws HyperDexClientException; - - public native Integer set_union(Map attrs) throws HyperDexClientException; - - public native Integer cond_set_union(Map attrs) throws HyperDexClientException; - - public native Integer group_set_union(Map attrs) throws HyperDexClientException; - - public native Integer document_rename(Map attrs) throws HyperDexClientException; - - public native Integer uxact_document_rename(Map attrs) throws HyperDexClientException; - - public native Integer cond_document_rename(Map attrs) throws HyperDexClientException; - - public native Integer group_document_rename(Map attrs) throws HyperDexClientException; - - public native Integer document_unset(Map attrs) throws HyperDexClientException; - - public native Integer uxact_document_unset(Map attrs) throws HyperDexClientException; - - public native Integer cond_document_unset(Map attrs) throws HyperDexClientException; - - public native Integer group_document_unset(Map attrs) throws HyperDexClientException; - - public native Integer map_add(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_add(Map attrs) throws HyperDexClientException; - - public native Integer group_map_add(Map attrs) throws HyperDexClientException; - - public native Integer map_remove(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_remove(Map attrs) throws HyperDexClientException; - - public native Integer group_map_remove(Map attrs) throws HyperDexClientException; - - public native Integer map_atomic_add(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_atomic_add(Map attrs) throws HyperDexClientException; - - public native Integer group_map_atomic_add(Map attrs) throws HyperDexClientException; - - public native Integer map_atomic_sub(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_atomic_sub(Map attrs) throws HyperDexClientException; - - public native Integer group_map_atomic_sub(Map attrs) throws HyperDexClientException; - - public native Integer map_atomic_mul(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_atomic_mul(Map attrs) throws HyperDexClientException; - - public native Integer group_map_atomic_mul(Map attrs) throws HyperDexClientException; - - public native Integer map_atomic_div(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_atomic_div(Map attrs) throws HyperDexClientException; - - public native Integer group_map_atomic_div(Map attrs) throws HyperDexClientException; - - public native Integer map_atomic_mod(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_atomic_mod(Map attrs) throws HyperDexClientException; - - public native Integer group_map_atomic_mod(Map attrs) throws HyperDexClientException; - - public native Integer map_atomic_and(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_atomic_and(Map attrs) throws HyperDexClientException; - - public native Integer group_map_atomic_and(Map attrs) throws HyperDexClientException; - - public native Integer map_atomic_or(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_atomic_or(Map attrs) throws HyperDexClientException; - - public native Integer group_map_atomic_or(Map attrs) throws HyperDexClientException; - - public native Integer map_atomic_xor(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_atomic_xor(Map attrs) throws HyperDexClientException; - - public native Integer group_map_atomic_xor(Map attrs) throws HyperDexClientException; - - public native Integer map_string_prepend(Map attrs) throws HyperDexClientException; - - public native Integer cond_map_string_prepend(Map attrs) throws HyperDexClientException; - - public native Integer group_map_string_prepend(Map attrs) throws HyperDexClientException; - - public native Integer map_string_append(Map attrs) throws HyperDexClientException; + private long uxact_ptr; + private long status_ptr; + + private native void _create(String space); + private native void _destroy(); + + /* cached IDs */ + private static native void initialize(); + private static native void terminate(); + public native int put(Map attrs) throws HyperDexClientException; - public native Integer cond_map_string_append(Map attrs) throws HyperDexClientException; + public native int atomic_add(Map attrs) throws HyperDexClientException; - public native Integer group_map_string_append(Map attrs) throws HyperDexClientException; + public native int atomic_sub(Map attrs) throws HyperDexClientException; - public native Integer map_atomic_min(Map attrs) throws HyperDexClientException; + public native int atomic_mul(Map attrs) throws HyperDexClientException; - public native Integer cond_map_atomic_min(Map attrs) throws HyperDexClientException; + public native int atomic_div(Map attrs) throws HyperDexClientException; - public native Integer group_map_atomic_min(Map attrs) throws HyperDexClientException; + public native int atomic_and(Map attrs) throws HyperDexClientException; - public native Integer map_atomic_max(Map attrs) throws HyperDexClientException; + public native int atomic_or(Map attrs) throws HyperDexClientException; - public native Integer cond_map_atomic_max(Map attrs) throws HyperDexClientException; + public native int string_prepend(Map attrs) throws HyperDexClientException; - public native Integer group_map_atomic_max(Map attrs) throws HyperDexClientException; + public native int string_append(Map attrs) throws HyperDexClientException; - public native Integer search(Map attrs) throws HyperDexClientException; + public native int list_lpush(Map attrs) throws HyperDexClientException; - public native Integer search_describe(Map attrs) throws HyperDexClientException; + public native int list_rpush(Map attrs) throws HyperDexClientException; - public native Integer sorted_search(Map attrs) throws HyperDexClientException; + public native int document_rename(Map attrs) throws HyperDexClientException; - public native Integer count(Map attrs) throws HyperDexClientException; + public native int document_unset(Map attrs) throws HyperDexClientException; } diff --git a/bindings/java/org_hyperdex_client_Client.c b/bindings/java/org_hyperdex_client_Client.c index a4609bdd..6b8107ff 100644 --- a/bindings/java/org_hyperdex_client_Client.c +++ b/bindings/java/org_hyperdex_client_Client.c @@ -48,6 +48,8 @@ #include "bindings/java/org_hyperdex_client_Range.h" #include "bindings/java/org_hyperdex_client_Regex.h" +#include "client-util.h" + /********************************* Cached IDs *********************************/ static jclass _string; @@ -464,32 +466,6 @@ hyperdex_java_client_throw_exception(JNIEnv* env, } /********************************** Java -> C *********************************/ - -static const char* -hyperdex_java_client_convert_cstring(JNIEnv* env, - struct hyperdex_ds_arena* arena, - jobject str) -{ - const char* tmp = NULL; - const char* ret = NULL; - size_t ret_sz = 0; - enum hyperdex_ds_returncode rc; - int success; - tmp = (*env)->GetStringUTFChars(env, str, 0); - ERROR_CHECK(NULL); - success = hyperdex_ds_copy_string(arena, tmp, strlen(tmp) + 1, &rc, &ret, &ret_sz); - (*env)->ReleaseStringUTFChars(env, str, tmp); - ERROR_CHECK(NULL); - - if (success < 0) - { - hyperdex_java_out_of_memory(env); - return NULL; - } - - return ret; -} - typedef int (*elem_string_fptr)(void*, const char*, size_t, enum hyperdex_ds_returncode*); typedef int (*elem_int_fptr)(void*, int64_t, enum hyperdex_ds_returncode*); typedef int (*elem_float_fptr)(void*, double, enum hyperdex_ds_returncode*); @@ -965,75 +941,6 @@ hyperdex_java_client_convert_maxmin(JNIEnv* env, jobject client, return 0; } -static int -hyperdex_java_client_convert_attributes(JNIEnv* env, jobject client, - struct hyperdex_ds_arena* arena, - jobject x, - const struct hyperdex_client_attribute** _attrs, - size_t* _attrs_sz) -{ - jobject set; - jobject it; - jobject entry; - jobject key; - jobject val; - struct hyperdex_client_attribute* attrs = NULL; - size_t attrs_sz = 0; - size_t attrs_idx = 0; - - set = (*env)->CallObjectMethod(env, x, _map_entrySet); - ERROR_CHECK(-1); - it = (*env)->CallObjectMethod(env, set, _set_iterator); - ERROR_CHECK(-1); - attrs_sz = (*env)->CallIntMethod(env, x, _map_size); - ERROR_CHECK(-1); - attrs = hyperdex_ds_allocate_attribute(arena, attrs_sz); - - if (!attrs) - { - hyperdex_java_out_of_memory(env); - return -1; - } - - *_attrs = attrs; - *_attrs_sz = attrs_sz; - attrs_idx = 0; - - while ((*env)->CallBooleanMethod(env, it, _java_iterator_hasNext) == JNI_TRUE) - { - entry = (*env)->CallObjectMethod(env, it, _java_iterator_next); - ERROR_CHECK(-1); - key = (*env)->CallObjectMethod(env, entry, _map_entry_getKey); - ERROR_CHECK(-1); - val = (*env)->CallObjectMethod(env, entry, _map_entry_getValue); - ERROR_CHECK(-1); - attrs[attrs_idx].attr = hyperdex_java_client_convert_cstring(env, arena, key); - - if (!attrs[attrs_idx].attr) - { - return -1; - } - - if (hyperdex_java_client_convert_type(env, arena, val, - &attrs[attrs_idx].value, - &attrs[attrs_idx].value_sz, - &attrs[attrs_idx].datatype) < 0) - { - return -1; - } - - (*env)->DeleteLocalRef(env, val); - (*env)->DeleteLocalRef(env, key); - (*env)->DeleteLocalRef(env, entry); - ++attrs_idx; - } - - (*env)->DeleteLocalRef(env, it); - (*env)->DeleteLocalRef(env, set); - (void)client; - return 0; -} - static int hyperdex_java_client_convert_mapattributes(JNIEnv* env, jobject client, struct hyperdex_ds_arena* arena, @@ -2249,6 +2156,101 @@ hyperdex_java_client_iterator_encode_status_attributes(JNIEnv* env, jobject obj, } } + +const char* +hyperdex_java_client_convert_cstring(JNIEnv* env, + struct hyperdex_ds_arena* arena, + jobject str) +{ + const char* tmp = NULL; + const char* ret = NULL; + size_t ret_sz = 0; + enum hyperdex_ds_returncode rc; + int success; + tmp = (*env)->GetStringUTFChars(env, str, 0); + ERROR_CHECK(NULL); + success = hyperdex_ds_copy_string(arena, tmp, strlen(tmp) + 1, &rc, &ret, &ret_sz); + (*env)->ReleaseStringUTFChars(env, str, tmp); + ERROR_CHECK(NULL); + + if (success < 0) + { + hyperdex_java_out_of_memory(env); + return NULL; + } + + return ret; +} + +int +hyperdex_java_client_convert_attributes(JNIEnv* env, jobject client, + struct hyperdex_ds_arena* arena, + jobject x, + const struct hyperdex_client_attribute** _attrs, + size_t* _attrs_sz) +{ + jobject set; + jobject it; + jobject entry; + jobject key; + jobject val; + struct hyperdex_client_attribute* attrs = NULL; + size_t attrs_sz = 0; + size_t attrs_idx = 0; + + set = (*env)->CallObjectMethod(env, x, _map_entrySet); + ERROR_CHECK(-1); + it = (*env)->CallObjectMethod(env, set, _set_iterator); + ERROR_CHECK(-1); + attrs_sz = (*env)->CallIntMethod(env, x, _map_size); + ERROR_CHECK(-1); + attrs = hyperdex_ds_allocate_attribute(arena, attrs_sz); + + if (!attrs) + { + hyperdex_java_out_of_memory(env); + return -1; + } + + *_attrs = attrs; + *_attrs_sz = attrs_sz; + attrs_idx = 0; + + while ((*env)->CallBooleanMethod(env, it, _java_iterator_hasNext) == JNI_TRUE) + { + entry = (*env)->CallObjectMethod(env, it, _java_iterator_next); + ERROR_CHECK(-1); + key = (*env)->CallObjectMethod(env, entry, _map_entry_getKey); + ERROR_CHECK(-1); + val = (*env)->CallObjectMethod(env, entry, _map_entry_getValue); + ERROR_CHECK(-1); + attrs[attrs_idx].attr = hyperdex_java_client_convert_cstring(env, arena, key); + + if (!attrs[attrs_idx].attr) + { + return -1; + } + + if (hyperdex_java_client_convert_type(env, arena, val, + &attrs[attrs_idx].value, + &attrs[attrs_idx].value_sz, + &attrs[attrs_idx].datatype) < 0) + { + return -1; + } + + (*env)->DeleteLocalRef(env, val); + (*env)->DeleteLocalRef(env, key); + (*env)->DeleteLocalRef(env, entry); + ++attrs_idx; + } + + (*env)->DeleteLocalRef(env, it); + (*env)->DeleteLocalRef(env, set); + (void)client; + return 0; +} + /********************************* Predicates *********************************/ #define SINGLE_OBJECT_PREDICATE(CamelCase, lower_case, PREDICATE) \ diff --git a/bindings/java/org_hyperdex_client_Microtransaction.c b/bindings/java/org_hyperdex_client_Microtransaction.c index fb0f6183..ded953a2 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.c +++ b/bindings/java/org_hyperdex_client_Microtransaction.c @@ -37,16 +37,119 @@ #include "visibility.h" #include "bindings/java/org_hyperdex_client_Microtransaction.h" +#include "client-util.h" + +#define REF(NAME, DEF) \ + tmp_cls = (DEF); \ + NAME = (jclass) (*env)->NewGlobalRef(env, tmp_cls); \ + (*env)->DeleteLocalRef(env, tmp_cls); + +static jclass _uxact; +static jfieldID _uxact_client; +static jfieldID _uxact_arena_ptr; +static jfieldID _uxact_uxact_ptr; + +static jclass _client; +static jfieldID _client_ptr; + JNIEXPORT HYPERDEX_API void JNICALL -Java_org_hyperdex_client_Microtransaction__1create(JNIEnv* env, jobject uxact, jobject client, jstring _host) +Java_org_hyperdex_client_Microtransaction_initialize(JNIEnv* env, jclass client) { + jclass tmp_cls; + + /* cache class Client */ + REF(_uxact, (*env)->FindClass(env, "org/hyperdex/client/Microtransaction")); + _uxact_client = (*env)->GetFieldID(env, _uxact, "client_ptr", "Lorg/hyperdex/client/Microtransaction;"); + _uxact_uxact_ptr = (*env)->GetFieldID(env, _uxact, "uxact_ptr", "J"); + _uxact_arena_ptr = (*env)->GetFieldID(env, _uxact, "uxact_arena_ptr", "J"); + REF(_client, (*env)->FindClass(env, "org/hyperdex/client/Client")); + _client_ptr = (*env)->GetFieldID(env, _client, "client_ptr", "J"); + + CHECK_CACHE(_uxact); + CHECK_CACHE(_uxact_client); + CHECK_CACHE(_uxact_uxact_ptr); + CHECK_CACHE(_uxact_arena_ptr); + CHECK_CACHE(_client); + CHECK_CACHE(_client_ptr); + ERROR_CHECK_VOID(); } +static jobject +hyperdex_uxact_get_client(JNIEnv* env, jobject obj) +{ + jobject c; + c = (*env)->GetObjectField(env, obj, _uxact_client); + assert(c); + return c; +} + + +static struct hyperdex_client* +hyperdex_uxact_get_client_ptr(JNIEnv* env, jobject obj) +{ + jobject c; + struct hyperdex_client* x; + c = hyperdex_uxact_get_client(env, obj); + x = (struct hyperdex_client*) (*env)->GetLongField(env, c, _client_ptr); + assert(x); + return x; +} + +static struct hyperdex_ds_arena* +hyperdex_uxact_get_arena_ptr(JNIEnv* env, jobject obj) +{ + struct hyperdex_ds_arena* x; + x = (struct hyperdex_ds_arena*) (*env)->GetLongField(env, obj, _uxact_arena_ptr); + assert(x); + return x; +} + +static struct hyperdex_client_microtransaction* +hyperdex_uxact_get_uxact_ptr(JNIEnv* env, jobject obj) +{ + struct hyperdex_client_microtransaction* x; + x = (struct hyperdex_client_microtransaction*) (*env)->GetLongField(env, obj, _uxact_uxact_ptr); + assert(x); + return x; +} + +JNIEXPORT HYPERDEX_API void JNICALL +Java_org_hyperdex_client_Microtransaction__1create(JNIEnv* env, jobject uxact, jstring _space) +{ + struct hyperdex_client *client; + struct hyperdex_client_microtransaction *uxact_ptr; + enum hyperdex_client_returncode *status; + const char *space; + struct hyperdex_ds_arena *arena; + + arena = hyperdex_ds_arena_create(); + + status = (enum hyperdex_client_returncode*)malloc(sizeof(enum hyperdex_client_returncode)); + *status = HYPERDEX_CLIENT_SUCCESS; + + space = (*env)->GetStringUTFChars(env, _space, NULL); + + client = hyperdex_uxact_get_client_ptr(env, uxact); + uxact_ptr = hyperdex_client_uxact_init(client, space, status); + + (*env)->SetLongField(env, uxact, _uxact_uxact_ptr, (long)uxact_ptr); + (*env)->SetLongField(env, uxact, _uxact_arena_ptr, (long)arena); +} + JNIEXPORT HYPERDEX_API void JNICALL -Java_org_hyperdex_client_Microtransactoin__1destroy(JNIEnv* env) +Java_org_hyperdex_client_Microtransaction__1destroy(JNIEnv* env, jclass uxact) { + (void) uxact; ERROR_CHECK_VOID(); } +JNIEXPORT HYPERDEX_API void JNICALL +Java_org_hyperdex_client_Microtransaction_terminate(JNIEnv* env, jclass uxact) +{ + (*env)->DeleteGlobalRef(env, _uxact); + (*env)->DeleteGlobalRef(env, _client); + (void) uxact; +} + #include "bindings/java/org_hyperdex_client_Microtransaction.definitions.c" diff --git a/bindings/java/org_hyperdex_client_Microtransaction.definitions.c b/bindings/java/org_hyperdex_client_Microtransaction.definitions.c index fb651eed..72ff225b 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.definitions.c +++ b/bindings/java/org_hyperdex_client_Microtransaction.definitions.c @@ -29,604 +29,236 @@ #include "visibility.h" -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, &o->status, &o->attrs, &o->attrs_sz); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status_attributes; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key, jobject attributenames); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const char** attrnames, size_t attrnames_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject key, jobject attributenames) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - const char** in_attrnames; - size_t in_attrnames_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_attributenames(env, obj, o->arena, attributenames, &in_attrnames, &in_attrnames_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, in_attrnames, in_attrnames_sz, &o->status, &o->attrs, &o->attrs_sz); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status_attributes; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject attributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject attributes) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - const struct hyperdex_client_attribute* in_attrs; - size_t in_attrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_attributes(env, obj, o->arena, attributes, &in_attrs, &in_attrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, in_attrs, in_attrs_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject attributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates_attributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject attributes) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - const struct hyperdex_client_attribute* in_attrs; - size_t in_attrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_attributes(env, obj, o->arena, attributes, &in_attrs, &in_attrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, in_checks, in_checks_sz, in_attrs, in_attrs_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates_attributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject attributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates_attributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_attribute* attrs, size_t attrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject attributes) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - const struct hyperdex_client_attribute* in_attrs; - size_t in_attrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_attributes(env, obj, o->arena, attributes, &in_attrs, &in_attrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, in_attrs, in_attrs_sz, &o->status, &o->count); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status_count; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, in_checks, in_checks_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, &o->status, &o->count); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status_count; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject mapattributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject mapattributes) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - const struct hyperdex_client_map_attribute* in_mapattrs; - size_t in_mapattrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_mapattributes(env, obj, o->arena, mapattributes, &in_mapattrs, &in_mapattrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, in_mapattrs, in_mapattrs_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject mapattributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_key_predicates_mapattributes__status(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const char* key, size_t key_sz, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status), jstring spacename, jobject key, jobject predicates, jobject mapattributes) -{ - const char* in_space; - const char* in_key; - size_t in_key_sz; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - const struct hyperdex_client_map_attribute* in_mapattrs; - size_t in_mapattrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_key(env, obj, o->arena, key, &in_key, &in_key_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_mapattributes(env, obj, o->arena, mapattributes, &in_mapattrs, &in_mapattrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_key, in_key_sz, in_checks, in_checks_sz, in_mapattrs, in_mapattrs_sz, &o->status); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates_mapattributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject mapattributes); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates_mapattributes__status_count(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const struct hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, enum hyperdex_client_returncode* status, uint64_t* count), jstring spacename, jobject predicates, jobject mapattributes) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - const struct hyperdex_client_map_attribute* in_mapattrs; - size_t in_mapattrs_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_mapattributes(env, obj, o->arena, mapattributes, &in_mapattrs, &in_mapattrs_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, in_mapattrs, in_mapattrs_sz, &o->status, &o->count); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status_count; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_iterator__spacename_predicates__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_iterator__spacename_predicates__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _iterator, _iterator_init, obj); - struct hyperdex_java_client_iterator* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_iterator_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, &o->status, &o->attrs, &o->attrs_sz); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_iterator_encode_status_attributes; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates__status_description(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const char** description), jstring spacename, jobject predicates); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_asynccall__spacename_predicates__status_description(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, enum hyperdex_client_returncode* status, const char** description), jstring spacename, jobject predicates) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_client_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, &o->status, &o->description); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_deferred_encode_status_description; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_iterator__spacename_predicates_sortby_limit_maxmin__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates, jstring sortby, jint limit, jboolean maxmin); - -JNIEXPORT HYPERDEX_API jobject JNICALL -hyperdex_java_client_iterator__spacename_predicates_sortby_limit_maxmin__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, const char* space, const struct hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, enum hyperdex_client_returncode* status, const struct hyperdex_client_attribute** attrs, size_t* attrs_sz), jstring spacename, jobject predicates, jstring sortby, jint limit, jboolean maxmin) -{ - const char* in_space; - const struct hyperdex_client_attribute_check* in_checks; - size_t in_checks_sz; - const char* in_sort_by; - uint64_t in_limit; - int in_maxmin; - int success = 0; - struct hyperdex_client* client = hyperdex_get_client_ptr(env, obj); - jobject op = (*env)->NewObject(env, _iterator, _iterator_init, obj); - struct hyperdex_java_client_iterator* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_iterator_ptr(env, op); - ERROR_CHECK(0); - success = hyperdex_java_client_convert_spacename(env, obj, o->arena, spacename, &in_space); - if (success < 0) return 0; - success = hyperdex_java_client_convert_predicates(env, obj, o->arena, predicates, &in_checks, &in_checks_sz); - if (success < 0) return 0; - success = hyperdex_java_client_convert_sortby(env, obj, o->arena, sortby, &in_sort_by); - if (success < 0) return 0; - success = hyperdex_java_client_convert_limit(env, obj, o->arena, limit, &in_limit); - if (success < 0) return 0; - success = hyperdex_java_client_convert_maxmin(env, obj, o->arena, maxmin, &in_maxmin); - if (success < 0) return 0; - o->reqid = f(client, in_space, in_checks, in_checks_sz, in_sort_by, in_limit, in_maxmin, &o->status, &o->attrs, &o->attrs_sz); - - if (o->reqid < 0) - { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; - } - - o->encode_return = hyperdex_java_client_iterator_encode_status_attributes; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); - ERROR_CHECK(0); - return op; -} JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1put(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_put(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_put, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_put(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1add(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_atomic_1add(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_add, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_atomic_add(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1sub(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_atomic_1sub(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_sub, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_atomic_sub(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1mul(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_atomic_1mul(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_mul, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_atomic_mul(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1div(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_atomic_1div(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_div, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_atomic_div(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1and(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_atomic_1and(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_and, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_atomic_and(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1or(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_atomic_1or(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_atomic_or, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_atomic_or(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1string_1prepend(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_string_1prepend(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_string_prepend, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_string_prepend(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1string_1append(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_string_1append(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_string_append, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_string_append(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1list_1lpush(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_list_1lpush(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_list_lpush, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_list_lpush(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1list_1rpush(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_list_1rpush(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_list_rpush, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_list_rpush(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1document_1rename(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_document_1rename(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_document_rename, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_document_rename(client_ptr, uxact, _attrs, _attrs_sz); } JNIEXPORT HYPERDEX_API jint JNICALL -Java_org_hyperdex_client_Microtransaction_uxact_1document_1unset(JNIEnv* env , jobject microtransaction, jobject attributes) +Java_org_hyperdex_client_Microtransaction_document_1unset(JNIEnv* env , jobject microtransaction, jobject attributes) { - return hyperdex_java_uactx_microtransactioncall__microtransaction_attributes__(env, hyperdex_client_uxact_document_unset, microtransaction, attributes); + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_document_unset(client_ptr, uxact, _attrs, _attrs_sz); } diff --git a/bindings/java/org_hyperdex_client_Microtransaction.h b/bindings/java/org_hyperdex_client_Microtransaction.h index 11c7e2cb..e045e352 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.h +++ b/bindings/java/org_hyperdex_client_Microtransaction.h @@ -10,1041 +10,137 @@ extern "C" { /* * Class: org_hyperdex_client_Microtransaction * Method: _create - * Signature: (Lorg/hyperdex/client/Client;Ljava/lang/String;)V + * Signature: (Ljava/lang/String;)V */ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction__1create - (JNIEnv *, jobject, jobject, jstring); + (JNIEnv *, jobject, jstring); /* * Class: org_hyperdex_client_Microtransaction - * Method: get - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Method: _destroy + * Signature: ()V */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_get - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: get_partial - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_get_1partial - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: put - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_put - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_put - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1put - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_put - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1put - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_put_or_create - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1put_1or_1create - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_put - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1put - (JNIEnv *, jobject, jobject); +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction__1destroy + (JNIEnv *, jobject); /* * Class: org_hyperdex_client_Microtransaction - * Method: put_if_not_exist - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Method: initialize + * Signature: ()V */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_put_1if_1not_1exist - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: del - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_del - (JNIEnv *, jobject, jobject); +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction_initialize + (JNIEnv *, jclass); /* * Class: org_hyperdex_client_Microtransaction - * Method: cond_del - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Method: terminate + * Signature: ()V */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1del - (JNIEnv *, jobject, jobject); +JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction_terminate + (JNIEnv *, jclass); /* * Class: org_hyperdex_client_Microtransaction - * Method: group_del - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Method: put + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1del +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_put (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: atomic_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_atomic_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_atomic_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_atomic_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1add +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1add (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: atomic_sub - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1sub - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_atomic_sub - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1sub - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_atomic_sub - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1sub - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_atomic_sub - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1sub +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1sub (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: atomic_mul - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1mul - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_atomic_mul - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1mul - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_atomic_mul - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1mul - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_atomic_mul - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1mul +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1mul (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: atomic_div - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1div - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_atomic_div - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1div - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_atomic_div - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1div - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_atomic_div - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1div - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: atomic_mod - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1mod - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_atomic_mod - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1mod - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_atomic_mod - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1mod +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1div (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: atomic_and - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1and - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_atomic_and - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1and - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_atomic_and - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1and - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_atomic_and - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1and +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1and (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: atomic_or - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1or - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_atomic_or - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1atomic_1or - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_atomic_or - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1or - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_atomic_or - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1or - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: atomic_xor - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1xor - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_atomic_xor - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1xor - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_atomic_xor - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1xor - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: atomic_min - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1min - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_atomic_min - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1min - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_atomic_min - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1min - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: atomic_max - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1max - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_atomic_max - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1atomic_1max - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_atomic_max - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1atomic_1max +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1or (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: string_prepend - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_string_1prepend - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_string_prepend - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1string_1prepend - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_string_prepend - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1string_1prepend - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_string_prepend - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1string_1prepend +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_string_1prepend (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: string_append - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_string_1append - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_string_append - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1string_1append - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_string_append - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1string_1append - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_string_append - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1string_1append +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_string_1append (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: list_lpush - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_list_1lpush - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_list_lpush - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1list_1lpush - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_list_lpush - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1list_1lpush - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_list_lpush - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1list_1lpush +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_list_1lpush (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: list_rpush - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_list_1rpush - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_list_rpush - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1list_1rpush +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_list_1rpush (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction - * Method: cond_list_rpush - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1list_1rpush - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_list_rpush - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1list_1rpush - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: set_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_set_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_set_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Method: document_rename + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1set_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_set_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1set_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: set_remove - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_set_1remove - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_set_remove - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1set_1remove - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_set_remove - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1set_1remove - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: set_intersect - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_set_1intersect - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_set_intersect - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1set_1intersect - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_set_intersect - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1set_1intersect - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: set_union - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_set_1union - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_set_union - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1set_1union - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_set_union - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1set_1union - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: document_rename - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_document_1rename - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_document_rename - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1document_1rename - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_document_rename - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1document_1rename - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_document_rename - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1document_1rename +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_document_1rename (JNIEnv *, jobject, jobject); /* * Class: org_hyperdex_client_Microtransaction * Method: document_unset - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_document_1unset - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: uxact_document_unset - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_uxact_1document_1unset - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_document_unset - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1document_1unset - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_document_unset - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1document_1unset - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_remove - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1remove - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_remove - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1remove - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_remove - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1remove - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_atomic_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_atomic_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_atomic_add - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1add - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_atomic_sub - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1sub - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_atomic_sub - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1sub - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_atomic_sub - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1sub - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_atomic_mul - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1mul - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_atomic_mul - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1mul - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_atomic_mul - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1mul - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_atomic_div - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1div - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_atomic_div - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1div - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_atomic_div - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1div - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_atomic_mod - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1mod - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_atomic_mod - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1mod - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_atomic_mod - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1mod - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_atomic_and - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1and - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_atomic_and - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1and - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_atomic_and - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1and - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_atomic_or - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1or - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_atomic_or - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1or - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_atomic_or - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1or - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_atomic_xor - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1xor - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_atomic_xor - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1xor - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_atomic_xor - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1xor - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_string_prepend - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1string_1prepend - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_string_prepend - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1string_1prepend - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_string_prepend - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1string_1prepend - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_string_append - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1string_1append - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_string_append - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1string_1append - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_string_append - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1string_1append - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_atomic_min - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1min - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_atomic_min - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1min - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_atomic_min - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1min - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: map_atomic_max - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_map_1atomic_1max - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: cond_map_atomic_max - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_cond_1map_1atomic_1max - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: group_map_atomic_max - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_group_1map_1atomic_1max - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: search - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_search - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: search_describe - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_search_1describe - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: sorted_search - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; - */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_sorted_1search - (JNIEnv *, jobject, jobject); - -/* - * Class: org_hyperdex_client_Microtransaction - * Method: count - * Signature: (Ljava/util/Map;)Ljava/lang/Integer; + * Signature: (Ljava/util/Map;)I */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_count +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_document_1unset (JNIEnv *, jobject, jobject); #ifdef __cplusplus From 02d551aa0f61c5ff0af7dde89a487f31d9519788 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Tue, 24 Feb 2015 16:23:21 -0500 Subject: [PATCH 23/28] Work toward working commit() in the java bindings --- bindings/java.py | 12 ++ bindings/java/client-util.h | 7 + .../org/hyperdex/client/Microtransaction.java | 12 ++ bindings/java/org_hyperdex_client_Client.c | 3 +- .../org_hyperdex_client_Microtransaction.c | 150 +++++++++++++++++- .../org_hyperdex_client_Microtransaction.h | 8 + test/java/DataTypeDocument.java | 18 +++ test/java/Microtransactions.java | 40 ++++- 8 files changed, 241 insertions(+), 9 deletions(-) diff --git a/bindings/java.py b/bindings/java.py index 3f219847..4a289edb 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -341,6 +341,11 @@ def generate_client_doc(): public class Microtransaction { + static + { + initialize(); + } + protected Microtransaction(Client client, String space) { this.client = client; @@ -350,6 +355,7 @@ def generate_client_doc(): private Client client; private long uxact_ptr; + private long arena_ptr; private long status_ptr; private native void _create(String space); @@ -358,6 +364,12 @@ def generate_client_doc(): /* cached IDs */ private static native void initialize(); private static native void terminate(); + + public Boolean commit(String key) throws HyperDexClientException { + return (Boolean) async_commit(key).waitForIt(); + } + + public native Deferred async_commit(String key) throws HyperDexClientException; ''' JAVA_HEAD = ''' diff --git a/bindings/java/client-util.h b/bindings/java/client-util.h index c2384d4a..95ba9729 100644 --- a/bindings/java/client-util.h +++ b/bindings/java/client-util.h @@ -47,4 +47,11 @@ hyperdex_java_client_convert_attributes(JNIEnv* env, jobject client, const struct hyperdex_client_attribute** _attrs, size_t* _attrs_sz); +int +hyperdex_java_client_convert_key(JNIEnv* env, jobject client, + struct hyperdex_ds_arena* arena, + jobject x, + const char** key, + size_t* key_sz); + #endif diff --git a/bindings/java/org/hyperdex/client/Microtransaction.java b/bindings/java/org/hyperdex/client/Microtransaction.java index 14642370..805b145a 100644 --- a/bindings/java/org/hyperdex/client/Microtransaction.java +++ b/bindings/java/org/hyperdex/client/Microtransaction.java @@ -35,6 +35,11 @@ public class Microtransaction { + static + { + initialize(); + } + protected Microtransaction(Client client, String space) { this.client = client; @@ -44,6 +49,7 @@ protected Microtransaction(Client client, String space) private Client client; private long uxact_ptr; + private long arena_ptr; private long status_ptr; private native void _create(String space); @@ -52,6 +58,12 @@ protected Microtransaction(Client client, String space) /* cached IDs */ private static native void initialize(); private static native void terminate(); + + public Boolean commit(String key) throws HyperDexClientException { + return (Boolean) async_commit(key).waitForIt(); + } + + public native Deferred async_commit(String key) throws HyperDexClientException; public native int put(Map attrs) throws HyperDexClientException; public native int atomic_add(Map attrs) throws HyperDexClientException; diff --git a/bindings/java/org_hyperdex_client_Client.c b/bindings/java/org_hyperdex_client_Client.c index 6b8107ff..3b48c56c 100644 --- a/bindings/java/org_hyperdex_client_Client.c +++ b/bindings/java/org_hyperdex_client_Client.c @@ -903,7 +903,7 @@ hyperdex_java_client_convert_type(JNIEnv* env, } } -static int +int hyperdex_java_client_convert_key(JNIEnv* env, jobject client, struct hyperdex_ds_arena* arena, jobject x, @@ -1737,7 +1737,6 @@ hyperdex_java_client_build_attributes(JNIEnv* env, } /******************************* Deferred Class *******************************/ - struct hyperdex_java_client_deferred { struct hyperdex_ds_arena* arena; diff --git a/bindings/java/org_hyperdex_client_Microtransaction.c b/bindings/java/org_hyperdex_client_Microtransaction.c index ded953a2..ec1ba6fa 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.c +++ b/bindings/java/org_hyperdex_client_Microtransaction.c @@ -36,9 +36,14 @@ #include #include "visibility.h" #include "bindings/java/org_hyperdex_client_Microtransaction.h" +#include "bindings/java/org_hyperdex_client_Deferred.h" #include "client-util.h" +#define CHECK_CACHE(X) assert((X)) +#define ERROR_CHECK(RET) if ((*env)->ExceptionCheck(env) == JNI_TRUE) return (RET) +#define ERROR_CHECK_VOID() if ((*env)->ExceptionCheck(env) == JNI_TRUE) return + #define REF(NAME, DEF) \ tmp_cls = (DEF); \ NAME = (jclass) (*env)->NewGlobalRef(env, tmp_cls); \ @@ -48,9 +53,20 @@ static jclass _uxact; static jfieldID _uxact_client; static jfieldID _uxact_arena_ptr; static jfieldID _uxact_uxact_ptr; +static jfieldID _uxact_status_ptr; + +static jclass _deferred; +static jmethodID _deferred_init; +static jfieldID _deferred_ptr; +static jfieldID _deferred_c; static jclass _client; static jfieldID _client_ptr; +static jmethodID _client_add_op; +static jmethodID _client_remove_op; + +static jclass _boolean; +static jmethodID _boolean_init; JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction_initialize(JNIEnv* env, jclass client) @@ -59,18 +75,32 @@ Java_org_hyperdex_client_Microtransaction_initialize(JNIEnv* env, jclass client) /* cache class Client */ REF(_uxact, (*env)->FindClass(env, "org/hyperdex/client/Microtransaction")); - _uxact_client = (*env)->GetFieldID(env, _uxact, "client_ptr", "Lorg/hyperdex/client/Microtransaction;"); + _uxact_client = (*env)->GetFieldID(env, _uxact, "client", "Lorg/hyperdex/client/Client;"); _uxact_uxact_ptr = (*env)->GetFieldID(env, _uxact, "uxact_ptr", "J"); - _uxact_arena_ptr = (*env)->GetFieldID(env, _uxact, "uxact_arena_ptr", "J"); + _uxact_arena_ptr = (*env)->GetFieldID(env, _uxact, "arena_ptr", "J"); + _uxact_status_ptr = (*env)->GetFieldID(env, _uxact, "status_ptr", "J"); REF(_client, (*env)->FindClass(env, "org/hyperdex/client/Client")); - _client_ptr = (*env)->GetFieldID(env, _client, "client_ptr", "J"); + _client_ptr = (*env)->GetFieldID(env, _client, "ptr", "J"); + _client_add_op = (*env)->GetMethodID(env, _client, "add_op", "(JLorg/hyperdex/client/Operation;)V"); + _client_remove_op = (*env)->GetMethodID(env, _client, "remove_op", "(J)V"); + REF(_deferred, (*env)->FindClass(env, "org/hyperdex/client/Deferred")); + _deferred_ptr = (*env)->GetFieldID(env, _deferred, "ptr", "J"); + _deferred_init = (*env)->GetMethodID(env, _deferred, "", "(Lorg/hyperdex/client/Client;)V"); + _deferred_c = (*env)->GetFieldID(env, _deferred, "c", "Lorg/hyperdex/client/Client;"); + REF(_boolean, (*env)->FindClass(env, "java/lang/Boolean")); + _boolean_init = (*env)->GetMethodID(env, _boolean, "", "(Z)V"); CHECK_CACHE(_uxact); CHECK_CACHE(_uxact_client); CHECK_CACHE(_uxact_uxact_ptr); CHECK_CACHE(_uxact_arena_ptr); + CHECK_CACHE(_uxact_status_ptr); CHECK_CACHE(_client); CHECK_CACHE(_client_ptr); + CHECK_CACHE(_client_add_op); + CHECK_CACHE(_client_remove_op); + CHECK_CACHE(_boolean); + CHECK_CACHE(_boolean_init); ERROR_CHECK_VOID(); } @@ -84,7 +114,6 @@ hyperdex_uxact_get_client(JNIEnv* env, jobject obj) return c; } - static struct hyperdex_client* hyperdex_uxact_get_client_ptr(JNIEnv* env, jobject obj) { @@ -96,6 +125,33 @@ hyperdex_uxact_get_client_ptr(JNIEnv* env, jobject obj) return x; } +static enum hyperdex_client_returncode* +hyperdex_uxact_get_status_ptr(JNIEnv* env, jobject obj) +{ + enum hyperdex_client_returncode* x; + x = (enum hyperdex_client_returncode*) (*env)->GetLongField(env, obj, _uxact_status_ptr); + assert(x); + return x; +} + +static struct hyperdex_java_uxact_deferred* +hyperdex_get_deferred_ptr(JNIEnv* env, jobject obj) +{ + struct hyperdex_java_uxact_deferred* x; + x = (struct hyperdex_java_uxact_deferred*) (*env)->GetLongField(env, obj, _deferred_ptr); + assert(x); + return x; +} + +struct hyperdex_java_uxact_deferred +{ + struct hyperdex_ds_arena* arena; + int64_t reqid; + enum hyperdex_client_returncode status; + int finished; + jobject (*encode_return)(JNIEnv* env, jobject obj, struct hyperdex_java_uxact_deferred* d); +}; + static struct hyperdex_ds_arena* hyperdex_uxact_get_arena_ptr(JNIEnv* env, jobject obj) { @@ -135,12 +191,96 @@ Java_org_hyperdex_client_Microtransaction__1create(JNIEnv* env, jobject uxact, j (*env)->SetLongField(env, uxact, _uxact_uxact_ptr, (long)uxact_ptr); (*env)->SetLongField(env, uxact, _uxact_arena_ptr, (long)arena); + (*env)->SetLongField(env, uxact, _uxact_status_ptr, (long)status); +} + +static jobject +hyperdex_java_uxact_deferred_encode_status(JNIEnv* env, jobject obj, struct hyperdex_java_uxact_deferred* d) +{ + jobject ret; + jobject client_obj; + struct hyperdex_client* client; + + if (d->status == HYPERDEX_CLIENT_SUCCESS) + { + ret = (*env)->NewObject(env, _boolean, _boolean_init, JNI_TRUE); + ERROR_CHECK(0); + return ret; + } + else if (d->status == HYPERDEX_CLIENT_NOTFOUND) + { + return NULL; + } + else if (d->status == HYPERDEX_CLIENT_CMPFAIL) + { + ret = (*env)->NewObject(env, _boolean, _boolean_init, JNI_FALSE); + ERROR_CHECK(0); + return ret; + } + else + { + client_obj = (*env)->GetObjectField(env, obj, _deferred_c); + ERROR_CHECK(0); + client = hyperdex_uxact_get_client_ptr(env, client_obj); + hyperdex_java_client_throw_exception(env, d->status, hyperdex_client_error_message(client)); + return 0; + } +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Microtransaction_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, struct hyperdex_client_microtransaction *uaxct, const char* key, size_t key_sz), jobject key); + +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Microtransaction_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, struct hyperdex_client_microtransaction *uaxct, const char* key, size_t key_sz), jobject key) +{ + const char* in_key; + size_t in_key_sz; + struct hyperdex_client* client = hyperdex_uxact_get_client_ptr(env, obj); + struct hyperdex_client_microtransaction *uxact = hyperdex_uxact_get_uxact_ptr(env, obj); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); + struct hyperdex_java_uxact_deferred* o = NULL; + ERROR_CHECK(0); + o = hyperdex_get_deferred_ptr(env, op); + ERROR_CHECK(0); + o->reqid = f(client, uxact, in_key, in_key_sz); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); + return 0; + } + + o->encode_return = hyperdex_java_uxact_deferred_encode_status; + (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Microtransaction_async_1commit(JNIEnv* env, jobject uxact, jstring key) +{ + jobject client; + struct hyperdex_client *client_ptr; + struct hyperdex_ds_arena *arena; + + client = hyperdex_uxact_get_client(env, uxact); + client_ptr = hyperdex_uxact_get_client_ptr(env, uxact); + arena = hyperdex_uxact_get_arena_ptr(env, uxact); + + return Java_org_hyperdex_client_Microtransaction_asynccall__spacename_key_attributenames__status_attributes(env, uxact, hyperdex_client_uxact_commit, key); } JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction__1destroy(JNIEnv* env, jclass uxact) { - (void) uxact; + enum hyperdex_client_returncode *status; + struct hyperdex_ds_arena *arena; + + status = hyperdex_uxact_get_status_ptr(env, uxact); + arena = hyperdex_uxact_get_arena_ptr(env, uxact); + + free(status); + hyperdex_ds_arena_destroy(arena); ERROR_CHECK_VOID(); } diff --git a/bindings/java/org_hyperdex_client_Microtransaction.h b/bindings/java/org_hyperdex_client_Microtransaction.h index e045e352..7d3e4836 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.h +++ b/bindings/java/org_hyperdex_client_Microtransaction.h @@ -39,6 +39,14 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction_in JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction_terminate (JNIEnv *, jclass); +/* + * Class: org_hyperdex_client_Microtransaction + * Method: async_commit + * Signature: (Ljava/lang/String;)Lorg/hyperdex/client/Deferred; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_async_1commit + (JNIEnv *, jobject, jstring); + /* * Class: org_hyperdex_client_Microtransaction * Method: put diff --git a/test/java/DataTypeDocument.java b/test/java/DataTypeDocument.java index 09d2c776..4ec3f693 100644 --- a/test/java/DataTypeDocument.java +++ b/test/java/DataTypeDocument.java @@ -66,5 +66,23 @@ public void insertNestedDocument() throws HyperDexClientException { expected.put("v", new Document("{\"a\":{\"b\":\"c\"}}")); // be careful about formatting... assertEquals(expected, get); } + + @Test + public void setField() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", new Document("{}")); + c.put("kv", "k", attrs); + + Map attrs2 = new HashMap(); + attrs2.put("v.a", "xyz"); + Boolean res = c.put("kv", "k", attrs2); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap(); + assert(get.get("v") instanceof Document); + expected.put("v", new Document("{\"a\":\"xyz\"}")); + assertEquals(expected, get); + } } diff --git a/test/java/Microtransactions.java b/test/java/Microtransactions.java index 811a8b53..a0325b33 100644 --- a/test/java/Microtransactions.java +++ b/test/java/Microtransactions.java @@ -19,13 +19,49 @@ public void setUpHyperdexClient() throws Exception { } @After - public void destroyHyperdexClient() { + public void destroyHyperdexClient() throws HyperDexClientException { + Map match_all = new HashMap(); + c.group_del("kv", match_all); c = null; } @Test public void singleOperation() throws HyperDexClientException { - Microtransaction utx = c.initMicrotransaction("kv"); + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs = new HashMap(); + attrs.put("v", new Document("{}")); + xact.put(attrs); + + Boolean res = xact.commit("k"); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap(); + expected.put("v", new Document("{}")); + + assertEquals(expected, get); + } + + @Test + public void setTwoFields() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", new Document("{}")); + c.put("kv", "k", attrs); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs2 = new HashMap(); + attrs2.put("v.a", "c"); + attrs2.put("v.b", new Document("{\"x\":\"y\"}")); + xact.put(attrs2); + + Boolean res = xact.commit("k"); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap(); + expected.put("v", new Document("{\"a\":\"c\",\"b\":{\"x\":\"y\"}}")); + + assertEquals(expected, get); } } From 0da09df6e8edc45c4e056fa8320bff2e9a25148e Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Wed, 25 Feb 2015 15:49:05 -0500 Subject: [PATCH 24/28] Committing microtransactions works in java --- bindings/java.py | 3 +- bindings/java/client-util.h | 18 +++ .../org/hyperdex/client/Microtransaction.java | 3 +- bindings/java/org_hyperdex_client_Client.c | 15 +-- .../org_hyperdex_client_Microtransaction.c | 123 +++++++----------- test/java/Microtransactions.java | 47 ++++++- test/sh/bindings.java.Microtransactions.sh | 2 +- 7 files changed, 117 insertions(+), 94 deletions(-) diff --git a/bindings/java.py b/bindings/java.py index 4a289edb..0f0749bb 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -355,8 +355,7 @@ def generate_client_doc(): private Client client; private long uxact_ptr; - private long arena_ptr; - private long status_ptr; + private long deferred_ptr; private native void _create(String space); private native void _destroy(); diff --git a/bindings/java/client-util.h b/bindings/java/client-util.h index 95ba9729..da12a966 100644 --- a/bindings/java/client-util.h +++ b/bindings/java/client-util.h @@ -54,4 +54,22 @@ hyperdex_java_client_convert_key(JNIEnv* env, jobject client, const char** key, size_t* key_sz); +int +hyperdex_java_client_throw_exception(JNIEnv* env, + enum hyperdex_client_returncode _rc, + const char* message); + +struct hyperdex_java_client_deferred +{ + struct hyperdex_ds_arena* arena; + int64_t reqid; + enum hyperdex_client_returncode status; + const struct hyperdex_client_attribute* attrs; + size_t attrs_sz; + const char* description; + uint64_t count; + int finished; + jobject (*encode_return)(JNIEnv* env, jobject obj, struct hyperdex_java_client_deferred* d); +}; + #endif diff --git a/bindings/java/org/hyperdex/client/Microtransaction.java b/bindings/java/org/hyperdex/client/Microtransaction.java index 805b145a..78e19769 100644 --- a/bindings/java/org/hyperdex/client/Microtransaction.java +++ b/bindings/java/org/hyperdex/client/Microtransaction.java @@ -49,8 +49,7 @@ protected Microtransaction(Client client, String space) private Client client; private long uxact_ptr; - private long arena_ptr; - private long status_ptr; + private long deferred_ptr; private native void _create(String space); private native void _destroy(); diff --git a/bindings/java/org_hyperdex_client_Client.c b/bindings/java/org_hyperdex_client_Client.c index 3b48c56c..24a968f7 100644 --- a/bindings/java/org_hyperdex_client_Client.c +++ b/bindings/java/org_hyperdex_client_Client.c @@ -454,7 +454,7 @@ hyperdex_java_client_create_exception(JNIEnv* env, return err; } -static int +int hyperdex_java_client_throw_exception(JNIEnv* env, enum hyperdex_client_returncode _rc, const char* message) @@ -1737,19 +1737,6 @@ hyperdex_java_client_build_attributes(JNIEnv* env, } /******************************* Deferred Class *******************************/ -struct hyperdex_java_client_deferred -{ - struct hyperdex_ds_arena* arena; - int64_t reqid; - enum hyperdex_client_returncode status; - const struct hyperdex_client_attribute* attrs; - size_t attrs_sz; - const char* description; - uint64_t count; - int finished; - jobject (*encode_return)(JNIEnv* env, jobject obj, struct hyperdex_java_client_deferred* d); -}; - JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1create(JNIEnv* env, jobject deferred) { diff --git a/bindings/java/org_hyperdex_client_Microtransaction.c b/bindings/java/org_hyperdex_client_Microtransaction.c index ec1ba6fa..8c8be11e 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.c +++ b/bindings/java/org_hyperdex_client_Microtransaction.c @@ -51,9 +51,8 @@ static jclass _uxact; static jfieldID _uxact_client; -static jfieldID _uxact_arena_ptr; +static jfieldID _uxact_deferred_ptr; static jfieldID _uxact_uxact_ptr; -static jfieldID _uxact_status_ptr; static jclass _deferred; static jmethodID _deferred_init; @@ -77,8 +76,7 @@ Java_org_hyperdex_client_Microtransaction_initialize(JNIEnv* env, jclass client) REF(_uxact, (*env)->FindClass(env, "org/hyperdex/client/Microtransaction")); _uxact_client = (*env)->GetFieldID(env, _uxact, "client", "Lorg/hyperdex/client/Client;"); _uxact_uxact_ptr = (*env)->GetFieldID(env, _uxact, "uxact_ptr", "J"); - _uxact_arena_ptr = (*env)->GetFieldID(env, _uxact, "arena_ptr", "J"); - _uxact_status_ptr = (*env)->GetFieldID(env, _uxact, "status_ptr", "J"); + _uxact_deferred_ptr = (*env)->GetFieldID(env, _uxact, "deferred_ptr", "J"); REF(_client, (*env)->FindClass(env, "org/hyperdex/client/Client")); _client_ptr = (*env)->GetFieldID(env, _client, "ptr", "J"); _client_add_op = (*env)->GetMethodID(env, _client, "add_op", "(JLorg/hyperdex/client/Operation;)V"); @@ -93,14 +91,17 @@ Java_org_hyperdex_client_Microtransaction_initialize(JNIEnv* env, jclass client) CHECK_CACHE(_uxact); CHECK_CACHE(_uxact_client); CHECK_CACHE(_uxact_uxact_ptr); - CHECK_CACHE(_uxact_arena_ptr); - CHECK_CACHE(_uxact_status_ptr); + CHECK_CACHE(_uxact_deferred_ptr); CHECK_CACHE(_client); CHECK_CACHE(_client_ptr); CHECK_CACHE(_client_add_op); CHECK_CACHE(_client_remove_op); CHECK_CACHE(_boolean); CHECK_CACHE(_boolean_init); + CHECK_CACHE(_deferred); + CHECK_CACHE(_deferred_init); + CHECK_CACHE(_deferred_c); + CHECK_CACHE(_deferred_ptr); ERROR_CHECK_VOID(); } @@ -125,40 +126,40 @@ hyperdex_uxact_get_client_ptr(JNIEnv* env, jobject obj) return x; } -static enum hyperdex_client_returncode* -hyperdex_uxact_get_status_ptr(JNIEnv* env, jobject obj) +static struct hyperdex_client* +hyperdex_client_get_client_ptr(JNIEnv* env, jobject obj) { - enum hyperdex_client_returncode* x; - x = (enum hyperdex_client_returncode*) (*env)->GetLongField(env, obj, _uxact_status_ptr); + struct hyperdex_client* x; + x = (struct hyperdex_client*) (*env)->GetLongField(env, obj, _client_ptr); assert(x); return x; } -static struct hyperdex_java_uxact_deferred* -hyperdex_get_deferred_ptr(JNIEnv* env, jobject obj) +static struct hyperdex_java_client_deferred* +hyperdex_uxact_get_deferred_ptr(JNIEnv* env, jobject obj) { - struct hyperdex_java_uxact_deferred* x; - x = (struct hyperdex_java_uxact_deferred*) (*env)->GetLongField(env, obj, _deferred_ptr); + struct hyperdex_java_client_deferred* x; + x = (struct hyperdex_java_client_deferred*) (*env)->GetLongField(env, obj, _uxact_deferred_ptr); assert(x); return x; } -struct hyperdex_java_uxact_deferred +static struct hyperdex_java_client_deferred* +hyperdex_get_deferred_ptr(JNIEnv* env, jobject obj) { - struct hyperdex_ds_arena* arena; - int64_t reqid; - enum hyperdex_client_returncode status; - int finished; - jobject (*encode_return)(JNIEnv* env, jobject obj, struct hyperdex_java_uxact_deferred* d); -}; + struct hyperdex_java_client_deferred* x; + x = (struct hyperdex_java_client_deferred*) (*env)->GetLongField(env, obj, _deferred_ptr); + assert(x); + return x; +} static struct hyperdex_ds_arena* hyperdex_uxact_get_arena_ptr(JNIEnv* env, jobject obj) { - struct hyperdex_ds_arena* x; - x = (struct hyperdex_ds_arena*) (*env)->GetLongField(env, obj, _uxact_arena_ptr); + struct hyperdex_java_client_deferred* x; + x = (struct hyperdex_java_client_deferred*) (*env)->GetLongField(env, obj, _uxact_deferred_ptr); assert(x); - return x; + return x->arena; } static struct hyperdex_client_microtransaction* @@ -175,27 +176,24 @@ Java_org_hyperdex_client_Microtransaction__1create(JNIEnv* env, jobject uxact, j { struct hyperdex_client *client; struct hyperdex_client_microtransaction *uxact_ptr; - enum hyperdex_client_returncode *status; const char *space; - struct hyperdex_ds_arena *arena; + struct hyperdex_java_client_deferred *deferred; - arena = hyperdex_ds_arena_create(); - - status = (enum hyperdex_client_returncode*)malloc(sizeof(enum hyperdex_client_returncode)); - *status = HYPERDEX_CLIENT_SUCCESS; + deferred = (struct hyperdex_java_client_deferred*)malloc(sizeof(struct hyperdex_java_client_deferred)); + deferred->arena = hyperdex_ds_arena_create(); + deferred->status = HYPERDEX_CLIENT_SUCCESS; space = (*env)->GetStringUTFChars(env, _space, NULL); client = hyperdex_uxact_get_client_ptr(env, uxact); - uxact_ptr = hyperdex_client_uxact_init(client, space, status); + uxact_ptr = hyperdex_client_uxact_init(client, space, &deferred->status); (*env)->SetLongField(env, uxact, _uxact_uxact_ptr, (long)uxact_ptr); - (*env)->SetLongField(env, uxact, _uxact_arena_ptr, (long)arena); - (*env)->SetLongField(env, uxact, _uxact_status_ptr, (long)status); + (*env)->SetLongField(env, uxact, _uxact_deferred_ptr, (long)deferred); } static jobject -hyperdex_java_uxact_deferred_encode_status(JNIEnv* env, jobject obj, struct hyperdex_java_uxact_deferred* d) +hyperdex_java_uxact_deferred_encode_status(JNIEnv* env, jobject obj, struct hyperdex_java_client_deferred* d) { jobject ret; jobject client_obj; @@ -221,66 +219,43 @@ hyperdex_java_uxact_deferred_encode_status(JNIEnv* env, jobject obj, struct hype { client_obj = (*env)->GetObjectField(env, obj, _deferred_c); ERROR_CHECK(0); - client = hyperdex_uxact_get_client_ptr(env, client_obj); + client = hyperdex_client_get_client_ptr(env, client_obj); hyperdex_java_client_throw_exception(env, d->status, hyperdex_client_error_message(client)); - return 0; + return NULL; } } JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Microtransaction_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, struct hyperdex_client_microtransaction *uaxct, const char* key, size_t key_sz), jobject key); - -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Microtransaction_asynccall__spacename_key_attributenames__status_attributes(JNIEnv* env, jobject obj, int64_t (*f)(struct hyperdex_client* client, struct hyperdex_client_microtransaction *uaxct, const char* key, size_t key_sz), jobject key) +Java_org_hyperdex_client_Microtransaction_async_1commit(JNIEnv* env, jobject uxact, jstring key) { const char* in_key; size_t in_key_sz; - struct hyperdex_client* client = hyperdex_uxact_get_client_ptr(env, obj); - struct hyperdex_client_microtransaction *uxact = hyperdex_uxact_get_uxact_ptr(env, obj); - jobject op = (*env)->NewObject(env, _deferred, _deferred_init, obj); - struct hyperdex_java_uxact_deferred* o = NULL; - ERROR_CHECK(0); - o = hyperdex_get_deferred_ptr(env, op); + struct hyperdex_client* client_ptr = hyperdex_uxact_get_client_ptr(env, uxact); + struct hyperdex_client_microtransaction *uxact_ptr = hyperdex_uxact_get_uxact_ptr(env, uxact); + jobject client = hyperdex_uxact_get_client(env, uxact); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, client); + struct hyperdex_java_client_deferred* o = hyperdex_uxact_get_deferred_ptr(env, uxact); ERROR_CHECK(0); - o->reqid = f(client, uxact, in_key, in_key_sz); + + hyperdex_java_client_convert_key(env, client, o->arena, key, &in_key, &in_key_sz); + o->encode_return = hyperdex_java_uxact_deferred_encode_status; + o->reqid = hyperdex_client_uxact_commit(client_ptr, uxact_ptr, in_key, in_key_sz); + + (*env)->SetLongField(env, op, _deferred_ptr, (long)o); if (o->reqid < 0) { - hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client)); - return 0; + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client_ptr)); + return NULL; } - - o->encode_return = hyperdex_java_uxact_deferred_encode_status; - (*env)->CallObjectMethod(env, obj, _client_add_op, o->reqid, op); + (*env)->CallObjectMethod(env, client, _client_add_op, o->reqid, op); ERROR_CHECK(0); return op; } -JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Microtransaction_async_1commit(JNIEnv* env, jobject uxact, jstring key) -{ - jobject client; - struct hyperdex_client *client_ptr; - struct hyperdex_ds_arena *arena; - - client = hyperdex_uxact_get_client(env, uxact); - client_ptr = hyperdex_uxact_get_client_ptr(env, uxact); - arena = hyperdex_uxact_get_arena_ptr(env, uxact); - - return Java_org_hyperdex_client_Microtransaction_asynccall__spacename_key_attributenames__status_attributes(env, uxact, hyperdex_client_uxact_commit, key); -} - JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction__1destroy(JNIEnv* env, jclass uxact) { - enum hyperdex_client_returncode *status; - struct hyperdex_ds_arena *arena; - - status = hyperdex_uxact_get_status_ptr(env, uxact); - arena = hyperdex_uxact_get_arena_ptr(env, uxact); - - free(status); - hyperdex_ds_arena_destroy(arena); ERROR_CHECK_VOID(); } diff --git a/test/java/Microtransactions.java b/test/java/Microtransactions.java index a0325b33..aad0e48e 100644 --- a/test/java/Microtransactions.java +++ b/test/java/Microtransactions.java @@ -42,7 +42,28 @@ public void singleOperation() throws HyperDexClientException { assertEquals(expected, get); } - @Test + @Test + public void setField() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", new Document("{}")); + c.put("kv", "k", attrs); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs2 = new HashMap(); + attrs2.put("v.b", new Document("{\"x\":\"y\"}")); + xact.put(attrs2); + + Boolean res = xact.commit("k"); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap(); + expected.put("v", new Document("{\"b\":{\"x\":\"y\"}}")); + + assertEquals(expected, get); + } + + @Test public void setTwoFields() throws HyperDexClientException { Map attrs = new HashMap(); attrs.put("v", new Document("{}")); @@ -61,6 +82,30 @@ public void setTwoFields() throws HyperDexClientException { Map expected = new HashMap(); expected.put("v", new Document("{\"a\":\"c\",\"b\":{\"x\":\"y\"}}")); + assertEquals(expected, get); + } + + @Test + public void setTwoFieldsIndependent() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", new Document("{}")); + c.put("kv", "k", attrs); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs2 = new HashMap(); + attrs2.put("v.a", "c"); + xact.put(attrs2); + Map attrs3 = new HashMap(); + attrs3.put("v.b", new Document("{\"x\":\"y\"}")); + xact.put(attrs3); + + Boolean res = xact.commit("k"); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap(); + expected.put("v", new Document("{\"a\":\"c\",\"b\":{\"x\":\"y\"}}")); + assertEquals(expected, get); } } diff --git a/test/sh/bindings.java.Microtransactions.sh b/test/sh/bindings.java.Microtransactions.sh index c8e64c5c..8563f822 100755 --- a/test/sh/bindings.java.Microtransactions.sh +++ b/test/sh/bindings.java.Microtransactions.sh @@ -1,6 +1,6 @@ #!/bin/sh javac -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:/usr/share/java/junit4.jar -d "${HYPERDEX_BUILDDIR}"/test/java "${HYPERDEX_SRCDIR}"/test/java/Microtransactions.java -python2 "${HYPERDEX_SRCDIR}"/test/runner.py --space="space kv key k attributes int v" --daemons=1 -- \ +python2 "${HYPERDEX_SRCDIR}"/test/runner.py --space="space kv key k attributes document v" --daemons=1 -- \ java -ea -Djava.library.path="${HYPERDEX_BUILDDIR}"/.libs:/usr/local/lib:/usr/local/lib64:/usr/lib:/usr/lib64:/u -Dhyperdex_host={HOST} -Dhyperdex_port={PORT} \ -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:"${HYPERDEX_SRCDIR}"/test/java:/usr/share/java/junit4.jar org.junit.runner.JUnitCore Microtransactions From 87d727b8a03192e45a3dcfcd211b8ca30919c98e Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Wed, 25 Feb 2015 18:48:23 -0500 Subject: [PATCH 25/28] More tests... --- Makefile.am | 2 + bindings/java.py | 6 + bindings/java/client-util.h | 11 ++ .../org/hyperdex/client/Microtransaction.java | 6 + bindings/java/org_hyperdex_client_Client.c | 4 +- .../org_hyperdex_client_Microtransaction.c | 29 +++++ .../org_hyperdex_client_Microtransaction.h | 8 ++ test/java/DataTypeDocument.java | 16 +-- test/java/DataTypeInt.java | 40 +++++-- test/java/DataTypeString.java | 19 ++- test/java/Microtransactions.java | 113 +++++++++++++++--- test/java/MultitypeMicrotransactions.java | 76 ++++++++++++ ...indings.java.MultitypeMicrotransactions.sh | 6 + 13 files changed, 296 insertions(+), 40 deletions(-) create mode 100644 test/java/MultitypeMicrotransactions.java create mode 100755 test/sh/bindings.java.MultitypeMicrotransactions.sh diff --git a/Makefile.am b/Makefile.am index 0f4690c3..e348d115 100644 --- a/Makefile.am +++ b/Makefile.am @@ -907,6 +907,7 @@ java_wrappers += test/sh/bindings.java.DataTypeSetString.sh java_wrappers += test/sh/bindings.java.DataTypeString.sh java_wrappers += test/sh/bindings.java.LengthString.sh java_wrappers += test/sh/bindings.java.Microtransactions.sh +java_wrappers += test/sh/bindings.java.MultitypeMicrotransactions.sh java_wrappers += test/sh/bindings.java.MultiAttribute.sh java_wrappers += test/sh/bindings.java.RangeSearchInt.sh java_wrappers += test/sh/bindings.java.RangeSearchString.sh @@ -1062,6 +1063,7 @@ EXTRA_DIST += test/java/DataTypeSetString.java EXTRA_DIST += test/java/DataTypeString.java EXTRA_DIST += test/java/LengthString.java EXTRA_DIST += test/java/Microtransactions.java +EXTRA_DIST += test/java/MultitypeMicrotransactions.java EXTRA_DIST += test/java/MultiAttribute.java EXTRA_DIST += test/java/RangeSearchInt.java EXTRA_DIST += test/java/RangeSearchString.java diff --git a/bindings/java.py b/bindings/java.py index 0f0749bb..6c3e5a80 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -364,6 +364,12 @@ def generate_client_doc(): private static native void initialize(); private static native void terminate(); + public Long group_commit(Map checks) throws HyperDexClientException { + return (Long) async_group_commit(checks).waitForIt(); + } + + public native Deferred async_group_commit(Map checks) throws HyperDexClientException; + public Boolean commit(String key) throws HyperDexClientException { return (Boolean) async_commit(key).waitForIt(); } diff --git a/bindings/java/client-util.h b/bindings/java/client-util.h index da12a966..5aba1b5e 100644 --- a/bindings/java/client-util.h +++ b/bindings/java/client-util.h @@ -54,6 +54,13 @@ hyperdex_java_client_convert_key(JNIEnv* env, jobject client, const char** key, size_t* key_sz); +int +hyperdex_java_client_convert_predicates(JNIEnv* env, jobject client, + struct hyperdex_ds_arena* arena, + jobject x, + const struct hyperdex_client_attribute_check** _checks, + size_t* _checks_sz); + int hyperdex_java_client_throw_exception(JNIEnv* env, enum hyperdex_client_returncode _rc, @@ -72,4 +79,8 @@ struct hyperdex_java_client_deferred jobject (*encode_return)(JNIEnv* env, jobject obj, struct hyperdex_java_client_deferred* d); }; +jobject +hyperdex_java_client_deferred_encode_status_count(JNIEnv* env, jobject obj, struct hyperdex_java_client_deferred* d); + + #endif diff --git a/bindings/java/org/hyperdex/client/Microtransaction.java b/bindings/java/org/hyperdex/client/Microtransaction.java index 78e19769..b898079d 100644 --- a/bindings/java/org/hyperdex/client/Microtransaction.java +++ b/bindings/java/org/hyperdex/client/Microtransaction.java @@ -58,6 +58,12 @@ protected Microtransaction(Client client, String space) private static native void initialize(); private static native void terminate(); + public Long group_commit(Map checks) throws HyperDexClientException { + return (Long) async_group_commit(checks).waitForIt(); + } + + public native Deferred async_group_commit(Map checks) throws HyperDexClientException; + public Boolean commit(String key) throws HyperDexClientException { return (Boolean) async_commit(key).waitForIt(); } diff --git a/bindings/java/org_hyperdex_client_Client.c b/bindings/java/org_hyperdex_client_Client.c index 24a968f7..b22268b4 100644 --- a/bindings/java/org_hyperdex_client_Client.c +++ b/bindings/java/org_hyperdex_client_Client.c @@ -1181,7 +1181,7 @@ hyperdex_java_client_convert_predicate(JNIEnv* env, } } -static int +int hyperdex_java_client_convert_predicates(JNIEnv* env, jobject client, struct hyperdex_ds_arena* arena, jobject x, @@ -1909,7 +1909,7 @@ hyperdex_java_client_deferred_encode_status_attributes(JNIEnv* env, jobject obj, } } -static jobject +jobject hyperdex_java_client_deferred_encode_status_count(JNIEnv* env, jobject obj, struct hyperdex_java_client_deferred* d) { jobject ret; diff --git a/bindings/java/org_hyperdex_client_Microtransaction.c b/bindings/java/org_hyperdex_client_Microtransaction.c index 8c8be11e..e07af117 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.c +++ b/bindings/java/org_hyperdex_client_Microtransaction.c @@ -225,6 +225,35 @@ hyperdex_java_uxact_deferred_encode_status(JNIEnv* env, jobject obj, struct hype } } + +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Microtransaction_async_1group_1commit(JNIEnv* env, jobject uxact, jstring checks) +{ + const struct hyperdex_client_attribute_check *chks; + size_t chks_sz; + struct hyperdex_client* client_ptr = hyperdex_uxact_get_client_ptr(env, uxact); + struct hyperdex_client_microtransaction *uxact_ptr = hyperdex_uxact_get_uxact_ptr(env, uxact); + jobject client = hyperdex_uxact_get_client(env, uxact); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, client); + struct hyperdex_java_client_deferred* o = hyperdex_uxact_get_deferred_ptr(env, uxact); + ERROR_CHECK(0); + + hyperdex_java_client_convert_predicates(env, client, o->arena, checks, &chks, &chks_sz); + o->encode_return = hyperdex_java_client_deferred_encode_status_count; + o->reqid = hyperdex_client_uxact_group_commit(client_ptr, uxact_ptr, chks, chks_sz, &o->count); + + (*env)->SetLongField(env, op, _deferred_ptr, (long)o); + + if (o->reqid < 0) + { + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client_ptr)); + return NULL; + } + (*env)->CallObjectMethod(env, client, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; +} + JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_async_1commit(JNIEnv* env, jobject uxact, jstring key) { diff --git a/bindings/java/org_hyperdex_client_Microtransaction.h b/bindings/java/org_hyperdex_client_Microtransaction.h index 7d3e4836..a35a74cc 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.h +++ b/bindings/java/org_hyperdex_client_Microtransaction.h @@ -39,6 +39,14 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction_in JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction_terminate (JNIEnv *, jclass); +/* + * Class: org_hyperdex_client_Microtransaction + * Method: async_group_commit + * Signature: (Ljava/util/Map;)Lorg/hyperdex/client/Deferred; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_async_1group_1commit + (JNIEnv *, jobject, jobject); + /* * Class: org_hyperdex_client_Microtransaction * Method: async_commit diff --git a/test/java/DataTypeDocument.java b/test/java/DataTypeDocument.java index 4ec3f693..279443a9 100644 --- a/test/java/DataTypeDocument.java +++ b/test/java/DataTypeDocument.java @@ -19,34 +19,34 @@ public void setUpHyperdexClient() throws Exception { @After public void destroyHyperdexClient() throws HyperDexClientException { - Map match_all = new HashMap(); + Map match_all = new HashMap<>(); c.group_del("kv", match_all); c = null; } @Test public void insertEmptyValue() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); Boolean res = c.put("kv", "k", attrs); assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", new Document("{}")); assertEquals(expected, get); } @Test public void insertEmptyDocument() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", new Document("{}")); Boolean res = c.put("kv", "k", attrs); assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", new Document("{}")); assertEquals(expected, get); @@ -69,17 +69,17 @@ public void insertNestedDocument() throws HyperDexClientException { @Test public void setField() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", new Document("{}")); c.put("kv", "k", attrs); - Map attrs2 = new HashMap(); + Map attrs2 = new HashMap<>(); attrs2.put("v.a", "xyz"); Boolean res = c.put("kv", "k", attrs2); assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); assert(get.get("v") instanceof Document); expected.put("v", new Document("{\"a\":\"xyz\"}")); assertEquals(expected, get); diff --git a/test/java/DataTypeInt.java b/test/java/DataTypeInt.java index 1e83938d..4185ba57 100755 --- a/test/java/DataTypeInt.java +++ b/test/java/DataTypeInt.java @@ -29,14 +29,14 @@ public void setUpHyperdexClient() throws Exception { @After public void destroyHyperdexClient() throws HyperDexClientException { - Map match_all = new HashMap(); + Map match_all = new HashMap<>(); c.group_del("kv", match_all); c = null; } @Test public void testInsertEmpty() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); Boolean res = c.put("kv", "k", attrs); assertTrue(res); @@ -47,9 +47,16 @@ public void testInsertEmpty() throws HyperDexClientException { assertEquals(expected, get); } + @Test(expected = HyperDexClientException.class) + public void testWrongTypeThrowsException() throws HyperDexClientException { + Map attrs = new HashMap<>(); + attrs.put("v", "Not-an-Int"); + c.put("kv", "k", attrs); + } + @Test public void testInsertOne() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", 1L); Boolean res = c.put("kv", "k", attrs); @@ -64,7 +71,7 @@ public void testInsertOne() throws HyperDexClientException { @Test public void testInsertZero() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", 0L); Boolean res = c.put("kv", "k", attrs); @@ -76,16 +83,29 @@ public void testInsertZero() throws HyperDexClientException { assertEquals(expected, get); } + + @Test + public void testDivideByZeroNotAllowed() throws HyperDexClientException { + Map attrs = new HashMap<>(); + attrs.put("v", 1L); + c.put("kv", "k", attrs); + + Map args = new HashMap<>(); + args.put("v", 0L); + + Boolean res = c.atomic_div("kv", "k", args); + assertFalse(args); + } @Test public void testNegativeValue() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", -1L); Boolean res = c.put("kv", "k", attrs); assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", -1L); assertEquals(expected, get); @@ -93,13 +113,13 @@ public void testNegativeValue() throws HyperDexClientException { @Test public void testInsertHugePositiveValue() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", 9223372036854775807L); Boolean res = c.put("kv", "k", attrs); assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", 9223372036854775807L); assertEquals(expected, get); @@ -107,13 +127,13 @@ public void testInsertHugePositiveValue() throws HyperDexClientException { @Test public void testInsertHugeNegativeValue() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", -9223372036854775807L); Boolean res = c.put("kv", "k", attrs); assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", -9223372036854775807L); assertEquals(expected, get); diff --git a/test/java/DataTypeString.java b/test/java/DataTypeString.java index b3f12a5c..49c37b13 100755 --- a/test/java/DataTypeString.java +++ b/test/java/DataTypeString.java @@ -29,14 +29,14 @@ public void setUpHyperdexClient() throws Exception { @After public void destroyHyperdexClient() throws HyperDexClientException { - Map match_all = new HashMap(); + Map match_all = new HashMap<>(); c.group_del("kv", match_all); c = null; } @Test public void insertEmptyValue() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); Boolean res = c.put("kv", "k", attrs); assertTrue(res); @@ -47,30 +47,37 @@ public void insertEmptyValue() throws HyperDexClientException { assertEquals(get, expected); } + @Test(expected = HyperDexClientException.class) + public void testWrongTypeThrowsException() throws HyperDexClientException { + Map attrs = new HashMap<>(); + attrs.put("v", 42); + c.put("kv", "k", attrs); + } + @Test public void insertString() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", "xxx"); Boolean res = c.put("kv", "k", attrs); assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", "xxx"); assertEquals(get, expected); } @Test public void insertBytes() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); byte[] bytes = {(byte) 0xde, (byte) 0xad, (byte) 0xbe, (byte) 0xef}; attrs.put("v", new ByteString(bytes)); Boolean res = c.put("kv", "k", attrs); assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", new ByteString(bytes)); assertEquals(get, expected); } diff --git a/test/java/Microtransactions.java b/test/java/Microtransactions.java index aad0e48e..2eb3d903 100644 --- a/test/java/Microtransactions.java +++ b/test/java/Microtransactions.java @@ -20,7 +20,7 @@ public void setUpHyperdexClient() throws Exception { @After public void destroyHyperdexClient() throws HyperDexClientException { - Map match_all = new HashMap(); + Map match_all = new HashMap<>(); c.group_del("kv", match_all); c = null; } @@ -28,7 +28,7 @@ public void destroyHyperdexClient() throws HyperDexClientException { @Test public void singleOperation() throws HyperDexClientException { Microtransaction xact = c.initMicrotransaction("kv"); - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", new Document("{}")); xact.put(attrs); @@ -36,7 +36,7 @@ public void singleOperation() throws HyperDexClientException { assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", new Document("{}")); assertEquals(expected, get); @@ -44,12 +44,12 @@ public void singleOperation() throws HyperDexClientException { @Test public void setField() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", new Document("{}")); c.put("kv", "k", attrs); Microtransaction xact = c.initMicrotransaction("kv"); - Map attrs2 = new HashMap(); + Map attrs2 = new HashMap<>(); attrs2.put("v.b", new Document("{\"x\":\"y\"}")); xact.put(attrs2); @@ -57,7 +57,7 @@ public void setField() throws HyperDexClientException { assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", new Document("{\"b\":{\"x\":\"y\"}}")); assertEquals(expected, get); @@ -65,12 +65,12 @@ public void setField() throws HyperDexClientException { @Test public void setTwoFields() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", new Document("{}")); c.put("kv", "k", attrs); Microtransaction xact = c.initMicrotransaction("kv"); - Map attrs2 = new HashMap(); + Map attrs2 = new HashMap<>(); attrs2.put("v.a", "c"); attrs2.put("v.b", new Document("{\"x\":\"y\"}")); xact.put(attrs2); @@ -79,23 +79,23 @@ public void setTwoFields() throws HyperDexClientException { assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", new Document("{\"a\":\"c\",\"b\":{\"x\":\"y\"}}")); assertEquals(expected, get); } - @Test + @Test public void setTwoFieldsIndependent() throws HyperDexClientException { - Map attrs = new HashMap(); + Map attrs = new HashMap<>(); attrs.put("v", new Document("{}")); c.put("kv", "k", attrs); Microtransaction xact = c.initMicrotransaction("kv"); - Map attrs2 = new HashMap(); + Map attrs2 = new HashMap<>(); attrs2.put("v.a", "c"); xact.put(attrs2); - Map attrs3 = new HashMap(); + Map attrs3 = new HashMap<>(); attrs3.put("v.b", new Document("{\"x\":\"y\"}")); xact.put(attrs3); @@ -103,11 +103,96 @@ public void setTwoFieldsIndependent() throws HyperDexClientException { assertTrue(res); Map get = c.get("kv", "k"); - Map expected = new HashMap(); + Map expected = new HashMap<>(); expected.put("v", new Document("{\"a\":\"c\",\"b\":{\"x\":\"y\"}}")); assertEquals(expected, get); } + + @Test + public void groupCommit() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", new Document("{\"x\":\"y\"}")); + c.put("kv", "k1", attrs); + c.put("kv", "k2", attrs); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs2 = new HashMap<>(); + attrs2.put("v.a", "c"); + xact.put(attrs2); + + Map checks = new HashMap<>(); + checks.put("v.x", "y"); + Long res = xact.group_commit(checks); + assertEquals(new Long(2), res); + + Map expected = new HashMap<>(); + expected.put("v", new Document("{\"a\":\"c\",\"x\":\"y\"}}")); + + Map get1 = c.get("kv", "k1"); + Map get2 = c.get("kv", "k2"); + + assertEquals(expected, get1); + assertEquals(expected, get2); + } + + @Test + public void groupCommitWithNoMatch() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", new Document("{\"x\":\"y\"}")); + c.put("kv", "k1", attrs); + c.put("kv", "k2", attrs); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs2 = new HashMap<>(); + attrs2.put("v.a", "c"); + xact.put(attrs2); + + Map checks = new HashMap<>(); + checks.put("v.x", "xxx"); + Long res = xact.group_commit(checks); + assertEquals(new Long(0), res); + + Map expected = new HashMap<>(); + expected.put("v", new Document("{\"x\":\"y\"}")); + + Map get1 = c.get("kv", "k1"); + Map get2 = c.get("kv", "k2"); + + assertEquals(expected, get1); + assertEquals(expected, get2); + } + + @Test + public void groupCommitWithOneMatch() throws HyperDexClientException { + Map attrs1 = new HashMap<>(); + attrs1.put("v", new Document("{\"x\":\"a\"}")); + c.put("kv", "k1", attrs1); + Map attrs2 = new HashMap<>(); + attrs2.put("v", new Document("{\"x\":\"b\"}")); + c.put("kv", "k2", attrs2); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs3 = new HashMap<>(); + attrs3.put("v.a", "c"); + xact.put(attrs3); + + Map checks = new HashMap<>(); + checks.put("v.x", "a"); + Long res = xact.group_commit(checks); + assertEquals(new Long(1), res); + + Map get1 = c.get("kv", "k1"); + Map expected1 = new HashMap<>(); + expected1.put("v", new Document("{\"x\":\"a\",\"a\":\"c\"}")); + + Map get2 = c.get("kv", "k2"); + Map expected2 = new HashMap<>(); + expected2.put("v", new Document("{\"x\":\"a\"}")); + + assertEquals(expected1, get1); + assertEquals(expected2, get2); + } } diff --git a/test/java/MultitypeMicrotransactions.java b/test/java/MultitypeMicrotransactions.java new file mode 100644 index 00000000..4edcab2e --- /dev/null +++ b/test/java/MultitypeMicrotransactions.java @@ -0,0 +1,76 @@ +import java.util.*; + +import org.hyperdex.client.Client; +import org.hyperdex.client.Document; +import org.hyperdex.client.Microtransaction; +import org.hyperdex.client.HyperDexClientException; + +import org.junit.*; +import static org.junit.Assert.* ; + +public class MultitypeMicrotransactions +{ + private Client c; + + @Before + public void setUpHyperdexClient() throws Exception { + c = new Client(System.getProperty("hyperdex_host"), + Integer.parseInt(System.getProperty("hyperdex_port"))); + } + + @After + public void destroyHyperdexClient() throws HyperDexClientException { + Map match_all = new HashMap<>(); + c.group_del("kv", match_all); + c = null; + } + + @Test + public void singleOperation() throws HyperDexClientException { + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs = new HashMap<>(); + attrs.put("i", new Long(42)); + // attrs.put("s", "fourty-two"); + attrs.put("f", new Double(4.2)); + xact.put(attrs); + + Boolean res = xact.commit("k"); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap<>(); + expected.put("i", new Long(42)); + // expected.put("s", "fourty-two"); + expected.put("f", new Double(4.2)); + + assertEquals(expected, get); + } + + @Test + public void independentOperations() throws HyperDexClientException { + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs1 = new HashMap<>(); + attrs1.put("i", new Long(42)); + xact.put(attrs1); + // Map attrs2 = new HashMap<>(); + // attrs2.put("s", "fourty-two"); + // xact.put(attrs2); + Map attrs3 = new HashMap<>(); + attrs3.put("f", new Double(4.2)); + xact.put(attrs3); + + Boolean res = xact.commit("k"); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap<>(); + expected.put("i", new Long(42)); + // expected.put("s", "fourty-two"); + expected.put("f", new Double(4.2)); + + assertEquals(expected, get); + } +} + + + diff --git a/test/sh/bindings.java.MultitypeMicrotransactions.sh b/test/sh/bindings.java.MultitypeMicrotransactions.sh new file mode 100755 index 00000000..7c640303 --- /dev/null +++ b/test/sh/bindings.java.MultitypeMicrotransactions.sh @@ -0,0 +1,6 @@ +#!/bin/sh +javac -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:/usr/share/java/junit4.jar -d "${HYPERDEX_BUILDDIR}"/test/java "${HYPERDEX_SRCDIR}"/test/java/MultitypeMicrotransactions.java + +python2 "${HYPERDEX_SRCDIR}"/test/runner.py --space="space kv key k attributes int i, float f" --daemons=1 -- \ + java -ea -Djava.library.path="${HYPERDEX_BUILDDIR}"/.libs:/usr/local/lib:/usr/local/lib64:/usr/lib:/usr/lib64:/u -Dhyperdex_host={HOST} -Dhyperdex_port={PORT} \ + -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:"${HYPERDEX_SRCDIR}"/test/java:/usr/share/java/junit4.jar org.junit.runner.JUnitCore MultitypeMicrotransactions From f35dc34a97f55e8a59d847591e10cd17a8ccf807 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Thu, 26 Feb 2015 17:36:45 -0500 Subject: [PATCH 26/28] Use bytestring in java tests --- .../java/org/hyperdex/client/ByteString.java | 29 ++++------- .../java/org/hyperdex/client/Document.java | 4 ++ bindings/java/org_hyperdex_client_Client.c | 5 +- test/java/DataTypeDocument.java | 9 ++++ test/java/DataTypeInt.java | 2 +- test/java/DataTypeString.java | 1 + test/java/MultitypeMicrotransactions.java | 50 ++++++++++++++++--- ...indings.java.MultitypeMicrotransactions.sh | 2 +- 8 files changed, 73 insertions(+), 29 deletions(-) diff --git a/bindings/java/org/hyperdex/client/ByteString.java b/bindings/java/org/hyperdex/client/ByteString.java index c10bb949..3c20b632 100644 --- a/bindings/java/org/hyperdex/client/ByteString.java +++ b/bindings/java/org/hyperdex/client/ByteString.java @@ -47,6 +47,16 @@ public ByteString(String str, String encoding) { this.bytes = str.getBytes(encoding); } + + public ByteString(String str) + { + try { + this.bytes = str.getBytes(defaultEncoding); + } catch(UnsupportedEncodingException e) { + // This should never happen. + throw new RuntimeException(e.getMessage()); + } + } public static ByteString wrap(byte[] bytes) { @@ -91,7 +101,7 @@ public String toString(String encoding) throws UnsupportedEncodingException { // Terminating NULL character is redundant in string representation - return decode(encoding).replace("\0", ""); + return decode(encoding);//.replace("\0", ""); } public static String toString(byte[] bytes, String encoding) @@ -155,25 +165,8 @@ public int compareTo(Object o) return compare(bytes,((ByteString)o).getBytes()); } - public boolean equals(String s) - { - try - { - return Arrays.equals(bytes, (new ByteString(s, defaultEncoding)).bytes); - } - catch(UnsupportedEncodingException e) - { - return false; - } - } - public boolean equals(Object o) { - if (o instanceof String) - { - return this.equals((String) o); - } - return Arrays.equals(bytes, ((ByteString)o).getBytes()); } diff --git a/bindings/java/org/hyperdex/client/Document.java b/bindings/java/org/hyperdex/client/Document.java index c9e8c228..c44cc4f8 100644 --- a/bindings/java/org/hyperdex/client/Document.java +++ b/bindings/java/org/hyperdex/client/Document.java @@ -31,6 +31,10 @@ public class Document { private String json; + public Document(ByteString json) { + this.json = json.toString(); + } + public Document(String json) { this.json = json; } diff --git a/bindings/java/org_hyperdex_client_Client.c b/bindings/java/org_hyperdex_client_Client.c index b22268b4..2ee7fff2 100644 --- a/bindings/java/org_hyperdex_client_Client.c +++ b/bindings/java/org_hyperdex_client_Client.c @@ -175,7 +175,7 @@ Java_org_hyperdex_client_Client_initialize(JNIEnv* env, jclass client) REF(_string, (*env)->FindClass(env, "java/lang/String")); /* cache class Document */ REF(_document, (*env)->FindClass(env, "org/hyperdex/client/Document")); - _document_init = (*env)->GetMethodID(env, _document, "", "(Ljava/lang/String;)V"); + _document_init = (*env)->GetMethodID(env, _document, "", "(Lorg/hyperdex/client/ByteString;)V"); _document_to_string = (*env)->GetMethodID(env, _document, "toString", "()Ljava/lang/String;"); /* cache class ByteString */ REF(_byte_string, (*env)->FindClass(env, "org/hyperdex/client/ByteString")); @@ -1395,8 +1395,7 @@ hyperdex_java_client_build_attribute(JNIEnv* env, case HYPERDATATYPE_DOCUMENT: BUILD_STRING(tmp, attr->value, attr->value_sz); // Build document from string - tmp2 = (*env)->CallObjectMethod(env, tmp, _byte_string_to_string); - return (*env)->NewObject(env, _document, _document_init, tmp2); + return (*env)->NewObject(env, _document, _document_init, tmp); case HYPERDATATYPE_LIST_STRING: hyperdex_ds_iterator_init(&iter, attr->datatype, attr->value, attr->value_sz); ret = (*env)->NewObject(env, _array_list, _array_list_init); diff --git a/test/java/DataTypeDocument.java b/test/java/DataTypeDocument.java index 279443a9..2d68f61c 100644 --- a/test/java/DataTypeDocument.java +++ b/test/java/DataTypeDocument.java @@ -24,6 +24,15 @@ public void destroyHyperdexClient() throws HyperDexClientException { c = null; } + @Test + public void testToString() { + String str = "{\"a\":123,\"b\":\"x\"}"; + + Document doc = new Document(str); + + assertEquals(str, doc.toString()); + } + @Test public void insertEmptyValue() throws HyperDexClientException { Map attrs = new HashMap<>(); diff --git a/test/java/DataTypeInt.java b/test/java/DataTypeInt.java index 4185ba57..6b95416b 100755 --- a/test/java/DataTypeInt.java +++ b/test/java/DataTypeInt.java @@ -94,7 +94,7 @@ public void testDivideByZeroNotAllowed() throws HyperDexClientException { args.put("v", 0L); Boolean res = c.atomic_div("kv", "k", args); - assertFalse(args); + assertFalse(res); } @Test diff --git a/test/java/DataTypeString.java b/test/java/DataTypeString.java index 49c37b13..4cda2b85 100755 --- a/test/java/DataTypeString.java +++ b/test/java/DataTypeString.java @@ -89,6 +89,7 @@ public void correctByteString() { ByteString bstring = new ByteString(original.getBytes()); String result = bstring.toString(); + assertEquals(original, bstring); assertEquals(original, result); } } diff --git a/test/java/MultitypeMicrotransactions.java b/test/java/MultitypeMicrotransactions.java index 4edcab2e..b302b8d4 100644 --- a/test/java/MultitypeMicrotransactions.java +++ b/test/java/MultitypeMicrotransactions.java @@ -2,6 +2,7 @@ import org.hyperdex.client.Client; import org.hyperdex.client.Document; +import org.hyperdex.client.ByteString; import org.hyperdex.client.Microtransaction; import org.hyperdex.client.HyperDexClientException; @@ -25,12 +26,49 @@ public void destroyHyperdexClient() throws HyperDexClientException { c = null; } + @Test + public void insertEmptyValue() throws HyperDexClientException { + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs = new HashMap<>(); + xact.put(attrs); + + Boolean res = xact.commit("k"); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap<>(); + expected.put("i", new Long(0)); + expected.put("s", new ByteString("")); + expected.put("f", new Double(0)); + + assertEquals(expected, get); + } + + @Test + public void singleField() throws HyperDexClientException { + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs = new HashMap<>(); + attrs.put("s", "fourty-two"); + xact.put(attrs); + + Boolean res = xact.commit("k"); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap<>(); + expected.put("i", new Long(0)); + expected.put("s", "fourty-two"); + expected.put("f", new Double(0)); + + assertEquals(expected, get); + } + @Test public void singleOperation() throws HyperDexClientException { Microtransaction xact = c.initMicrotransaction("kv"); Map attrs = new HashMap<>(); attrs.put("i", new Long(42)); - // attrs.put("s", "fourty-two"); + attrs.put("s", "fourty-two"); attrs.put("f", new Double(4.2)); xact.put(attrs); @@ -40,7 +78,7 @@ public void singleOperation() throws HyperDexClientException { Map get = c.get("kv", "k"); Map expected = new HashMap<>(); expected.put("i", new Long(42)); - // expected.put("s", "fourty-two"); + expected.put("s", new ByteString("fourty-two")); expected.put("f", new Double(4.2)); assertEquals(expected, get); @@ -52,9 +90,9 @@ public void independentOperations() throws HyperDexClientException { Map attrs1 = new HashMap<>(); attrs1.put("i", new Long(42)); xact.put(attrs1); - // Map attrs2 = new HashMap<>(); - // attrs2.put("s", "fourty-two"); - // xact.put(attrs2); + Map attrs2 = new HashMap<>(); + attrs2.put("s", "fourty-two"); + xact.put(attrs2); Map attrs3 = new HashMap<>(); attrs3.put("f", new Double(4.2)); xact.put(attrs3); @@ -65,7 +103,7 @@ public void independentOperations() throws HyperDexClientException { Map get = c.get("kv", "k"); Map expected = new HashMap<>(); expected.put("i", new Long(42)); - // expected.put("s", "fourty-two"); + expected.put("s", new ByteString("fourty-two")); expected.put("f", new Double(4.2)); assertEquals(expected, get); diff --git a/test/sh/bindings.java.MultitypeMicrotransactions.sh b/test/sh/bindings.java.MultitypeMicrotransactions.sh index 7c640303..95c91811 100755 --- a/test/sh/bindings.java.MultitypeMicrotransactions.sh +++ b/test/sh/bindings.java.MultitypeMicrotransactions.sh @@ -1,6 +1,6 @@ #!/bin/sh javac -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:/usr/share/java/junit4.jar -d "${HYPERDEX_BUILDDIR}"/test/java "${HYPERDEX_SRCDIR}"/test/java/MultitypeMicrotransactions.java -python2 "${HYPERDEX_SRCDIR}"/test/runner.py --space="space kv key k attributes int i, float f" --daemons=1 -- \ +python2 "${HYPERDEX_SRCDIR}"/test/runner.py --space="space kv key k attributes int i, string s, float f" --daemons=1 -- \ java -ea -Djava.library.path="${HYPERDEX_BUILDDIR}"/.libs:/usr/local/lib:/usr/local/lib64:/usr/lib:/usr/lib64:/u -Dhyperdex_host={HOST} -Dhyperdex_port={PORT} \ -cp .:"${HYPERDEX_SRCDIR}"/bindings/java/:"${HYPERDEX_SRCDIR}"/test/java:/usr/share/java/junit4.jar org.junit.runner.JUnitCore MultitypeMicrotransactions From 7ebe61f9c900f9a4e1955f18271b9045669e8027 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Fri, 27 Feb 2015 16:30:43 -0500 Subject: [PATCH 27/28] Fixed all tests --- bindings/java.py | 12 ++- bindings/java/client-util.h | 2 + .../java/org/hyperdex/client/ByteString.java | 10 +- .../org/hyperdex/client/Microtransaction.java | 12 ++- bindings/java/org_hyperdex_client_Client.c | 7 +- .../org_hyperdex_client_Microtransaction.c | 67 +++++++------ .../org_hyperdex_client_Microtransaction.h | 16 +++- test/java/DataTypeDocument.java | 78 ++++++++++++++++ test/java/DataTypeString.java | 49 +++++++++- test/java/Microtransactions.java | 93 ++++++++++++++++++- test/java/MultitypeMicrotransactions.java | 76 ++++++++++++++- test/python/Microtransactions.py | 7 ++ 12 files changed, 375 insertions(+), 54 deletions(-) diff --git a/bindings/java.py b/bindings/java.py index 6c3e5a80..d091753b 100644 --- a/bindings/java.py +++ b/bindings/java.py @@ -364,17 +364,23 @@ def generate_client_doc(): private static native void initialize(); private static native void terminate(); + public Boolean commit(String key) throws HyperDexClientException { + return (Boolean) async_commit(key).waitForIt(); + } + + public native Deferred async_commit(String key) throws HyperDexClientException; + public Long group_commit(Map checks) throws HyperDexClientException { return (Long) async_group_commit(checks).waitForIt(); } public native Deferred async_group_commit(Map checks) throws HyperDexClientException; - public Boolean commit(String key) throws HyperDexClientException { - return (Boolean) async_commit(key).waitForIt(); + public Boolean cond_commit(String key, Map checks) throws HyperDexClientException { + return (Boolean) async_cond_commit(key, checks).waitForIt(); } - public native Deferred async_commit(String key) throws HyperDexClientException; + public native Deferred async_cond_commit(String key, Map checks) throws HyperDexClientException; ''' JAVA_HEAD = ''' diff --git a/bindings/java/client-util.h b/bindings/java/client-util.h index 5aba1b5e..51ffbc78 100644 --- a/bindings/java/client-util.h +++ b/bindings/java/client-util.h @@ -82,5 +82,7 @@ struct hyperdex_java_client_deferred jobject hyperdex_java_client_deferred_encode_status_count(JNIEnv* env, jobject obj, struct hyperdex_java_client_deferred* d); +jobject +hyperdex_java_client_deferred_encode_status(JNIEnv* env, jobject obj, struct hyperdex_java_client_deferred* d); #endif diff --git a/bindings/java/org/hyperdex/client/ByteString.java b/bindings/java/org/hyperdex/client/ByteString.java index 3c20b632..26566b5d 100644 --- a/bindings/java/org/hyperdex/client/ByteString.java +++ b/bindings/java/org/hyperdex/client/ByteString.java @@ -100,8 +100,8 @@ public String decode(String encoding) public String toString(String encoding) throws UnsupportedEncodingException { - // Terminating NULL character is redundant in string representation - return decode(encoding);//.replace("\0", ""); + // Remove trailing NULL character + return decode(encoding).replace("\0", ""); } public static String toString(byte[] bytes, String encoding) @@ -167,7 +167,11 @@ public int compareTo(Object o) public boolean equals(Object o) { - return Arrays.equals(bytes, ((ByteString)o).getBytes()); + if(o instanceof ByteString) { + return Arrays.equals(bytes, ((ByteString)o).getBytes()); + } else { + return false; + } } public int hashCode() diff --git a/bindings/java/org/hyperdex/client/Microtransaction.java b/bindings/java/org/hyperdex/client/Microtransaction.java index b898079d..59544df9 100644 --- a/bindings/java/org/hyperdex/client/Microtransaction.java +++ b/bindings/java/org/hyperdex/client/Microtransaction.java @@ -58,17 +58,23 @@ protected Microtransaction(Client client, String space) private static native void initialize(); private static native void terminate(); + public Boolean commit(String key) throws HyperDexClientException { + return (Boolean) async_commit(key).waitForIt(); + } + + public native Deferred async_commit(String key) throws HyperDexClientException; + public Long group_commit(Map checks) throws HyperDexClientException { return (Long) async_group_commit(checks).waitForIt(); } public native Deferred async_group_commit(Map checks) throws HyperDexClientException; - public Boolean commit(String key) throws HyperDexClientException { - return (Boolean) async_commit(key).waitForIt(); + public Boolean cond_commit(String key, Map checks) throws HyperDexClientException { + return (Boolean) async_cond_commit(key, checks).waitForIt(); } - public native Deferred async_commit(String key) throws HyperDexClientException; + public native Deferred async_cond_commit(String key, Map checks) throws HyperDexClientException; public native int put(Map attrs) throws HyperDexClientException; public native int atomic_add(Map attrs) throws HyperDexClientException; diff --git a/bindings/java/org_hyperdex_client_Client.c b/bindings/java/org_hyperdex_client_Client.c index 2ee7fff2..2f60143a 100644 --- a/bindings/java/org_hyperdex_client_Client.c +++ b/bindings/java/org_hyperdex_client_Client.c @@ -1739,10 +1739,8 @@ hyperdex_java_client_build_attributes(JNIEnv* env, JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Deferred__1create(JNIEnv* env, jobject deferred) { - jlong lptr; struct hyperdex_java_client_deferred* ptr; - lptr = (*env)->GetLongField(env, deferred, _deferred_ptr); ERROR_CHECK_VOID(); ptr = malloc(sizeof(struct hyperdex_java_client_deferred)); @@ -1753,8 +1751,7 @@ Java_org_hyperdex_client_Deferred__1create(JNIEnv* env, jobject deferred) } memset(ptr, 0, sizeof(struct hyperdex_java_client_deferred)); - lptr = (long) ptr; - (*env)->SetLongField(env, deferred, _deferred_ptr, lptr); + (*env)->SetLongField(env, deferred, _deferred_ptr, (long)ptr); ERROR_CHECK_VOID(); ptr->arena = hyperdex_ds_arena_create(); @@ -1843,7 +1840,7 @@ Java_org_hyperdex_client_Deferred_callback(JNIEnv* env, jobject obj) ERROR_CHECK_VOID(); } -static jobject +jobject hyperdex_java_client_deferred_encode_status(JNIEnv* env, jobject obj, struct hyperdex_java_client_deferred* d) { jobject ret; diff --git a/bindings/java/org_hyperdex_client_Microtransaction.c b/bindings/java/org_hyperdex_client_Microtransaction.c index e07af117..e34371c9 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.c +++ b/bindings/java/org_hyperdex_client_Microtransaction.c @@ -180,8 +180,18 @@ Java_org_hyperdex_client_Microtransaction__1create(JNIEnv* env, jobject uxact, j struct hyperdex_java_client_deferred *deferred; deferred = (struct hyperdex_java_client_deferred*)malloc(sizeof(struct hyperdex_java_client_deferred)); + memset(deferred, 0, sizeof(struct hyperdex_java_client_deferred)); + deferred->arena = hyperdex_ds_arena_create(); - deferred->status = HYPERDEX_CLIENT_SUCCESS; + + if (!deferred->arena) + { + /* all other resources are caught by the finalizer? */ + hyperdex_java_out_of_memory(env); + return; + } + + deferred->status = HYPERDEX_CLIENT_GARBAGE; space = (*env)->GetStringUTFChars(env, _space, NULL); @@ -192,42 +202,39 @@ Java_org_hyperdex_client_Microtransaction__1create(JNIEnv* env, jobject uxact, j (*env)->SetLongField(env, uxact, _uxact_deferred_ptr, (long)deferred); } -static jobject -hyperdex_java_uxact_deferred_encode_status(JNIEnv* env, jobject obj, struct hyperdex_java_client_deferred* d) +JNIEXPORT HYPERDEX_API jobject JNICALL +Java_org_hyperdex_client_Microtransaction_async_1cond_1commit(JNIEnv* env, jobject uxact, jstring jkey, jobject checks) { - jobject ret; - jobject client_obj; - struct hyperdex_client* client; + const char* key; + size_t key_sz; + const struct hyperdex_client_attribute_check *chks; + size_t chks_sz; + struct hyperdex_client* client_ptr = hyperdex_uxact_get_client_ptr(env, uxact); + struct hyperdex_client_microtransaction *uxact_ptr = hyperdex_uxact_get_uxact_ptr(env, uxact); + jobject client = hyperdex_uxact_get_client(env, uxact); + jobject op = (*env)->NewObject(env, _deferred, _deferred_init, client); + struct hyperdex_java_client_deferred* o = hyperdex_uxact_get_deferred_ptr(env, uxact); + ERROR_CHECK(0); - if (d->status == HYPERDEX_CLIENT_SUCCESS) - { - ret = (*env)->NewObject(env, _boolean, _boolean_init, JNI_TRUE); - ERROR_CHECK(0); - return ret; - } - else if (d->status == HYPERDEX_CLIENT_NOTFOUND) - { - return NULL; - } - else if (d->status == HYPERDEX_CLIENT_CMPFAIL) - { - ret = (*env)->NewObject(env, _boolean, _boolean_init, JNI_FALSE); - ERROR_CHECK(0); - return ret; - } - else + hyperdex_java_client_convert_key(env, client, o->arena, jkey, &key, &key_sz); + hyperdex_java_client_convert_predicates(env, client, o->arena, checks, &chks, &chks_sz); + o->encode_return = hyperdex_java_client_deferred_encode_status; + o->reqid = hyperdex_client_uxact_cond_commit(client_ptr, uxact_ptr, key, key_sz, chks, chks_sz); + + (*env)->SetLongField(env, op, _deferred_ptr, (long)o); + + if (o->reqid < 0) { - client_obj = (*env)->GetObjectField(env, obj, _deferred_c); - ERROR_CHECK(0); - client = hyperdex_client_get_client_ptr(env, client_obj); - hyperdex_java_client_throw_exception(env, d->status, hyperdex_client_error_message(client)); + hyperdex_java_client_throw_exception(env, o->status, hyperdex_client_error_message(client_ptr)); return NULL; } + (*env)->CallObjectMethod(env, client, _client_add_op, o->reqid, op); + ERROR_CHECK(0); + return op; } - JNIEXPORT HYPERDEX_API jobject JNICALL -Java_org_hyperdex_client_Microtransaction_async_1group_1commit(JNIEnv* env, jobject uxact, jstring checks) +Java_org_hyperdex_client_Microtransaction_async_1group_1commit(JNIEnv* env, jobject uxact, jobject checks) { const struct hyperdex_client_attribute_check *chks; size_t chks_sz; @@ -267,7 +274,7 @@ Java_org_hyperdex_client_Microtransaction_async_1commit(JNIEnv* env, jobject uxa ERROR_CHECK(0); hyperdex_java_client_convert_key(env, client, o->arena, key, &in_key, &in_key_sz); - o->encode_return = hyperdex_java_uxact_deferred_encode_status; + o->encode_return = hyperdex_java_client_deferred_encode_status; o->reqid = hyperdex_client_uxact_commit(client_ptr, uxact_ptr, in_key, in_key_sz); (*env)->SetLongField(env, op, _deferred_ptr, (long)o); diff --git a/bindings/java/org_hyperdex_client_Microtransaction.h b/bindings/java/org_hyperdex_client_Microtransaction.h index a35a74cc..9b24206f 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.h +++ b/bindings/java/org_hyperdex_client_Microtransaction.h @@ -39,6 +39,14 @@ JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction_in JNIEXPORT HYPERDEX_API void JNICALL Java_org_hyperdex_client_Microtransaction_terminate (JNIEnv *, jclass); +/* + * Class: org_hyperdex_client_Microtransaction + * Method: async_commit + * Signature: (Ljava/lang/String;)Lorg/hyperdex/client/Deferred; + */ +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_async_1commit + (JNIEnv *, jobject, jstring); + /* * Class: org_hyperdex_client_Microtransaction * Method: async_group_commit @@ -49,11 +57,11 @@ JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction /* * Class: org_hyperdex_client_Microtransaction - * Method: async_commit - * Signature: (Ljava/lang/String;)Lorg/hyperdex/client/Deferred; + * Method: async_cond_commit + * Signature: (Ljava/lang/String;Ljava/util/Map;)Lorg/hyperdex/client/Deferred; */ -JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_async_1commit - (JNIEnv *, jobject, jstring); +JNIEXPORT HYPERDEX_API jobject JNICALL Java_org_hyperdex_client_Microtransaction_async_1cond_1commit + (JNIEnv *, jobject, jstring, jobject); /* * Class: org_hyperdex_client_Microtransaction diff --git a/test/java/DataTypeDocument.java b/test/java/DataTypeDocument.java index 2d68f61c..bb897572 100644 --- a/test/java/DataTypeDocument.java +++ b/test/java/DataTypeDocument.java @@ -93,5 +93,83 @@ public void setField() throws HyperDexClientException { expected.put("v", new Document("{\"a\":\"xyz\"}")); assertEquals(expected, get); } + + @Test + public void setFieldWithDocument() throws HyperDexClientException { + Map attrs = new HashMap<>(); + attrs.put("v", new Document("{}")); + c.put("kv", "k", attrs); + + Map attrs2 = new HashMap<>(); + attrs2.put("v.a", new Document("{\"b\":\"xyz\"}")); + Boolean res = c.put("kv", "k", attrs2); + assertTrue(res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap<>(); + expected.put("v", new Document("{\"a\":{\"b\":\"xyz\"}}")); + + assertEquals(expected, get); + } + + @Test + public void groupUpdateWithIntegerMatch() throws HyperDexClientException { + Map attrs = new HashMap<>(); + attrs.put("v", new Document("{\"a\":\"xxx\",\"b\":1}")); + c.put("kv", "k", attrs); + + Map checks = new HashMap<>(); + checks.put("v.b", 1); + Map mod = new HashMap<>(); + mod.put("v.a", "yy"); + + Long res = c.group_string_append("kv", checks, mod); + assertEquals(new Long(1), res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap<>(); + expected.put("v", new Document("{\"a\":\"xxxyy\",\"b\":1}")); + assertEquals(get, expected); + } + + @Test + public void groupUpdateWithMatch() throws HyperDexClientException { + Map attrs = new HashMap<>(); + attrs.put("v", new Document("{\"a\":\"xxx\"}")); + c.put("kv", "k", attrs); + + Map checks = new HashMap<>(); + checks.put("v.a", "xxx"); + Map mod = new HashMap<>(); + mod.put("v.a", "yy"); + + Long res = c.group_string_append("kv", checks, mod); + assertEquals(new Long(1), res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap<>(); + expected.put("v", new Document("{\"a\":\"xxxyy\"}")); + assertEquals(get, expected); + } + + @Test + public void groupUpdateWithoutMatch() throws HyperDexClientException { + Map attrs = new HashMap<>(); + attrs.put("v", new Document("{\"a\":\"xxx\"}")); + c.put("kv", "k", attrs); + + Map checks = new HashMap<>(); + checks.put("v.a", "xx"); + Map mod = new HashMap<>(); + mod.put("v.a", "yy"); + + Long res = c.group_string_append("kv", checks, mod); + assertEquals(new Long(0), res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap<>(); + expected.put("v", new Document("{\"a\":\"xxx\"}")); + assertEquals(get, expected); + } } diff --git a/test/java/DataTypeString.java b/test/java/DataTypeString.java index 4cda2b85..9b4aa8f0 100755 --- a/test/java/DataTypeString.java +++ b/test/java/DataTypeString.java @@ -43,7 +43,7 @@ public void insertEmptyValue() throws HyperDexClientException { Map get = c.get("kv", "k"); Map expected = new HashMap(); - expected.put("v", ""); + expected.put("v", new ByteString("")); assertEquals(get, expected); } @@ -64,7 +64,47 @@ public void insertString() throws HyperDexClientException { Map get = c.get("kv", "k"); Map expected = new HashMap<>(); - expected.put("v", "xxx"); + expected.put("v", new ByteString("xxx")); + assertEquals(get, expected); + } + + @Test + public void groupUpdateWithMatch() throws HyperDexClientException { + Map attrs = new HashMap<>(); + attrs.put("v", "xxx"); + c.put("kv", "k", attrs); + + Map checks = new HashMap<>(); + checks.put("v", "xxx"); + Map mod = new HashMap<>(); + mod.put("v", "yy"); + + Long res = c.group_string_append("kv", checks, mod); + assertEquals(new Long(1), res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap<>(); + expected.put("v", new ByteString("xxxyy")); + assertEquals(get, expected); + } + + @Test + public void groupUpdateWithoutMatch() throws HyperDexClientException { + Map attrs = new HashMap<>(); + attrs.put("v", "xxx"); + c.put("kv", "k", attrs); + + Map checks = new HashMap<>(); + checks.put("v", "xx"); + Map mod = new HashMap<>(); + mod.put("v", "yy"); + + Long res = c.group_string_append("kv", checks, mod); + assertEquals(new Long(0), res); + + Map get = c.get("kv", "k"); + Map expected = new HashMap<>(); + expected.put("v", new ByteString("xxx")); assertEquals(get, expected); } @@ -89,7 +129,10 @@ public void correctByteString() { ByteString bstring = new ByteString(original.getBytes()); String result = bstring.toString(); - assertEquals(original, bstring); + // Only change equals behaviour if it works in both directions + assertNotEquals(original, bstring); + assertNotEquals(bstring, original); + assertEquals(original, result); } } diff --git a/test/java/Microtransactions.java b/test/java/Microtransactions.java index 2eb3d903..616b9eec 100644 --- a/test/java/Microtransactions.java +++ b/test/java/Microtransactions.java @@ -127,7 +127,7 @@ public void groupCommit() throws HyperDexClientException { assertEquals(new Long(2), res); Map expected = new HashMap<>(); - expected.put("v", new Document("{\"a\":\"c\",\"x\":\"y\"}}")); + expected.put("v", new Document("{\"x\":\"y\",\"a\":\"c\"}")); Map get1 = c.get("kv", "k1"); Map get2 = c.get("kv", "k2"); @@ -136,6 +136,64 @@ public void groupCommit() throws HyperDexClientException { assertEquals(expected, get2); } + @Test + public void condCommitWithMatch() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", new Document("{\"x\":\"y\"}")); + c.put("kv", "k1", attrs); + c.put("kv", "k2", attrs); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs2 = new HashMap<>(); + attrs2.put("v.a", "c"); + xact.put(attrs2); + + Map checks = new HashMap<>(); + checks.put("v.x", "y"); + Boolean res = xact.cond_commit("k1", checks); + assertEquals(true, res); + + Map get1 = c.get("kv", "k1"); + Map expected1 = new HashMap<>(); + expected1.put("v", new Document("{\"x\":\"y\",\"a\":\"c\"}")); + + Map get2 = c.get("kv", "k2"); + Map expected2 = new HashMap<>(); + expected2.put("v", new Document("{\"x\":\"y\"}")); + + assertEquals(expected1, get1); + assertEquals(expected2, get2); + } + + @Test + public void condCommitWithoutMatch() throws HyperDexClientException { + Map attrs = new HashMap(); + attrs.put("v", new Document("{\"x\":\"y\"}")); + c.put("kv", "k1", attrs); + c.put("kv", "k2", attrs); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs2 = new HashMap<>(); + attrs2.put("v.a", "c"); + xact.put(attrs2); + + Map checks = new HashMap<>(); + checks.put("v.x", "z"); + Boolean res = xact.cond_commit("k1", checks); + assertEquals(false, res); + + Map get1 = c.get("kv", "k1"); + Map expected1 = new HashMap<>(); + expected1.put("v", new Document("{\"x\":\"y\"}")); + + Map get2 = c.get("kv", "k2"); + Map expected2 = new HashMap<>(); + expected2.put("v", new Document("{\"x\":\"y\"}")); + + assertEquals(expected1, get1); + assertEquals(expected2, get2); + } + @Test public void groupCommitWithNoMatch() throws HyperDexClientException { Map attrs = new HashMap(); @@ -188,7 +246,38 @@ public void groupCommitWithOneMatch() throws HyperDexClientException { Map get2 = c.get("kv", "k2"); Map expected2 = new HashMap<>(); - expected2.put("v", new Document("{\"x\":\"a\"}")); + expected2.put("v", new Document("{\"x\":\"b\"}")); + + assertEquals(expected1, get1); + assertEquals(expected2, get2); + } + + @Test + public void groupCommitWithOneNumericMatch() throws HyperDexClientException { + Map attrs1 = new HashMap<>(); + attrs1.put("v", new Document("{\"x\":1}")); + c.put("kv", "k1", attrs1); + Map attrs2 = new HashMap<>(); + attrs2.put("v", new Document("{\"x\":2}")); + c.put("kv", "k2", attrs2); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs3 = new HashMap<>(); + attrs3.put("v.a", "c"); + xact.put(attrs3); + + Map checks = new HashMap<>(); + checks.put("v.x", new Long(1)); + Long res = xact.group_commit(checks); + assertEquals(new Long(1), res); + + Map get1 = c.get("kv", "k1"); + Map expected1 = new HashMap<>(); + expected1.put("v", new Document("{\"x\":1,\"a\":\"c\"}")); + + Map get2 = c.get("kv", "k2"); + Map expected2 = new HashMap<>(); + expected2.put("v", new Document("{\"x\":2}")); assertEquals(expected1, get1); assertEquals(expected2, get2); diff --git a/test/java/MultitypeMicrotransactions.java b/test/java/MultitypeMicrotransactions.java index b302b8d4..818540fa 100644 --- a/test/java/MultitypeMicrotransactions.java +++ b/test/java/MultitypeMicrotransactions.java @@ -57,7 +57,7 @@ public void singleField() throws HyperDexClientException { Map get = c.get("kv", "k"); Map expected = new HashMap<>(); expected.put("i", new Long(0)); - expected.put("s", "fourty-two"); + expected.put("s", new ByteString("fourty-two")); expected.put("f", new Double(0)); assertEquals(expected, get); @@ -108,6 +108,80 @@ public void independentOperations() throws HyperDexClientException { assertEquals(expected, get); } + + @Test + public void groupCommitWithOneMatch() throws HyperDexClientException { + Map attrs1 = new HashMap<>(); + attrs1.put("i", new Long(42)); + attrs1.put("s", "fourty-two"); + attrs1.put("f", new Double(4.2)); + c.put("kv", "k1", attrs1); + Map attrs2 = new HashMap<>(); + attrs2.put("i", new Long(45)); + attrs2.put("s", "fourty-five"); + attrs2.put("f", new Double(4.2)); + c.put("kv", "k2", attrs2); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs3 = new HashMap<>(); + attrs3.put("f", new Double(0)); + xact.put(attrs3); + + Map checks = new HashMap<>(); + checks.put("s", "fourty-two"); + Long res = xact.group_commit(checks); + assertEquals(new Long(1), res); + + Map expected1 = new HashMap<>(); + expected1.put("i", new Long(42)); + expected1.put("s", new ByteString("fourty-two")); + expected1.put("f", new Double(0)); + + Map expected2 = new HashMap<>(); + expected2.put("i", new Long(45)); + expected2.put("s", new ByteString("fourty-five")); + expected2.put("f", new Double(4.2)); + + assertEquals(expected1, c.get("kv", "k1")); + assertEquals(expected2, c.get("kv", "k2")); + } + + @Test + public void groupCommitWithOneNumericMatch() throws HyperDexClientException { + Map attrs1 = new HashMap<>(); + attrs1.put("i", new Long(42)); + attrs1.put("s", "fourty-two"); + attrs1.put("f", new Double(4.2)); + c.put("kv", "k1", attrs1); + Map attrs2 = new HashMap<>(); + attrs2.put("i", new Long(45)); + attrs2.put("s", "fourty-five"); + attrs2.put("f", new Double(4.2)); + c.put("kv", "k2", attrs2); + + Microtransaction xact = c.initMicrotransaction("kv"); + Map attrs3 = new HashMap<>(); + attrs3.put("f", new Double(0)); + xact.put(attrs3); + + Map checks = new HashMap<>(); + checks.put("i", 42); + Long res = xact.group_commit(checks); + assertEquals(new Long(1), res); + + Map expected1 = new HashMap<>(); + expected1.put("i", new Long(42)); + expected1.put("s", new ByteString("fourty-two")); + expected1.put("f", new Double(0)); + + Map expected2 = new HashMap<>(); + expected2.put("i", new Long(45)); + expected2.put("s", new ByteString("fourty-five")); + expected2.put("f", new Double(4.2)); + + assertEquals(expected1, c.get("kv", "k1")); + assertEquals(expected2, c.get("kv", "k2")); + } } diff --git a/test/python/Microtransactions.py b/test/python/Microtransactions.py index 59e1b528..e9fb6bd9 100644 --- a/test/python/Microtransactions.py +++ b/test/python/Microtransactions.py @@ -15,6 +15,13 @@ tx.commit('k1') assertEquals(c.get('kv', 'k1')['v'], Document({'a' : 1, 'b' : 2, 'c' : 3})) +assertTrue(c.put('kv', 'k1', {'v' : Document({})})) +tx = c.microtransaction_init('kv') +tx.put({'v.b' : 2}) +tx.put({'v.c' : Document({'x' : 'y'})}) +tx.commit('k1') +assertEquals(c.get('kv', 'k1')['v'], Document({'b' : 2, 'c' : {'x' : 'y'}})) + assertTrue(c.put('kv', 'k2', {'v' : Document({'a' : 1})})) tx = c.microtransaction_init('kv') tx.atomic_add({'v.a' : 2}) From 58e36c7c3238a3f679c0f9507254d23ee2d9e857 Mon Sep 17 00:00:00 2001 From: Kai Mast Date: Fri, 27 Feb 2015 18:02:08 -0500 Subject: [PATCH 28/28] Added min/max for microtransactions --- bindings/__init__.py | 2 + .../org/hyperdex/client/Microtransaction.java | 4 ++ ...rdex_client_Microtransaction.definitions.c | 36 +++++++++++++ .../org_hyperdex_client_Microtransaction.h | 16 ++++++ bindings/python/hyperdex/client.pyx | 18 +++++++ client/c.cc | 28 ++++++++++ doc/c/client/ops.tex | 52 +++++++++++++++++++ include/hyperdex/client.h | 10 ++++ 8 files changed, 166 insertions(+) diff --git a/bindings/__init__.py b/bindings/__init__.py index 3f10c00e..8fbe8a15 100644 --- a/bindings/__init__.py +++ b/bindings/__init__.py @@ -230,9 +230,11 @@ def __init__(self, name, form, args_in, args_out): Method('map_atomic_min', AsyncCall, (SpaceName, Key, MapAttributes), (Status,)), Method('cond_map_atomic_min', AsyncCall, (SpaceName, Key, Predicates, MapAttributes), (Status,)), Method('group_map_atomic_min', AsyncCall, (SpaceName, Predicates, MapAttributes), (Status, Count)), + Method('uxact_atomic_min', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('map_atomic_max', AsyncCall, (SpaceName, Key, MapAttributes), (Status,)), Method('cond_map_atomic_max', AsyncCall, (SpaceName, Key, Predicates, MapAttributes), (Status,)), Method('group_map_atomic_max', AsyncCall, (SpaceName, Predicates, MapAttributes), (Status, Count)), + Method('uxact_atomic_max', MicrotransactionCall, (Microtransaction, Attributes), ()), Method('search', Iterator, (SpaceName, Predicates), (Status, Attributes)), Method('search_describe', AsyncCall, (SpaceName, Predicates), (Status, Description)), Method('sorted_search', Iterator, (SpaceName, Predicates, SortBy, Limit, MaxMin), (Status, Attributes)), diff --git a/bindings/java/org/hyperdex/client/Microtransaction.java b/bindings/java/org/hyperdex/client/Microtransaction.java index 59544df9..abf76695 100644 --- a/bindings/java/org/hyperdex/client/Microtransaction.java +++ b/bindings/java/org/hyperdex/client/Microtransaction.java @@ -100,4 +100,8 @@ public Boolean cond_commit(String key, Map checks) throws HyperDe public native int document_rename(Map attrs) throws HyperDexClientException; public native int document_unset(Map attrs) throws HyperDexClientException; + + public native int atomic_min(Map attrs) throws HyperDexClientException; + + public native int atomic_max(Map attrs) throws HyperDexClientException; } diff --git a/bindings/java/org_hyperdex_client_Microtransaction.definitions.c b/bindings/java/org_hyperdex_client_Microtransaction.definitions.c index 72ff225b..6ec57c9b 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.definitions.c +++ b/bindings/java/org_hyperdex_client_Microtransaction.definitions.c @@ -262,3 +262,39 @@ Java_org_hyperdex_client_Microtransaction_document_1unset(JNIEnv* env , jobject hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); return (jint)hyperdex_client_uxact_document_unset(client_ptr, uxact, _attrs, _attrs_sz); } + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Microtransaction_atomic_1min(JNIEnv* env , jobject microtransaction, jobject attributes) +{ + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_atomic_min(client_ptr, uxact, _attrs, _attrs_sz); +} + +JNIEXPORT HYPERDEX_API jint JNICALL +Java_org_hyperdex_client_Microtransaction_atomic_1max(JNIEnv* env , jobject microtransaction, jobject attributes) +{ + jobject client; + struct hyperdex_client* client_ptr; + struct hyperdex_client_microtransaction* uxact; + const struct hyperdex_client_attribute *_attrs; + struct hyperdex_ds_arena *arena; + size_t _attrs_sz; + + client = hyperdex_uxact_get_client(env, microtransaction); + client_ptr = hyperdex_uxact_get_client_ptr(env, microtransaction); + uxact = hyperdex_uxact_get_uxact_ptr(env, microtransaction); + arena = hyperdex_uxact_get_arena_ptr(env, microtransaction); + hyperdex_java_client_convert_attributes(env, client, arena, attributes, &_attrs, &_attrs_sz); + return (jint)hyperdex_client_uxact_atomic_max(client_ptr, uxact, _attrs, _attrs_sz); +} diff --git a/bindings/java/org_hyperdex_client_Microtransaction.h b/bindings/java/org_hyperdex_client_Microtransaction.h index 9b24206f..95cbaedb 100644 --- a/bindings/java/org_hyperdex_client_Microtransaction.h +++ b/bindings/java/org_hyperdex_client_Microtransaction.h @@ -167,6 +167,22 @@ JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_do JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_document_1unset (JNIEnv *, jobject, jobject); +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_min + * Signature: (Ljava/util/Map;)I + */ +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1min + (JNIEnv *, jobject, jobject); + +/* + * Class: org_hyperdex_client_Microtransaction + * Method: atomic_max + * Signature: (Ljava/util/Map;)I + */ +JNIEXPORT HYPERDEX_API jint JNICALL Java_org_hyperdex_client_Microtransaction_atomic_1max + (JNIEnv *, jobject, jobject); + #ifdef __cplusplus } #endif diff --git a/bindings/python/hyperdex/client.pyx b/bindings/python/hyperdex/client.pyx index ddfe6016..4caf7325 100644 --- a/bindings/python/hyperdex/client.pyx +++ b/bindings/python/hyperdex/client.pyx @@ -297,9 +297,11 @@ cdef extern from "hyperdex/client.h": int64_t hyperdex_client_map_atomic_min(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_cond_map_atomic_min(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_map_atomic_min(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, hyperdex_client_returncode* status, uint64_t* count) + int64_t hyperdex_client_uxact_atomic_min(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_map_atomic_max(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_cond_map_atomic_max(hyperdex_client* client, const char* space, const char* key, size_t key_sz, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, hyperdex_client_returncode* status) int64_t hyperdex_client_group_map_atomic_max(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const hyperdex_client_map_attribute* mapattrs, size_t mapattrs_sz, hyperdex_client_returncode* status, uint64_t* count) + int64_t hyperdex_client_uxact_atomic_max(hyperdex_client* client, hyperdex_client_microtransaction* microtransaction, const hyperdex_client_attribute* attrs, size_t attrs_sz) int64_t hyperdex_client_search(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) int64_t hyperdex_client_search_describe(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, hyperdex_client_returncode* status, const char** description) int64_t hyperdex_client_sorted_search(hyperdex_client* client, const char* space, const hyperdex_client_attribute_check* checks, size_t checks_sz, const char* sort_by, uint64_t limit, int maxmin, hyperdex_client_returncode* status, const hyperdex_client_attribute** attrs, size_t* attrs_sz) @@ -1296,6 +1298,22 @@ cdef class Microtransaction: if res < 0: raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) return True + def atomic_min(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + res = hyperdex_client_uxact_atomic_min(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + return True + def atomic_max(self, dict attributes): + cdef hyperdex_client_attribute* in_attrs + cdef size_t in_attrs_sz + self.client.convert_attributes(self.deferred.arena, attributes, &in_attrs, &in_attrs_sz) + res = hyperdex_client_uxact_atomic_max(self.client.client, self.transaction, in_attrs, in_attrs_sz) + if res < 0: + raise HyperDexClientException(self.deferred.status, hyperdex_client_error_message(self.client.client)) + return True # End Automatically Generated UTX Methods def async_group_commit(self, dict checks): cdef hyperdex_client_attribute_check* chks diff --git a/client/c.cc b/client/c.cc index 24e16532..e040caeb 100644 --- a/client/c.cc +++ b/client/c.cc @@ -2094,6 +2094,20 @@ hyperdex_client_group_map_atomic_min(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_uxact_atomic_min(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_min), strlen(XSTR(atomic_min))); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_map_atomic_max(struct hyperdex_client* _cl, const char* space, @@ -2138,6 +2152,20 @@ hyperdex_client_group_map_atomic_max(struct hyperdex_client* _cl, ); } +HYPERDEX_API int64_t +hyperdex_client_uxact_atomic_max(struct hyperdex_client* _cl, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz) +{ + hyperdex::microtransaction* tx = reinterpret_cast(microtransaction); + hyperdex_client_returncode *status = tx->status; + C_WRAP_EXCEPT( + const hyperdex_client_keyop_info* opinfo; + opinfo = hyperdex_client_keyop_info_lookup(XSTR(atomic_max), strlen(XSTR(atomic_max))); + return cl->uxact_add_funcall(tx, opinfo, attrs, attrs_sz, NULL, 0); + ); +} + HYPERDEX_API int64_t hyperdex_client_search(struct hyperdex_client* _cl, const char* space, diff --git a/doc/c/client/ops.tex b/doc/c/client/ops.tex index e01d9982..e02034b1 100644 --- a/doc/c/client/ops.tex +++ b/doc/c/client/ops.tex @@ -4277,6 +4277,32 @@ \subsection{\code{group\_map\_atomic\_min}} \input{\topdir/c/client/fragments/out_asynccall_count} \end{itemize} +%%%%%%%%%%%%%%%%%%%% uxact_atomic_min %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{uxact\_atomic\_min}} +\label{api:c:uxact_atomic_min} +\index{uxact\_atomic\_min!C API} +\input{\topdir/client/fragments/uxact_atomic_min} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_uxact_atomic_min(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% map_atomic_max %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{map\_atomic\_max}} @@ -4385,6 +4411,32 @@ \subsection{\code{group\_map\_atomic\_max}} \input{\topdir/c/client/fragments/out_asynccall_count} \end{itemize} +%%%%%%%%%%%%%%%%%%%% uxact_atomic_max %%%%%%%%%%%%%%%%%%%% +\pagebreak +\subsection{\code{uxact\_atomic\_max}} +\label{api:c:uxact_atomic_max} +\index{uxact\_atomic\_max!C API} +\input{\topdir/client/fragments/uxact_atomic_max} + +\paragraph{Definition:} +\begin{ccode} +int64_t hyperdex_client_uxact_atomic_max(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); +\end{ccode} + +\paragraph{Parameters:} +\begin{itemize}[noitemsep] +\item \code{struct hyperdex\_client* client}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_structclient} +\item \code{struct hyperdex\_client\_microtransaction* microtransaction}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_microtransaction} +\item \code{const struct hyperdex\_client\_attribute* attrs, size\_t attrs\_sz}\\ +\input{\topdir/c/client/fragments/in_microtransactioncall_attributes} +\end{itemize} + +\paragraph{Returns:} +Nothing %%%%%%%%%%%%%%%%%%%% search %%%%%%%%%%%%%%%%%%%% \pagebreak \subsection{\code{search}} diff --git a/include/hyperdex/client.h b/include/hyperdex/client.h index 6fde0c44..e8c3fd68 100644 --- a/include/hyperdex/client.h +++ b/include/hyperdex/client.h @@ -1041,6 +1041,11 @@ hyperdex_client_group_map_atomic_min(struct hyperdex_client* client, enum hyperdex_client_returncode* status, uint64_t* count); +int64_t +hyperdex_client_uxact_atomic_min(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_map_atomic_max(struct hyperdex_client* client, const char* space, @@ -1064,6 +1069,11 @@ hyperdex_client_group_map_atomic_max(struct hyperdex_client* client, enum hyperdex_client_returncode* status, uint64_t* count); +int64_t +hyperdex_client_uxact_atomic_max(struct hyperdex_client* client, + struct hyperdex_client_microtransaction* microtransaction, + const struct hyperdex_client_attribute* attrs, size_t attrs_sz); + int64_t hyperdex_client_search(struct hyperdex_client* client, const char* space,