Author: spadkins
Date: Thu Feb 28 11:47:37 2008
New Revision: 10850

Modified:
   p5ee/trunk/App-Context/lib/App/Context/POE/ClusterNode.pm
   p5ee/trunk/App-Context/lib/App/Context/POE/Server.pm

Log:
minor changes to add the results hash to the callback event (allowing 
request_msg to get set correctly on hotel_shop_request)

Modified: p5ee/trunk/App-Context/lib/App/Context/POE/ClusterNode.pm
==============================================================================
--- p5ee/trunk/App-Context/lib/App/Context/POE/ClusterNode.pm   (original)
+++ p5ee/trunk/App-Context/lib/App/Context/POE/ClusterNode.pm   Thu Feb 28 
11:47:37 2008
@@ -48,8 +48,8 @@
     die "Node must have a controller host and port defined 
(\$context->{options}{controller_host} and {controller_port})"
         if (!$self->{controller_host} || !$self->{controller_port});
 
-    push(@{$self->{poe_states}}, "poe_cancel_async_event");
-    push(@{$self->{poe_ikc_published_states}}, "poe_cancel_async_event");
+    push(@{$self->{poe_states}}, qw(poe_cancel_async_event));
+    push(@{$self->{poe_ikc_published_states}}, qw(poe_cancel_async_event));
 
     $self->_init_poe($options);
 

Modified: p5ee/trunk/App-Context/lib/App/Context/POE/Server.pm
==============================================================================
--- p5ee/trunk/App-Context/lib/App/Context/POE/Server.pm        (original)
+++ p5ee/trunk/App-Context/lib/App/Context/POE/Server.pm        Thu Feb 28 
11:47:37 2008
@@ -500,10 +500,10 @@
     return($assigned);
 }
 
+### This is used by the node, but overridden by the controller
 sub send_async_event_now {
     &App::sub_entry if ($App::trace);
     my ($self, $event, $callback_event) = @_;
-    $self->log({level=>3}, "send_async_event_now enter: 
$event->{name}.$event->{method} : $event->{destination}\n");
 
     if ($event->{destination} eq "in_process") {
         my $event_token = $self->send_async_event_in_process($event, 
$callback_event);
@@ -538,7 +538,6 @@
         my $runtime_event_token = $pid;
         $self->{running_async_event}{$runtime_event_token} = [ $event, 
$callback_event ];
     }
-    $self->log({level=>3}, "send_async_event_now exit\n");
     &App::sub_exit() if ($App::trace);
 }
 =head2 wait_for_event()
@@ -612,10 +611,10 @@
         if ($callback_event) {
             $callback_event->{args} = [] if (! $callback_event->{args});
             my $errmsg = ($exitval || $sig) ? "Exit $exitval on $pid 
[sig=$sig]" : "";
-            push(@{$callback_event->{args}}, { event_token => 
$callback_event->{event_token},
-                                               returnval => $returnval,
-                                               errnum => $exitval,
-                                               errmsg => $errmsg });
+            push(@{$callback_event->{args}[2]{args}}, { event_token => 
$callback_event->{event_token},
+                                                        returnval => 
$returnval,
+                                                        errnum => $exitval,
+                                                        errmsg => $errmsg });
             $self->send_event($callback_event);
         }
         elsif ($sig == 9) {  # killed without a chance to finish its work

Reply via email to