/*
* Copyright (C) 2001, Shilad Sen, Sourcelight Technologies, Inc.
* See xmlrpc.h or the README for more copyright information.
*
* An xmlrpc client which can make rpc calls to a remote xmlrpc server
*/
#ifndef _RPCCLIENT_H_
#define _RPCCLIENT_H_
#include "rpcInclude.h"
#include "rpcSource.h"
#include "rpcDispatch.h"
#include "rpcServer.h"
PyTypeObject rpcClientType;
/*
* A new xmlrpc client
*/
typedef struct {
PyObject_HEAD /* python standard */
char *host;
char *url;
int port;
rpcDisp *disp;
rpcSource *src;
bool execing;
} rpcClient;
rpcClient *rpcClientNew(char *host, int port, char *url);
rpcClient *rpcClientNewFromServer(
char *host,
int port,
char *url,
rpcServer *servp
);
void rpcClientDealloc(rpcClient *cp);
bool rpcClientNbExecute(
rpcClient *cp,
char *method,
PyObject *params,
bool (*func) (
rpcClient *,
PyObject *,
PyObject *
),
PyObject *args,
char *name,
char *pass
);
PyObject *rpcClientExecute(
rpcClient *cp,
char *method,
PyObject *params,
double timeout,
char *name,
char *pass
);
void rpcClientClose(rpcClient *cp);
#endif /* _RPCCLIENT_H_ */
syntax highlighted by Code2HTML, v. 0.9.1