Commit e2ff5af0b9aeb84dd3c9ca56f2fc8eae01e2bc37

Authored by Cédric RICARD
1 parent cf51ddb0

- Improved NetService generic client with 'timestamp' value passed to handler functions

- Add _CXM_DOMAIN_COMMAND_RESULT message
calexium_lib/CXM_message_constants.anubis
@@ -73,6 +73,7 @@ public define Word32 _CXM_DOMAIN_PUBLISH_DYN_TEST = 0x33771C06. @@ -73,6 +73,7 @@ public define Word32 _CXM_DOMAIN_PUBLISH_DYN_TEST = 0x33771C06.
73 public define Word32 _CXM_DOMAIN_GET_STATUS = 0x33771C07. 73 public define Word32 _CXM_DOMAIN_GET_STATUS = 0x33771C07.
74 public define Word32 _CXM_DOMAIN_GET_DOMAIN_INFO = 0x33771C08. 74 public define Word32 _CXM_DOMAIN_GET_DOMAIN_INFO = 0x33771C08.
75 public define Word32 _CXM_DOMAIN_CRITICAL_ALERT = 0x33771C09. 75 public define Word32 _CXM_DOMAIN_CRITICAL_ALERT = 0x33771C09.
  76 +public define Word32 _CXM_DOMAIN_COMMAND_RESULT = 0x33771C0A.
76 77
77 78
78 // DomainManager <-> Gandi 79 // DomainManager <-> Gandi
calexium_lib/net_services/CXM_generic_client.anubis
@@ -70,9 +70,10 @@ public define Maybe($T) @@ -70,9 +70,10 @@ public define Maybe($T)
70 simple_handler 70 simple_handler
71 ( 71 (
72 MessageQueue queue, 72 MessageQueue queue,
  73 + String timestamp,
73 Int timeout, 74 Int timeout,
74 Message msg_to_send, 75 Message msg_to_send,
75 - (Message) -> Maybe($T) handler, 76 + (Message, MessageQueue, String) -> Maybe($T) handler,
76 (String) -> One logger 77 (String) -> One logger
77 ) = 78 ) =
78 if generic_send_message(queue, msg_to_send, timeout, logger) is 79 if generic_send_message(queue, msg_to_send, timeout, logger) is
@@ -88,7 +89,7 @@ public define Maybe($T) @@ -88,7 +89,7 @@ public define Maybe($T)
88 if mb_msg is 89 if mb_msg is
89 { 90 {
90 failure then logger("["+queue.get_name(unique)+"]: can't find RESULT message."); failure, 91 failure then logger("["+queue.get_name(unique)+"]: can't find RESULT message."); failure,
91 - success(result) then handler(result) 92 + success(result) then handler(result, queue, timestamp)
92 } 93 }
93 } 94 }
94 }. 95 }.
@@ -125,11 +126,11 @@ public define (MessageQueue, String) -&gt; Maybe($T) @@ -125,11 +126,11 @@ public define (MessageQueue, String) -&gt; Maybe($T)
125 ( 126 (
126 Int timeout, 127 Int timeout,
127 Message msg_to_send, 128 Message msg_to_send,
128 - (Message) -> Maybe($T) handler, 129 + (Message, MessageQueue, String) -> Maybe($T) handler,
129 (String) -> One logger 130 (String) -> One logger
130 ) = 131 ) =
131 (MessageQueue queue, String timestamp) |-> 132 (MessageQueue queue, String timestamp) |->
132 - simple_handler(queue, timeout, msg_to_send, handler, logger). 133 + simple_handler(queue, timestamp, timeout, msg_to_send, handler, logger).
133 134
134 define Maybe($T) 135 define Maybe($T)
135 generic_request_for_service 136 generic_request_for_service
@@ -186,11 +187,13 @@ public define Maybe($T) @@ -186,11 +187,13 @@ public define Maybe($T)
186 { 187 {
187 error(_) then logger(queue_name + ": Can't connect to domain manager ["+ip_addr_to_string(server)+":"+port+"]");failure, 188 error(_) then logger(queue_name + ": Can't connect to domain manager ["+ip_addr_to_string(server)+":"+port+"]");failure,
188 ok(conn) then 189 ok(conn) then
  190 + println("[" + virtual_machine_id + "] netservices create queue");
189 with queue = create_MessageQueue(queue_name), 191 with queue = create_MessageQueue(queue_name),
190 message_transceiver(tcp(conn), queue); 192 message_transceiver(tcp(conn), queue);
  193 + println("[" + virtual_machine_id + "] netservices generic_request_for_service()");
191 with result = generic_request_for_service(queue, service_id, service_version, handler, logger), 194 with result = generic_request_for_service(queue, service_id, service_version, handler, logger),
  195 + println("[" + virtual_machine_id + "] netservices client quit");
192 queue.quit(unique); 196 queue.quit(unique);
193 - //logInfo(debug_log,"domain_manager client quit");  
194 result 197 result
195 }. 198 }.
196 199