annotate GEMBASSY-1.0.3/gsoap/extras/logging.cpp @ 0:8300eb051bea draft

Initial upload
author ktnyt
date Fri, 26 Jun 2015 05:19:29 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
1 // logging.cpp
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
2 //
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
3 // Place this file in the same direcory as stdsoap2.h
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
4 // Requires soapdefs.h (compile stdsoap2.cpp with -DWITH_SOAPDEFS_H
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
5 // and -DDEBUG_CALLBACKS)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
6 //
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
7 // Runtime/Customer logging by Mike Helmick
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
8 // Copyright (c) 2002 - Mike Helmick. Convergys IMG. All Rights Reserved.
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
9 // This contributed code is covered under the MPL 1.1 license
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
10
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
11 #include "stdsoap2.h" // includes "soapdefs.h" when compiled with -DWITH_SOAPDEFS_H
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
12
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
13 void soap_recv_callback(struct soap*, const char*, size_t len);
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
14 void soap_sent_callback(struct soap*, const char*, size_t len);
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
15 void soap_test_callback(struct soap*, const char*, size_t len);
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
16
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
17 void
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
18 soap_dispatch_callback(struct soap *soap, int idx, const char *msg, size_t len)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
19 { if (!soap->user)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
20 { // you can set stuff up here, streams etc.
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
21 // soap->user is used to pass user-defined data
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
22 // soap->user is never set nor cleared by gSOAP
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
23 soap->user = (void*)&cout;
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
24 // don't forget to clean up the streams in the main code
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
25 // (before discarding the soap runtime environment)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
26 }
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
27 switch (idx)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
28 { case SOAP_INDEX_RECV:
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
29 soap_recv_callback(soap, msg, len);
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
30 break;
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
31 case SOAP_INDEX_SENT:
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
32 soap_sent_callback(soap, msg, len);
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
33 break;
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
34 case SOAP_INDEX_TEST:
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
35 soap_test_callback(soap, msg, len);
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
36 break;
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
37 }
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
38 }
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
39
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
40 // Note: 'msg' is not 0-terminated!
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
41 void
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
42 soap_recv_callback(struct soap *soap, const char *msg, size_t len)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
43 { ostream& os = *(ostream*)soap->user;
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
44 os << endl
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
45 << "Received:" << endl
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
46 << "----------------------------------------" << endl;
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
47 os.write(msg, len);
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
48 os << "----------------------------------------" << endl;
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
49 }
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
50
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
51 void
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
52 soap_sent_callback(struct soap *soap, const char *msg, size_t len)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
53 { ostream& os = *(ostream*)soap->user;
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
54 os << endl
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
55 << "Sent:" << endl
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
56 << "----------------------------------------" << endl;
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
57 os.write(msg, len);
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
58 os << "----------------------------------------" << endl;
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
59 }
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
60
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
61 void
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
62 soap_test_callback(struct soap *soap, const char *msg, size_t len)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
63 { (*(ostream*)soap->user << "Trace: ").write(msg, len);
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
64 }