aboutsummaryrefslogtreecommitdiff
path: root/src/server/testclient.cpp
blob: 0aab8a2ed566f42676cd851b330c3ca21c58c454 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
// 
// // Minimal C ZMQ Client example
// 
// // Properties -> Linker -> Input -> Additional dependencies "libzmq.lib"
// // Properties -> Linker -> Input -> Additional dependencies "ws2_32.lib"
// 
// #include <stdio.h>
// #include "zmq.h"
// 
// 
// #define WS_VER 0x0202
// #define DEFAULT_PORT "5001"
// 
// 
// int main ()
// {
//   int retval;
//   void *ctx, *s;
//   zmq_msg_t query, reply;
//   const char *query_string = "SELECT * FROM sometable, END SERVER", *reply_string;
// 
// 
// printf( "Initialise ZMQ context: \n" );
// 
//     // Initialise ZMQ context, requesting a single application thread and a single I/O thread 
//     ctx = zmq_init(1);
//     if( ctx == 0 ) { 
// 			printf( "Error zmq_init: '%s'\n",  zmq_strerror(errno) );
// 			return 0; 
// 		}
// 
//     while(1) {
// printf( "Create a ZMQ_REP socket: \n" );
// 				// Create a ZMQ_REP socket to receive requests and send replies 
// 				s = zmq_socket( ctx, ZMQ_REQ );
// 				if( s == 0 ) {
// 					printf( "Error zmq_socket: '%s'\n", zmq_strerror(errno) );
// 					break; 
// 				} 
// 
// 				retval = zmq_connect( s, "tcp://localhost:5555" );
// 				if( retval != 0 ) {
// 					printf( "Error zmq_connect: '%s'\n", zmq_strerror(errno) );
// 					break; 
// 				} 
// 
// 
// 				// Allocate a message and fill it 
// 				retval = zmq_msg_init_size( &query, strlen(query_string)+1 );
// 				if( retval != 0 ) { 
// 					printf( "Error zmq_msg_init_size: '%s'\n", zmq_strerror(errno) );
// 					break; 
// 				}
// 
// 				memcpy( zmq_msg_data (&query), query_string, strlen (query_string)+1 );
//  
// printf( "Send Query: '%s'\n", query_string );
// 				// Send Query 
// 				retval = zmq_send( s, &query, 0 , 0);
// 				if( retval != 0 ) {
// 					printf( "Error zmq_send: '%s'\n", zmq_strerror(errno) );
// 					break; 
// 				}
// 
// 
// 
// 				// Recover response
// 				zmq_msg_init(&reply);
// 				if( retval != 0 ) { 
// 					printf( "Error zmq_msg_init: '%s'\n", zmq_strerror(errno) );
// 					break; 
// 				}
// 
// printf( "Waiting for reply: \n");
// 
// 				// Receive reply, blocks until one is available 
// 				retval = zmq_recv( s, &reply, 0 , 0);
// 				if( retval != 0 ) { 
// 					printf( "Error zmq_recv: '%s'\n", zmq_strerror(errno) );
// 					break; 
// 				}
//  
// 				// Process the reply 
// 				reply_string = (const char *)zmq_msg_data(&reply);
// printf("Server reply: '%s'\n", reply_string);
// 
// 
// 				// Free message memory
// 				zmq_msg_close(&reply);
// 
// 				break;
// 		} 
// 
// 
// 		// Close connection 
// 		if( s != 0) { 
// printf( "Close connection \n");
// 			retval = zmq_close(s);
// 			if( retval != 0 ) { 
// 				printf( "Error zmq_close: '%s'\n", zmq_strerror(errno) );
// 			}
// 		}
// 
// 		// Release library resources 
// 		retval = zmq_term(ctx);
// 
// printf( "All Done \n" );
// 
//   return 0;
// }