Author: jelmer Date: 2007-10-14 00:25:05 +0000 (Sun, 14 Oct 2007) New Revision: 25625
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=25625 Log: More Object Oriented wrapper. Modified: branches/4.0-python/ branches/4.0-python/source/lib/ldb/swig/ldb.i Changeset: Property changes on: branches/4.0-python ___________________________________________________________________ Name: bzr:revision-info ...skipped... Name: bzr:revision-id:v3-trunk0 ...skipped... Modified: branches/4.0-python/source/lib/ldb/swig/ldb.i =================================================================== --- branches/4.0-python/source/lib/ldb/swig/ldb.i 2007-10-13 20:24:37 UTC (rev 25624) +++ branches/4.0-python/source/lib/ldb/swig/ldb.i 2007-10-14 00:25:05 UTC (rev 25625) @@ -42,6 +42,7 @@ typedef struct ldb_message ldb_msg; typedef struct ldb_message_element ldb_msg_element; +typedef struct ldb_context ldb; %} @@ -179,6 +180,7 @@ %array_functions(struct ldb_message_element, ldb_message_element_array); +%apply ldb_msg_element **OUTPUT { ldb_msg_element **return_el }; typedef struct ldb_message { struct ldb_dn *dn; unsigned int num_elements; @@ -219,16 +221,17 @@ /* Top-level ldb operations */ -int ldb_connect(struct ldb_context *ldb, const char *url, unsigned int flags, const char *options[]); +typedef struct ldb_context { + %extend { + new(); + int connect(const char *url, unsigned int flags = 0, const char *options[] = NULL); + int search(struct ldb_dn *base = NULL, enum ldb_scope scope = LDB_SCOPE_DEFAULT, const char *expression = NULL, const char * const *attrs = NULL, struct ldb_result **OUT); + int delete(struct ldb_dn *dn); + int rename(struct ldb_dn *olddn, struct ldb_dn *newdn); + int add(ldb_msg *message); + } +} ldb; -int ldb_search(struct ldb_context *ldb, struct ldb_dn *base, enum ldb_scope scope, const char *expression, const char * const *attrs, struct ldb_result **OUT); - -int ldb_delete(struct ldb_context *ldb, struct ldb_dn *dn); - -int ldb_rename(struct ldb_context *ldb, struct ldb_dn *olddn, struct ldb_dn *newdn); - -int ldb_add(struct ldb_context *ldb, ldb_msg *message); - /* Ldb message operations */ ldb_msg *ldb_msg_new(void *mem_ctx); @@ -241,7 +244,7 @@ /* char *ldb_dn_linearize(void *mem_ctx, const struct ldb_dn *dn); */ -%apply ldb_msg_element **OUTPUT { ldb_msg_element **return_el }; %nodefault ldb_message; +%nodefault ldb; %newobject ldb_msg_new; %rename(ldb_context) Ldb;
