"""
events = JobEvents() # create instance of Job class
events.job = job # save Bacula's job pointer
- job.set_events = events # register events desired
+# job.set_events = events # register events desired
+ job.set_events(events) # register events desired
sys.stderr = events # send error output to Bacula
sys.stdout = events # send stdout to Bacula
jobid = job.JobId; client = job.Client
extern PyObject *find_method(PyObject *eventsObject, PyObject *method,
const char *name);
+
static int set_job_events(PyObject *self, PyObject *arg);
static int job_run(PyObject *self, PyObject *arg);
+#ifdef needed
+static PyObject *set_bacula_job_events(PyObject *self, PyObject *arg)
+{
+ Dmsg2(000, "In set_bacula_job_events self=%p arg=%p\n",
+ self, arg);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+PyMethodDef JobMethods[] = {
+ {"set_events", set_bacula_job_events, METH_VARARGS, "Define Bacula events."},
+ {NULL, NULL, 0, NULL} /* last item */
+};
+#endif
+
+
struct s_vars {
const char *name;
char *fmt;
return -1;
}
+#ifdef needed
+static PyObject *set_bacula_job_events(PyObject *self, PyObject *arg)
+{
+ Dmsg2(000, "In set_bacula_job_events self=%p arg=%p\n",
+ self, arg);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+#endif
+
static int set_job_events(PyObject *self, PyObject *arg)
{
JobType.tp_doc = "Bacula Job object";
JobType.tp_getattr = job_getattr;
JobType.tp_setattr = job_setattr;
-
+
if (PyType_Ready(&JobType) != 0) {
Jmsg0(NULL, M_ERROR_TERM, 0, "Could not initialize Python Job type.\n");
PyErr_Print();
if (PyErr_Occurred()) {
PyErr_Print();
Dmsg2(000, "Python JobEnd error. job=%p JobId=%d\n", jcr->Python_job,
- jcr->JobId);
- JobEnd_method = NULL;
+ jcr->JobId);
+ JobEnd_method = NULL;
}
Jmsg(jcr, M_ERROR, 0, "Python function \"%s\" not found.\n", event);
goto bail_out;