view release on metacpan or search on metacpan
ZooKeeper.xs view on Meta::CPAN
zk_acl_constant(alias=Nullch)
char *alias
ALIAS:
ZOO_OPEN_ACL_UNSAFE = 1
ZOO_READ_ACL_UNSAFE = 2
ZOO_CREATOR_ALL_ACL = 3
PREINIT:
struct ACL_vector acl;
AV *acl_arr;
int i;
PPCODE:
if (!ix && !alias) {
alias = GvNAME(CvGV(cv));
}
if (ix == 1 || (alias != NULL && strEQ(alias, "ZOO_OPEN_ACL_UNSAFE"))) {
acl = ZOO_OPEN_ACL_UNSAFE;
}
else if (ix == 2 || (alias != NULL && strEQ(alias, "ZOO_READ_ACL_UNSAFE"))) {
acl = ZOO_READ_ACL_UNSAFE;
}
ZooKeeper.xs view on Meta::CPAN
}
ST(0) = sv_2mortal(newRV_noinc((SV*) acl_arr));
XSRETURN(1);
void
zk_set_log_level(level)
int level
PPCODE:
if (level < ZOO_LOG_LEVEL_OFF || level > ZOO_LOG_LEVEL_DEBUG) {
Perl_croak(aTHX_ "invalid log level: %d", level);
}
zoo_set_debug_level(level);
XSRETURN_EMPTY;
void
zk_set_deterministic_conn_order(flag)
bool flag
PPCODE:
zoo_deterministic_conn_order(!!flag);
XSRETURN_EMPTY;
void
zk_set_ignore_session_events(flag)
bool flag
PPCODE:
zk_ignore_session_events = flag;
XSRETURN_EMPTY;
void
zk_new(package, hosts, ...)
char *package
char *hosts
PREINIT:
int recv_timeout = DEFAULT_RECV_TIMEOUT_MSEC;
const clientid_t *client_id = NULL;
zk_t *zk;
zk_handle_t *handle;
HV *stash, *zk_hash, *attr_hash;
SV *attr;
int i;
PPCODE:
if (items > 2 && items % 2) {
Perl_croak(aTHX_ "invalid number of arguments");
}
for (i = 2; i < items; i += 2) {
char *key = SvPV_nolen(ST(i));
if (strcaseEQ(key, "session_timeout")) {
recv_timeout = SvIV(ST(i + 1));
ZooKeeper.xs view on Meta::CPAN
XSRETURN(1);
void
zk_DESTROY(zkh)
Net::ZooKeeper zkh
PREINIT:
zk_handle_t *handle;
HV *attr_hash;
int ret = ZBADARGUMENTS;
PPCODE:
handle = _zk_check_handle_outer(aTHX_ zkh, &attr_hash,
PACKAGE_NAME, PACKAGE_SIGNATURE);
if (!handle) {
handle = _zk_check_handle_inner(aTHX_ zkh, PACKAGE_SIGNATURE);
if (handle) {
attr_hash = zkh;
zkh = NULL;
}
ZooKeeper.xs view on Meta::CPAN
XSRETURN_YES;
}
else {
XSRETURN_NO;
}
void
zk_CLONE(package)
char *package
PPCODE:
XSRETURN_EMPTY;
void
zk_CLONE_SKIP(package)
char *package
PPCODE:
XSRETURN_YES;
void
zk_TIEHASH(package, ...)
char *package
PPCODE:
Perl_croak(aTHX_ "tying hashes of class "
PACKAGE_NAME " not supported");
void
zk_UNTIE(attr_hash, ref_count)
Net::ZooKeeper attr_hash
IV ref_count
PPCODE:
Perl_croak(aTHX_ "untying hashes of class "
PACKAGE_NAME " not supported");
void
zk_FIRSTKEY(attr_hash)
Net::ZooKeeper attr_hash
PREINIT:
zk_t *zk;
PPCODE:
zk = _zk_get_handle_inner(aTHX_ attr_hash);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
ST(0) = sv_2mortal(newSVpvn(zk_keys[0].name, zk_keys[0].name_len));
XSRETURN(1);
void
zk_NEXTKEY(attr_hash, attr_key)
Net::ZooKeeper attr_hash
SV *attr_key
PREINIT:
zk_t *zk;
char *key;
int i;
PPCODE:
zk = _zk_get_handle_inner(aTHX_ attr_hash);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
for (i = 0; i < NUM_KEYS; ++i) {
if (strcaseEQ(key, zk_keys[i].name)) {
ZooKeeper.xs view on Meta::CPAN
XSRETURN(1);
}
else {
XSRETURN_EMPTY;
}
void
zk_SCALAR(attr_hash)
Net::ZooKeeper attr_hash
PPCODE:
XSRETURN_YES;
void
zk_FETCH(attr_hash, attr_key)
Net::ZooKeeper attr_hash
SV *attr_key
PREINIT:
zk_t *zk;
char *key;
SV *val = NULL;
PPCODE:
zk = _zk_get_handle_inner(aTHX_ attr_hash);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
if (strcaseEQ(key, "data_read_len")) {
val = newSViv(zk->data_buf_len);
ZooKeeper.xs view on Meta::CPAN
void
zk_STORE(attr_hash, attr_key, attr_val)
Net::ZooKeeper attr_hash
SV *attr_key
SV *attr_val
PREINIT:
zk_t *zk;
char *key;
PPCODE:
zk = _zk_get_handle_inner(aTHX_ attr_hash);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
if (strcaseEQ(key, "data_read_len")) {
int val = SvIV(attr_val);
ZooKeeper.xs view on Meta::CPAN
void
zk_EXISTS(attr_hash, attr_key)
Net::ZooKeeper attr_hash
SV *attr_key
PREINIT:
zk_t *zk;
char *key;
int i;
PPCODE:
zk = _zk_get_handle_inner(aTHX_ attr_hash);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
for (i = 0; i < NUM_KEYS; ++i) {
if (strcaseEQ(key, zk_keys[i].name)) {
ZooKeeper.xs view on Meta::CPAN
}
}
XSRETURN_NO;
void
zk_DELETE(attr_hash, attr_key)
Net::ZooKeeper attr_hash
SV *attr_key
PPCODE:
Perl_warn(aTHX_ "deleting elements from hashes of class "
PACKAGE_NAME " not supported");
XSRETURN_EMPTY;
void
zk_CLEAR(attr_hash)
Net::ZooKeeper attr_hash
PPCODE:
Perl_warn(aTHX_ "clearing hashes of class "
PACKAGE_NAME " not supported");
XSRETURN_EMPTY;
SV *
zk_get_error(zkh)
Net::ZooKeeper zkh
PREINIT:
ZooKeeper.xs view on Meta::CPAN
void
zk_add_auth(zkh, scheme, cert)
Net::ZooKeeper zkh
char *scheme
char *cert; cert = (char *) SvPV($arg, cert_len);
PREINIT:
zk_t *zk;
STRLEN cert_len;
zk_watch_t *watch;
int ret;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
if (cert_len > PERL_INT_MAX) {
ZooKeeper.xs view on Meta::CPAN
char *buf; buf = (char *) SvPV($arg, buf_len);
PREINIT:
zk_t *zk;
STRLEN buf_len;
int flags = 0;
char *path_buf;
int path_buf_len;
AV *acl_arr = NULL;
struct ACL_vector acl;
int i, ret;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
if (items > 3 && !(items % 2)) {
ZooKeeper.xs view on Meta::CPAN
void
zk_delete(zkh, path, ...)
Net::ZooKeeper zkh
char *path
PREINIT:
zk_t *zk;
int version = -1;
int i, ret;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
if (items > 2 && items % 2) {
ZooKeeper.xs view on Meta::CPAN
Net::ZooKeeper zkh
char *path
PREINIT:
zk_t *zk;
zk_stat_t *stat = NULL;
zk_watch_t *old_watch = NULL;
zk_handle_t *watch_handle = NULL;
watcher_fn watcher = NULL;
zk_watch_t *new_watch = NULL;
int i, ret;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
if (items > 2 && items % 2) {
ZooKeeper.xs view on Meta::CPAN
Net::ZooKeeper zkh
char *path
PREINIT:
zk_t *zk;
zk_watch_t *old_watch = NULL;
zk_handle_t *watch_handle = NULL;
watcher_fn watcher = NULL;
zk_watch_t *new_watch = NULL;
struct String_vector strings;
int i, ret;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
if (items > 2 && items % 2) {
ZooKeeper.xs view on Meta::CPAN
PREINIT:
zk_t *zk;
int buf_len;
zk_stat_t *stat = NULL;
zk_watch_t *old_watch = NULL;
zk_handle_t *watch_handle = NULL;
char *buf;
watcher_fn watcher = NULL;
zk_watch_t *new_watch = NULL;
int i, ret;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
if (items > 2 && items % 2) {
ZooKeeper.xs view on Meta::CPAN
zk_set(zkh, path, buf, ...)
Net::ZooKeeper zkh
char *path
char *buf; buf = (char *) SvPV($arg, buf_len);
PREINIT:
zk_t *zk;
int version = -1;
zk_stat_t *stat = NULL;
STRLEN buf_len;
int i, ret;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
if (items > 3 && !(items % 2)) {
ZooKeeper.xs view on Meta::CPAN
void
zk_get_acl(zkh, path, ...)
Net::ZooKeeper zkh
char *path
PREINIT:
zk_t *zk;
zk_stat_t *stat = NULL;
struct ACL_vector acl;
int i, ret;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
if (items > 2 && items % 2) {
ZooKeeper.xs view on Meta::CPAN
zk_set_acl(zkh, path, acl_arr, ...)
Net::ZooKeeper zkh
char *path
AV *acl_arr
PREINIT:
zk_t *zk;
const char *err;
int version = -1;
struct ACL_vector acl;
int i, ret;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
if (items > 3 && !(items % 2)) {
ZooKeeper.xs view on Meta::CPAN
void
zk_stat(zkh)
Net::ZooKeeper zkh
PREINIT:
zk_t *zk;
zk_handle_t *handle;
HV *stash, *stat_hash, *attr_hash;
SV *attr;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
Newx(handle, 1, zk_handle_t);
ZooKeeper.xs view on Meta::CPAN
zk_watch(zkh, ...)
Net::ZooKeeper zkh
PREINIT:
zk_t *zk;
unsigned int timeout;
zk_watch_t *watch;
zk_handle_t *handle;
HV *stash, *watch_hash, *attr_hash;
SV *attr;
int i;
PPCODE:
zk = _zk_get_handle_outer(aTHX_ zkh);
if (!zk) {
Perl_croak(aTHX_ "invalid handle");
}
zk->last_ret = ZOK;
zk->last_errno = 0;
if (items > 1 && !(items % 2)) {
ZooKeeper.xs view on Meta::CPAN
MODULE = Net::ZooKeeper PACKAGE = Net::ZooKeeper::Stat PREFIX = zks_
void
zks_DESTROY(zksh)
Net::ZooKeeper::Stat zksh
PREINIT:
zk_handle_t *handle;
HV *attr_hash;
int ret = ZBADARGUMENTS;
PPCODE:
handle = _zk_check_handle_outer(aTHX_ zksh, &attr_hash,
STAT_PACKAGE_NAME,
STAT_PACKAGE_SIGNATURE);
if (!handle) {
handle = _zk_check_handle_inner(aTHX_ zksh,
STAT_PACKAGE_SIGNATURE);
if (handle) {
attr_hash = zksh;
ZooKeeper.xs view on Meta::CPAN
XSRETURN_YES;
}
else {
XSRETURN_NO;
}
void
zks_CLONE(package)
char *package
PPCODE:
XSRETURN_EMPTY;
void
zks_CLONE_SKIP(package)
char *package
PPCODE:
XSRETURN_YES;
void
zks_TIEHASH(package, ...)
char *package
PPCODE:
Perl_croak(aTHX_ "tying hashes of class "
STAT_PACKAGE_NAME " not supported");
void
zks_UNTIE(attr_hash, ref_count)
Net::ZooKeeper::Stat attr_hash
IV ref_count
PPCODE:
Perl_croak(aTHX_ "untying hashes of class "
STAT_PACKAGE_NAME " not supported");
void
zks_FIRSTKEY(attr_hash)
Net::ZooKeeper::Stat attr_hash
PREINIT:
zk_stat_t *stat;
PPCODE:
stat = _zks_get_handle_inner(aTHX_ attr_hash);
if (!stat) {
Perl_croak(aTHX_ "invalid handle");
}
ST(0) = sv_2mortal(newSVpvn(zk_stat_keys[0].name,
zk_stat_keys[0].name_len));
XSRETURN(1);
void
zks_NEXTKEY(attr_hash, attr_key)
Net::ZooKeeper::Stat attr_hash
SV *attr_key
PREINIT:
zk_stat_t *stat;
char *key;
int i;
PPCODE:
stat = _zks_get_handle_inner(aTHX_ attr_hash);
if (!stat) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
for (i = 0; i < NUM_STAT_KEYS; ++i) {
if (strcaseEQ(key, zk_stat_keys[i].name)) {
ZooKeeper.xs view on Meta::CPAN
XSRETURN(1);
}
else {
XSRETURN_EMPTY;
}
void
zks_SCALAR(attr_hash)
Net::ZooKeeper::Stat attr_hash
PPCODE:
XSRETURN_YES;
void
zks_FETCH(attr_hash, attr_key)
Net::ZooKeeper::Stat attr_hash
SV *attr_key
PREINIT:
zk_stat_t *stat;
char *key;
SV *val = NULL;
int i;
PPCODE:
stat = _zks_get_handle_inner(aTHX_ attr_hash);
if (!stat) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
for (i = 0; i < NUM_STAT_KEYS; ++i) {
if (strcaseEQ(key, zk_stat_keys[i].name)) {
ZooKeeper.xs view on Meta::CPAN
void
zks_STORE(attr_hash, attr_key, attr_val)
Net::ZooKeeper::Stat attr_hash
SV *attr_key
SV *attr_val
PREINIT:
zk_stat_t *stat;
char *key;
int i;
PPCODE:
stat = _zks_get_handle_inner(aTHX_ attr_hash);
if (!stat) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
for (i = 0; i < NUM_STAT_KEYS; ++i) {
if (strcaseEQ(key, zk_stat_keys[i].name)) {
ZooKeeper.xs view on Meta::CPAN
void
zks_EXISTS(attr_hash, attr_key)
Net::ZooKeeper::Stat attr_hash
SV *attr_key
PREINIT:
zk_stat_t *stat;
char *key;
int i;
PPCODE:
stat = _zks_get_handle_inner(aTHX_ attr_hash);
if (!stat) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
for (i = 0; i < NUM_STAT_KEYS; ++i) {
if (strcaseEQ(key, zk_stat_keys[i].name)) {
ZooKeeper.xs view on Meta::CPAN
}
}
XSRETURN_NO;
void
zks_DELETE(attr_hash, attr_key)
Net::ZooKeeper::Stat attr_hash
SV *attr_key
PPCODE:
Perl_warn(aTHX_ "deleting elements from hashes of class "
STAT_PACKAGE_NAME " not supported");
XSRETURN_EMPTY;
void
zks_CLEAR(attr_hash)
Net::ZooKeeper::Stat attr_hash
PPCODE:
Perl_warn(aTHX_ "clearing hashes of class "
STAT_PACKAGE_NAME " not supported");
XSRETURN_EMPTY;
MODULE = Net::ZooKeeper PACKAGE = Net::ZooKeeper::Watch PREFIX = zkw_
void
zkw_DESTROY(zkwh)
Net::ZooKeeper::Watch zkwh
PREINIT:
zk_handle_t *handle;
HV *attr_hash;
int ret = ZBADARGUMENTS;
PPCODE:
handle = _zk_check_handle_outer(aTHX_ zkwh, &attr_hash,
WATCH_PACKAGE_NAME,
WATCH_PACKAGE_SIGNATURE);
if (!handle) {
handle = _zk_check_handle_inner(aTHX_ zkwh,
WATCH_PACKAGE_SIGNATURE);
if (handle) {
attr_hash = zkwh;
ZooKeeper.xs view on Meta::CPAN
XSRETURN_YES;
}
else {
XSRETURN_NO;
}
void
zkw_CLONE(package)
char *package
PPCODE:
XSRETURN_EMPTY;
void
zkw_CLONE_SKIP(package)
char *package
PPCODE:
XSRETURN_YES;
void
zkw_TIEHASH(package, ...)
char *package
PPCODE:
Perl_croak(aTHX_ "tying hashes of class "
WATCH_PACKAGE_NAME " not supported");
void
zkw_UNTIE(attr_hash, ref_count)
Net::ZooKeeper::Watch attr_hash
IV ref_count
PPCODE:
Perl_croak(aTHX_ "untying hashes of class "
WATCH_PACKAGE_NAME " not supported");
void
zkw_FIRSTKEY(attr_hash)
Net::ZooKeeper::Watch attr_hash
PREINIT:
zk_watch_t *watch;
PPCODE:
watch = _zkw_get_handle_inner(aTHX_ attr_hash);
if (!watch) {
Perl_croak(aTHX_ "invalid handle");
}
ST(0) = sv_2mortal(newSVpvn(zk_watch_keys[0].name,
zk_watch_keys[0].name_len));
XSRETURN(1);
void
zkw_NEXTKEY(attr_hash, attr_key)
Net::ZooKeeper::Watch attr_hash
SV *attr_key
PREINIT:
zk_watch_t *watch;
char *key;
int i;
PPCODE:
watch = _zkw_get_handle_inner(aTHX_ attr_hash);
if (!watch) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
for (i = 0; i < NUM_WATCH_KEYS; ++i) {
if (strcaseEQ(key, zk_watch_keys[i].name)) {
ZooKeeper.xs view on Meta::CPAN
XSRETURN(1);
}
else {
XSRETURN_EMPTY;
}
void
zkw_SCALAR(attr_hash)
Net::ZooKeeper::Watch attr_hash
PPCODE:
XSRETURN_YES;
void
zkw_FETCH(attr_hash, attr_key)
Net::ZooKeeper::Watch attr_hash
SV *attr_key
PREINIT:
zk_watch_t *watch;
char *key;
SV *val = NULL;
PPCODE:
watch = _zkw_get_handle_inner(aTHX_ attr_hash);
if (!watch) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
if (strcaseEQ(key, "timeout")) {
val = newSVuv(watch->timeout);
ZooKeeper.xs view on Meta::CPAN
void
zkw_STORE(attr_hash, attr_key, attr_val)
Net::ZooKeeper::Watch attr_hash
SV *attr_key
SV *attr_val
PREINIT:
zk_watch_t *watch;
char *key;
PPCODE:
watch = _zkw_get_handle_inner(aTHX_ attr_hash);
if (!watch) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
if (strcaseEQ(key, "timeout")) {
watch->timeout = SvUV(attr_val);
ZooKeeper.xs view on Meta::CPAN
void
zkw_EXISTS(attr_hash, attr_key)
Net::ZooKeeper::Watch attr_hash
SV *attr_key
PREINIT:
zk_watch_t *watch;
char *key;
int i;
PPCODE:
watch = _zkw_get_handle_inner(aTHX_ attr_hash);
if (!watch) {
Perl_croak(aTHX_ "invalid handle");
}
key = SvPV_nolen(attr_key);
for (i = 0; i < NUM_WATCH_KEYS; ++i) {
if (strcaseEQ(key, zk_watch_keys[i].name)) {
ZooKeeper.xs view on Meta::CPAN
}
}
XSRETURN_NO;
void
zkw_DELETE(attr_hash, attr_key)
Net::ZooKeeper::Watch attr_hash
SV *attr_key
PPCODE:
Perl_warn(aTHX_ "deleting elements from hashes of class "
WATCH_PACKAGE_NAME " not supported");
XSRETURN_EMPTY;
void
zkw_CLEAR(attr_hash)
Net::ZooKeeper::Watch attr_hash
PPCODE:
Perl_warn(aTHX_ "clearing hashes of class "
WATCH_PACKAGE_NAME " not supported");
XSRETURN_EMPTY;
void
zkw_wait(zkwh, ...)
Net::ZooKeeper::Watch zkwh
PREINIT:
zk_watch_t *watch;
unsigned int timeout;
struct timeval end_timeval;
int i, done;
struct timespec wait_timespec;
PPCODE:
watch = _zkw_get_handle_outer(aTHX_ zkwh, NULL);
if (!watch) {
Perl_croak(aTHX_ "invalid handle");
}
if (items > 1 && !(items % 2)) {
Perl_croak(aTHX_ "invalid number of arguments");
}