]> pilppa.org Git - libplpbus.git/blob - src/idl/RequestResponseBus.idl
0bbd1f0abf3ff005ae2c0ccd9aa90060a359180b
[libplpbus.git] / src / idl / RequestResponseBus.idl
1 #ifndef __ECHO_CALLBACK_IDL__
2 #define __ECHO_CALLBACK_IDL__
3
4 module plpbus_orb {
5         struct DataItem {
6                 string name;
7                 any value;
8                                         string str_value;
9         };
10         
11         typedef sequence<DataItem> DataItemSequence;
12         
13
14         interface OrbClient {
15                 // send event to orb client
16                 void receive_event_message(in string event_param);
17                 void receive_event_dataitem_sequence(in DataItemSequence event_param);
18                 // send message to orb client
19                 void receive_response_message(in string msg_rsp_param);
20                 void receive_response_dataitem_sequence(in DataItemSequence msg_rsp_param);
21         };
22
23         interface OrbServer {
24                 // send message to server and then call back to client
25                 void send_message_and_request_response(in OrbClient response_listener_param, in string msg_param);
26                 void send_dataitem_message_and_request_response(in OrbClient response_listener_param, in DataItemSequence req_seq_param);
27                 
28                 // send message to server and wait response
29                 string send_message_and_wait_response(in string msg_req_param, out long err_flg);
30                 long send_dataitem_message_and_wait_response(in DataItemSequence req_seq_param, out DataItemSequence rsp_seq_param);
31                 
32                 // register listening events periodically
33                 void add_event_listener(in OrbClient callback_client_param,
34                                 in string msg_param,
35                                 in unsigned short period_secs);
36                 // send shutdown request to server
37                 void shutdown();
38         };
39 };
40
41 #endif