From 27d96f2a1232630d6341c4cc5d4acc986d41fe86 Mon Sep 17 00:00:00 2001 From: David RENE Date: Mon, 14 May 2007 07:03:47 +0000 Subject: [PATCH] add quit_requested handling on MessageQueue. Now with that check up the services that have infinite loop can quit when the quit_requested is set to true. --- calexium_lib/net_services/CXM_net_services.anubis | 3 +++ calexium_lib/net_services_protocols/ftp_client.anubis | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/calexium_lib/net_services/CXM_net_services.anubis b/calexium_lib/net_services/CXM_net_services.anubis index 430b4dd..5c7befa 100644 --- a/calexium_lib/net_services/CXM_net_services.anubis +++ b/calexium_lib/net_services/CXM_net_services.anubis @@ -116,6 +116,9 @@ define One MessageQueue queue, List(NetService) net_services ) = + if queue.quit_requested(uniqe) then + unique + else println("PRE SERVICE message_receiver "+"["+virtual_machine_id + "]"); if queue.get_next_received_Message(1) is { diff --git a/calexium_lib/net_services_protocols/ftp_client.anubis b/calexium_lib/net_services_protocols/ftp_client.anubis index 91e1667..49f306c 100644 --- a/calexium_lib/net_services_protocols/ftp_client.anubis +++ b/calexium_lib/net_services_protocols/ftp_client.anubis @@ -142,7 +142,9 @@ public define Maybe(One) with queue = create_MessageQueue, message_transceiver(conn, queue); if request_for_service(queue) then - get_file(queue, remote_file, local_file) + with result = get_file(queue, remote_file, local_file), + queue.quit(unique); + result else println("Service not found");failure } -- libgit2 0.21.4