svn commit: samba r26620 - in branches/SAMBA_4_0: . source/lib/events

jelmer at samba.org jelmer at samba.org
Fri Dec 28 16:25:06 GMT 2007


Author: jelmer
Date: 2007-12-28 16:25:05 +0000 (Fri, 28 Dec 2007)
New Revision: 26620

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=26620

Log:
python: Allow not specifying event contexts, in which case a new context is used.
Modified:
   branches/SAMBA_4_0/
   branches/SAMBA_4_0/source/lib/events/events.i
   branches/SAMBA_4_0/source/lib/events/events.py
   branches/SAMBA_4_0/source/lib/events/events_wrap.c


Changeset:

Property changes on: branches/SAMBA_4_0
___________________________________________________________________
Name: bzr:revision-info
...skipped...
Name: bzr:file-ids
...skipped...
Name: bzr:revision-id:v3-trunk0
...skipped...

Modified: branches/SAMBA_4_0/source/lib/events/events.i
===================================================================
--- branches/SAMBA_4_0/source/lib/events/events.i	2007-12-28 15:37:03 UTC (rev 26619)
+++ branches/SAMBA_4_0/source/lib/events/events.i	2007-12-28 16:25:05 UTC (rev 26620)
@@ -22,8 +22,16 @@
 
 %{
 #include "lib/events/events.h"
+typedef struct event_context event_context;
 %}
 
+%talloctype(event_context);
+typedef struct event_context {} event_context;
+
+%typemap(default,noblock=1) struct event_context * {
+    $1 = event_context_init(NULL);
+}
+
 struct event_context *event_context_init(TALLOC_CTX *mem_ctx);
 
 %typemap(default,noblock=1) struct event_context * {

Modified: branches/SAMBA_4_0/source/lib/events/events.py
===================================================================
--- branches/SAMBA_4_0/source/lib/events/events.py	2007-12-28 15:37:03 UTC (rev 26619)
+++ branches/SAMBA_4_0/source/lib/events/events.py	2007-12-28 16:25:05 UTC (rev 26620)
@@ -57,6 +57,14 @@
     return set_attr
 
 
+class event_context(object):
+    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    __swig_destroy__ = _events.delete_event_context
+event_context_swigregister = _events.event_context_swigregister
+event_context_swigregister(event_context)
+
 event_context_init = _events.event_context_init
 event_context_init_byname = _events.event_context_init_byname
 event_backend_list = _events.event_backend_list

Modified: branches/SAMBA_4_0/source/lib/events/events_wrap.c
===================================================================
--- branches/SAMBA_4_0/source/lib/events/events_wrap.c	2007-12-28 15:37:03 UTC (rev 26619)
+++ branches/SAMBA_4_0/source/lib/events/events_wrap.c	2007-12-28 16:25:05 UTC (rev 26620)
@@ -2502,7 +2502,9 @@
 
 
 #include "lib/events/events.h"
+typedef struct event_context event_context;
 
+SWIGINTERN void delete_event_context(event_context *self){ talloc_free(self); }
 
 SWIGINTERN swig_type_info*
 SWIG_pchar_descriptor(void)
@@ -2574,6 +2576,36 @@
 #ifdef __cplusplus
 extern "C" {
 #endif
+SWIGINTERN PyObject *_wrap_delete_event_context(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  event_context *arg1 = (event_context *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_event_context, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_event_context" "', argument " "1"" of type '" "event_context *""'"); 
+  }
+  arg1 = (event_context *)(argp1);
+  delete_event_context(arg1);
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *event_context_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_event_context, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
 SWIGINTERN PyObject *_wrap_event_context_init(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   TALLOC_CTX *arg1 = (TALLOC_CTX *) 0 ;
@@ -2635,6 +2667,8 @@
 
 
 static PyMethodDef SwigMethods[] = {
+	 { (char *)"delete_event_context", (PyCFunction)_wrap_delete_event_context, METH_O, NULL},
+	 { (char *)"event_context_swigregister", event_context_swigregister, METH_VARARGS, NULL},
 	 { (char *)"event_context_init", (PyCFunction)_wrap_event_context_init, METH_NOARGS, NULL},
 	 { (char *)"event_context_init_byname", (PyCFunction) _wrap_event_context_init_byname, METH_VARARGS | METH_KEYWORDS, NULL},
 	 { (char *)"event_backend_list", (PyCFunction)_wrap_event_backend_list, METH_NOARGS, NULL},
@@ -2646,7 +2680,7 @@
 
 static swig_type_info _swigt__p_TALLOC_CTX = {"_p_TALLOC_CTX", "TALLOC_CTX *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_event_context = {"_p_event_context", "struct event_context *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_event_context = {"_p_event_context", "struct event_context *|event_context *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_p_char = {"_p_p_char", "char **", 0, 0, (void*)0, 0};
 
 static swig_type_info *swig_type_initial[] = {



More information about the samba-cvs mailing list