initial load of upstream version 1.06.32
[xmlrpc-c] / include / xmlrpc-c / client_int.h
1 /*============================================================================
2                          xmlrpc_client_int.h
3 ==============================================================================
4   This header file defines the interface between client modules inside
5   xmlrpc-c.
6
7   Use this in addition to xmlrpc_client.h, which defines the external
8   interface.
9
10   Copyright information is at the end of the file.
11 ============================================================================*/
12
13
14 #ifndef  XMLRPC_CLIENT_INT_H_INCLUDED
15 #define  XMLRPC_CLIENT_INT_H_INCLUDED
16
17 #ifdef __cplusplus
18 extern "C" {
19 #endif /* __cplusplus */
20
21 struct _xmlrpc_server_info {
22     char *_server_url;
23     char *_http_basic_auth;
24 };
25
26 /* Create a new server info record, with a copy of the old server. */
27 extern xmlrpc_server_info * 
28 xmlrpc_server_info_copy(xmlrpc_env *env, xmlrpc_server_info *aserver);
29
30
31 /*=========================================================================
32 ** Transport Implementation functions.
33 **=========================================================================
34 */
35 #include "xmlrpc-c/transport.h"
36
37 /* The generalized event loop. This uses the above flags. For more details,
38 ** see the wrapper functions below. If you're not using the timeout, the
39 ** 'milliseconds' parameter will be ignored.
40 ** Note that ANY event loop call will return immediately if there are
41 ** no outstanding XML-RPC calls. */
42 extern void
43 xmlrpc_client_event_loop_run_general (int flags, xmlrpc_timeout milliseconds);
44
45 /* Run the event loop forever. The loop will exit if someone calls
46 ** xmlrpc_client_event_loop_end. */
47 extern void
48 xmlrpc_client_event_loop_run (void);
49
50 /* Run the event loop forever. The loop will exit if someone calls
51 ** xmlrpc_client_event_loop_end or the timeout expires.
52 ** (Note that ANY event loop call will return immediately if there are
53 ** no outstanding XML-RPC calls.) */
54 extern void
55 xmlrpc_client_event_loop_run_timeout (xmlrpc_timeout milliseconds);
56
57 /* End the running event loop immediately. This can also be accomplished
58 ** by calling the corresponding function in libwww.
59 ** (Note that ANY event loop call will return immediately if there are
60 ** no outstanding XML-RPC calls.) */
61 extern void
62 xmlrpc_client_event_loop_end (void);
63
64
65 /* Return true if there are uncompleted asynchronous calls.
66 ** The exact value of this during a response callback is undefined. */
67 extern int
68 xmlrpc_client_asynch_calls_are_unfinished (void);
69
70 /* Copyright (C) 2001 by First Peer, Inc. All rights reserved.
71 **
72 ** Redistribution and use in source and binary forms, with or without
73 ** modification, are permitted provided that the following conditions
74 ** are met:
75 ** 1. Redistributions of source code must retain the above copyright
76 **    notice, this list of conditions and the following disclaimer.
77 ** 2. Redistributions in binary form must reproduce the above copyright
78 **    notice, this list of conditions and the following disclaimer in the
79 **    documentation and/or other materials provided with the distribution.
80 ** 3. The name of the author may not be used to endorse or promote products
81 **    derived from this software without specific prior written permission. 
82 **  
83 ** THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
84 ** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
85 ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
86 ** ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
87 ** FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
88 ** DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
89 ** OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
90 ** HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
91 ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
92 ** OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
93 ** SUCH DAMAGE. */
94
95 #ifdef __cplusplus
96 }
97 #endif /* __cplusplus */
98
99 #endif
100
101
102