Author: spadkins
Date: Thu Dec 13 11:56:50 2007
New Revision: 10426

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

Log:
logging changes, added enter and exit statements to each poe state, and some 
minor code cleaning

Modified: p5ee/trunk/App-Context/lib/App/Context/POE/ClusterController.pm
==============================================================================
--- p5ee/trunk/App-Context/lib/App/Context/POE/ClusterController.pm     
(original)
+++ p5ee/trunk/App-Context/lib/App/Context/POE/ClusterController.pm     Thu Dec 
13 11:56:50 2007
@@ -209,18 +209,24 @@
 sub poe_receive_node_status {
     &App::sub_entry if ($App::trace);
     my ($self, $kernel, $args) = @_[OBJECT, KERNEL, ARG0];
+    $self->log("POE: poe_receive_node_status enter\n") if 
$self->{options}{poe_trace};
     my ($node, $sys_info) = @$args;
+
     $self->log("POE: poe_receive_node_status ($node) - " .
                "load=$sys_info->{system_load}, " .
                "memfree=$sys_info->{memfree}/$sys_info->{memtotal} " .
                "swapfree=$sys_info->{swapfree}/$sys_info->{swaptotal}\n") if 
$self->{options}{poe_trace};
     $self->set_node_up($node, $sys_info);
+
+    $self->log("POE: poe_receive_node_status exit\n") if 
$self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
 sub poe_run_event {
-    my ( $self, $kernel, $heap, $event ) = @_[ OBJECT, KERNEL, HEAP, ARG0 ];
     &App::sub_entry if ($App::trace);
+    my ( $self, $kernel, $heap, $event ) = @_[ OBJECT, KERNEL, HEAP, ARG0 ];
+    $self->log("POE: poe_run_event enter\n") if $self->{options}{poe_trace};
+
     my ($event_str);
     my $args = $event->{args} || [];
     my $args_str = join(",", @$args);
@@ -231,8 +237,9 @@
     else {
         $event_str = "$event->{method}($args_str)";
     }
-    $self->log({level=>2},"Run Event: $event_str\n") if 
$self->{options}{poe_trace};
     $self->send_event($event);
+
+    $self->log("POE: poe_run_event exit : event[$event_str]\n") if 
$self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 

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 Dec 13 
11:56:50 2007
@@ -247,14 +247,8 @@
 sub poe_cancel_async_event {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap, $arg0 ) = @_[ OBJECT, KERNEL, HEAP, ARG0 ];
+    $self->log("POE: poe_cancel_async_event enter\n") if 
$self->{options}{poe_trace};
     my ($runtime_event_token) = @$arg0;
-    $self->log({level=>2},"CN : poe_cancel_async_event : 
runtime_event_token=[$runtime_event_token]\n");
-    #$self->log({level=>2},"CN : poe_cancel_async_event : _state_poe : \n" . 
$self->_state_poe());
-    my $async_event = $self->{running_async_event}{$runtime_event_token};
-
-    for (my $i = 0; $i < @{$self->{pending_async_events}}; $i++) {
-        my $event_token = $self->{pending_async_events}[$i][0]{event_token};
-    }
 
     ### Find if running
     for my $pid (keys %{$self->{running_async_event}}) {
@@ -281,7 +275,9 @@
             splice(@{$self->{pending_async_events}}, $i, 1);
         }
     }
-     &App::sub_exit() if ($App::trace);
+
+    $self->log("POE: poe_cancel_async_event exit : 
runtime_event_token[$runtime_event_token]\n") if $self->{options}{poe_trace};
+    &App::sub_exit() if ($App::trace);
 }
 
 1;

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 Dec 13 
11:56:50 2007
@@ -25,6 +25,7 @@
 ### This doesn't help us much, and is a pain with
 ### a lot of CPAN dependencies, so commenting it out
 #use POE::API::Peek;
+#App->use("POE::API::Peek");
 use HTTP::Status qw/RC_OK/;
 use Socket qw(INADDR_ANY);
 use Data::Dumper;
@@ -334,7 +335,7 @@
     $state .= "\n";
 
     ### Only enable this in development, requires a library uncomment as well
-    #$state .= $self->_state_poe();
+    $state .= $self->_state_poe();
 
     ### THIS DOESN'T WORK YET
     #$state .= $self->_state_q();
@@ -352,19 +353,20 @@
     ### POE state dumping - Currently commented out because it doesn't gain us 
much
     ### in the way of visibility, and POE::API::Peek is a CPAN pain
     ### UNCOMMENT THIS IF YOU NEED IT, DEPENDS ON A PAINFUL LIBRARY
-    #my $api = POE::API::Peek->new();
-    #my @queue = $api->event_queue_dump();
-    #$state .= "POE event_queue_dump\n";
-    #my $first = 1;
-    #my $poe_stuff = [qw(ID index priority event type source destination)];
-    #for my $item (@queue) {
-    #    if ($first) {
-    #        $state .= sprintf("%7s %6s %20s %30s %15s %30s %30s\n", 
@$poe_stuff);
-    #        $first = 0;
-    #    }
-    #    $state .= sprintf("%7d %6d %20f %30s %15s %30s %30s\n", @[EMAIL 
PROTECTED]);
-    #}
-    #$state .= "\n";
+    App->use("POE::API::Peek");
+    my $api = POE::API::Peek->new();
+    my @queue = $api->event_queue_dump();
+    $state .= "POE event_queue_dump\n";
+    my $first = 1;
+    my $poe_stuff = [qw(ID index priority event type source destination)];
+    for my $item (@queue) {
+        if ($first) {
+            $state .= sprintf("%7s %6s %20s %30s %15s %30s %30s\n", 
@$poe_stuff);
+            $first = 0;
+        }
+        $state .= sprintf("%7d %6d %20f %30s %15s %30s %30s\n", @[EMAIL 
PROTECTED]);
+    }
+    $state .= "\n";
 
     return $state;
 }
@@ -780,7 +782,7 @@
 sub _start {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap ) = @_[ OBJECT, KERNEL, HEAP ];
-    $self->log({level=>2},"POE: _start\n") if $self->{options}{poe_trace};
+    $self->log("POE: _start enter\n") if $self->{options}{poe_trace};
 
     my $name = $self->{poe_session_name};
     $kernel->alias_set($name);
@@ -804,21 +806,23 @@
     $kernel->delay_set("poe_event_loop_extension", 5) if 
(!$self->{disable_event_loop_extensions});
     $kernel->delay_set("poe_alarm", 5);
 
+    $self->log("POE: _start exit\n") if $self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
 sub _stop {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap, $state, $args ) = @_[ OBJECT, KERNEL, HEAP, 
ARG0, ARG1 ];
-    $self->log({level=>2},"POE: _stop\n") if $self->{options}{poe_trace};
+    $self->log("POE: _stop enter\n") if $self->{options}{poe_trace};
     #sleep(1);  # take a second to let child processes to die (perhaps not 
necessary, perhaps necessary when using POE::Wheel::Run)
+    $self->log("POE: _stop exit\n") if $self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
 sub ikc_register {
     &App::sub_entry if ($App::trace);
     my ($self, $kernel, $session_name) = @_[OBJECT, KERNEL, ARG1];
-    $self->log({level=>2},"POE: ikc_register ($session_name)\n") if 
$self->{options}{poe_ikc_debug};
+    $self->log("POE: ikc_register ($session_name)\n") if 
$self->{options}{poe_ikc_debug};
     my ($retval);
     &App::sub_exit($retval) if ($App::trace);
     return($retval);
@@ -827,14 +831,14 @@
 sub ikc_unregister {
     &App::sub_entry if ($App::trace);
     my ($self, $kernel, $session_name) = @_[OBJECT, KERNEL, ARG1];
-    $self->log({level=>2},"POE: ikc_unregister ($session_name)\n") if 
$self->{options}{poe_ikc_debug};
+    $self->log("POE: ikc_unregister ($session_name)\n") if 
$self->{options}{poe_ikc_debug};
     &App::sub_exit() if ($App::trace);
 }
 
 sub ikc_shutdown {
     &App::sub_entry if ($App::trace);
     my ($self, $kernel, $arg0, $arg1, $arg2, $arg3) = @_[OBJECT, KERNEL, ARG0, 
ARG1, ARG2, ARG3];
-    $self->log({level=>2},"POE: ikc_shutdown args=($arg0, $arg1, $arg2, 
$arg3)\n") if $self->{options}{poe_ikc_debug};
+    $self->log("POE: ikc_shutdown args=($arg0, $arg1, $arg2, $arg3)\n") if 
$self->{options}{poe_ikc_debug};
     &App::sub_exit() if ($App::trace);
     return;
 }
@@ -842,6 +846,7 @@
 sub poe_yield {
     &App::sub_entry if ($App::trace);
     my ($self, $kernel, $state, $max_count) = @_;
+    $self->log("POE: poe_yield enter\n") if $self->{options}{poe_trace};
 
     my $count = $self->{poe_count}{$state} || 0;
     $max_count ||= 1;
@@ -851,6 +856,7 @@
         $kernel->yield($state);
     }
 
+    $self->log("POE: poe_yield exit : state[$state] poe_count[" . 
$self->{poe_count}{$state} . "]\n") if $self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
     return;
 }
@@ -858,6 +864,7 @@
 sub poe_yield_acknowledged {
     &App::sub_entry if ($App::trace);
     my ($self, $state) = @_;
+    $self->log("POE: poe_yield_acknowledged enter\n") if 
$self->{options}{poe_trace};
 
     if ($self->{poe_count}{$state}) {
         $self->{poe_count}{$state}--;
@@ -866,6 +873,7 @@
         $self->{poe_count}{$state} = 0;
     }
 
+    $self->log("POE: poe_yield_acknowledged exit : state[$state] poe_count[" . 
$self->{poe_count}{$state} . "]\n") if $self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
     return;
 }
@@ -873,7 +881,7 @@
 sub poe_sigterm {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap, $signame ) = @_[ OBJECT, KERNEL, HEAP, ARG0 ];
-    $self->log({level=>2},"POE: poe_sigterm (Caught signal $signame. 
quitting.)\n") if $self->{options}{poe_trace};
+    $self->log("POE: poe_sigterm enter\n") if $self->{options}{poe_trace};
 
     # How do I shut down the POE kernel now and exit?
     # I think I need to shut down the last session and the kernel will exit.
@@ -883,41 +891,39 @@
     #$kernel->yield("poe_shutdown");
     # However the signals which bring me here seem to do the shutdown for me, 
so it's unnecessary
 
+    $self->log("POE: poe_sigterm exit : signal[$signame]\n") if 
$self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
 sub poe_sigignore {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap, $signame ) = @_[ OBJECT, KERNEL, HEAP, ARG0 ];
-    $self->log({level=>2},"POE: poe_sigignore (Caught signal $signame. 
quitting.)\n") if $self->{options}{poe_trace};
+    $self->log("POE: poe_sigignore enter\n") if $self->{options}{poe_trace};
+
+    $self->log("POE: poe_sigignore exit : signal[$signame]\n") if 
$self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
 sub poe_sigchld {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap, $pid, $status ) = @_[ OBJECT, KERNEL, HEAP, 
ARG1, ARG2 ];
+    $self->log("POE: poe_sigchld enter\n") if $self->{options}{poe_trace};
+
     my $exitval = $status >> 8;
     my $sig     = $status & 255;
-    $self->log({level=>2},"POE: poe_sigchld (Child $pid finished 
[exitval=$exitval,sig=$sig])\n") if $self->{options}{poe_trace};
     $self->finish_pid($pid, $exitval, $sig);
+
+    $self->log("POE: poe_sigchld exit : child[$pid] exitval[$exitval] 
sig[$sig]\n") if $self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
 sub poe_alarm {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap ) = @_[ OBJECT, KERNEL, HEAP ];
+    $self->log("POE: poe_alarm enter\n") if $self->{options}{poe_trace};
+
     #$self->log({level=>2},"S: poe_alarm : poe_state : \n" . 
$self->_state_poe() . "\n");
-    $self->log({level=>2},"POE: poe_alarm (Dispatching pending events and 
queueing scheduled events)\n") if $self->{options}{poe_trace};
     my $main_service = $self->{main_service};
-    if ($self->{options}{poe_trace}) {
-        for my $async_event (@{$self->{pending_async_events}}) {
-            if ($main_service && $main_service->can("format_async_event")) {
-                my ($event, $callback_event) = @$async_event;
-                my $str = $main_service->format_async_event($event, 
$callback_event);
-                $self->log({level=>2},"POE: poe_alarm : pending_async_events : 
$str\n");
-            }
-        }
-    }
     
     ### This is mostly for the node, which needs this to spawn queued execute 
subrequest events
     ### without it, subrequests get acquired by the node never spawns children 
to shop it
@@ -932,7 +938,6 @@
         $time_of_next_event = $self->get_current_events([EMAIL PROTECTED], 
$time);
         if ($#events > -1) {
             foreach my $event (@events) {
-                $self->log({level=>2},"POE: poe_alarm : yield(poe_run_event, 
$event)\n") if $self->{options}{poe_trace};
                 $kernel->yield("poe_run_event", $event);  # put on the POE run 
queue
                 $events_occurred++;
             }
@@ -942,6 +947,8 @@
     # every time we process an alarm, we need to set the next one
     my $sec_until_next_event = $time_of_next_event - $time;
     $self->{alarm_id} = $kernel->delay_set("poe_alarm", $sec_until_next_event);
+
+    $self->log("POE: poe_alarm exit : events_occurred[$events_occurred] 
sec_until_next_event[$sec_until_next_event]\n") if $self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
@@ -949,7 +956,7 @@
 sub poe_shutdown {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $session, $heap ) = @_[ OBJECT, KERNEL, SESSION, HEAP 
];
-    $self->log({level=>2},"POE: poe_shutdown\n") if 
$self->{options}{poe_trace};
+    $self->log("POE: poe_shutdown enter\n") if $self->{options}{poe_trace};
 
     ### Abort all running async events
     for my $event_token (keys %{$self->{running_async_event}}) {
@@ -974,6 +981,7 @@
     ### Shut down POE IKC
     $kernel->post('IKC', 'shutdown');
 
+    $self->log("POE: poe_shutdown exit\n") if $self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
     return;
 }
@@ -981,17 +989,20 @@
 sub poe_dispatch_pending_async_events {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap, $arg ) = @_[ OBJECT, KERNEL, HEAP, ARG0 ];
-    $self->log({level=>2},"POE: poe_dispatch_pending_async_events\n") if 
$self->{options}{poe_trace};
+    $self->log("POE: poe_dispatch_pending_async_events enter\n") if 
$self->{options}{poe_trace};
 
     $self->poe_yield_acknowledged("poe_dispatch_pending_async_events");
     my $events_occurred = $self->dispatch_pending_async_events();
 
+    $self->log("POE: poe_dispatch_pending_async_events exit : 
events_occurred[$events_occurred]\n") if $self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
 sub poe_event_loop_extension {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap ) = @_[ OBJECT, KERNEL, HEAP ];
+    $self->log("POE: poe_event_loop_extension enter\n") if 
$self->{options}{poe_trace};
+
     $self->log({level=>2},"POE: poe_event_loop_extension\n") if 
$self->{options}{poe_trace};
     $self->poe_yield_acknowledged("poe_event_loop_extension");
     my $event_loop_extensions = $self->{event_loop_extensions};
@@ -1006,36 +1017,29 @@
         }
     }
 
-    ### We want to delay this if there is nothing to do (to prevent spinning 
unnecessary cycles constantly)
-
-    ### This was a bad first attempt, for some reason it always delayed,
-    ### even when there was splitting work to be done
-    #$self->log({level=>2}, "Server : poe_event_loop_extension : 
async_events_added[$async_events_added] pending_async_events[" . 
@{$self->{pending_async_events}} . "]\n");
-    #if ($async_events_added || @{$self->{pending_async_events}} > 0) {
-
-    ### This attempt keeps the splitting running, but when work finishes
-    ### some capacity on a node might go underutilized until the delay passes
-    ### Another downside is it tightly couples this implementation in an 
abstract class
-    $self->log({level=>2}, "Server : poe_event_loop_extension : 
async_events_added[$async_events_added] clear_pending[" . 
$self->count_in_pending_async_events("mvworkd", 
"_clear_pending_hotel_shop_requests") . "]\n");
-    #if ($async_events_added || 
$self->count_in_pending_async_events("mvworkd", 
"_clear_pending_hotel_shop_requests") > 0) {
     if ($async_events_added) {
         $self->poe_yield($kernel, "poe_dispatch_pending_async_events");
         $self->poe_yield($kernel, "poe_event_loop_extension");
     }
 
+    $self->log("POE: poe_event_loop_extension exit : event_loop_extensions[" . 
@$event_loop_extensions . "] async_events_added[$async_events_added]\n") if 
$self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
 sub trigger_event_loop_extension {
     &App::sub_entry if ($App::trace);
     my ($self) = @_;
+
     $self->poe_yield($self->{poe_kernel}, "poe_event_loop_extension");
+
     &App::sub_exit() if ($App::trace);
 }
 
 sub poe_run_event {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap, $event ) = @_[ OBJECT, KERNEL, HEAP, ARG0 ];
+    $self->log("POE: poe_run_event enter\n") if $self->{options}{poe_trace};
+
     my ($event_str);
     my $args = $event->{args} || [];
     my $args_str = join(",", @$args);
@@ -1046,8 +1050,9 @@
     else {
         $event_str = "$event->{method}($args_str)";
     }
-    $self->log({level=>2},"POE: poe_run_event ($event_str)\n") if 
$self->{options}{poe_trace};
     $self->send_event($event);
+
+    $self->log("POE: poe_run_event exit : event[$event_str]\n") if 
$self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
@@ -1055,12 +1060,13 @@
 sub poe_enqueue_async_event {
     &App::sub_entry if ($App::trace);
     my ($self, $kernel, $args) = @_[OBJECT, KERNEL, ARG0];
+    $self->log("POE: poe_enqueue_async_event enter\n") if 
$self->{options}{poe_trace};
     my ($sender, $event, $callback_event) = @$args;
-    $self->log({level=>2},"POE: poe_enqueue_async_event 
($event->{name}.$event->{method} token=$event->{event_token})\n") if 
$self->{options}{poe_trace};
 
     my $runtime_event_token = $self->send_async_event($event, { method => 
"async_event_finished", args => [ $sender, $event, $callback_event ], });
     $event->{event_token} = $runtime_event_token;
 
+    $self->log("POE: poe_enqueue_async_event exit : 
event[$event->{name}.$event->{method} token=$event->{event_token}] 
runtime_event_token[$runtime_event_token]\n") if $self->{options}{poe_trace};
     &App::sub_exit([$runtime_event_token, [$event, $callback_event]]) if 
($App::trace);
     return([$runtime_event_token, [$event, $callback_event]]);
 }
@@ -1069,9 +1075,12 @@
 sub poe_enqueue_async_event_finished {
     &App::sub_entry if ($App::trace);
     my ($self, $kernel, $return_values) = @_[OBJECT, KERNEL, ARG0];
+    $self->log("POE: poe_enqueue_async_event_finished enter\n") if 
$self->{options}{poe_trace};
+
     my ($runtime_event_token, $async_event) = @$return_values;
-    $self->log({level=>2},"POE: poe_enqueue_async_event_finished 
($async_event->[0]{name}.$async_event->[0]{method} => $runtime_event_token)\n") 
if $self->{options}{poe_trace};
     $self->{running_async_event}{$runtime_event_token} = $async_event;
+
+    $self->log("POE: poe_enqueue_async_event_finished exit : 
event[$async_event->[0]{name}.$async_event->[0]{method} => 
$runtime_event_token]\n") if $self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
@@ -1097,13 +1106,13 @@
 sub poe_remote_async_event_finished {
     &App::sub_entry if ($App::trace);
     my ($self, $kernel, $args) = @_[OBJECT, KERNEL, ARG0];
+    $self->log("POE: poe_remote_async_event_finished enter\n") if 
$self->{options}{poe_trace};
     my ($runtime_event_token, $callback_args) = @$args;
 
     my $async_event = $self->{running_async_event}{$runtime_event_token};
-
     if ($async_event) {
         my ($event, $callback_event) = @$async_event;
-        $self->log({level=>2},"POE: poe_remote_async_event_finished 
($event->{name}.$event->{method} => $runtime_event_token)\n") if 
$self->{options}{poe_trace};
+        $self->log({level=>2},"POE: poe_remote_async_event_finished : 
($event->{name}.$event->{method} => $runtime_event_token)\n") if 
$self->{options}{poe_trace};
         delete $self->{running_async_event}{$runtime_event_token};
 
         my $destination = $event->{destination} || "local";
@@ -1118,17 +1127,19 @@
             $self->log({level=>2},"Server: WARNING : 
poe_remote_async_event_finished called without callback_event : 
runtime_event_token[$runtime_event_token]\n");
         }
     }
-    else {
-        $self->log({level=>2},"POE: poe_remote_async_event_finished 
($runtime_event_token)\n") if $self->{options}{poe_trace};
-    }
 
+    $self->log("POE: poe_remote_async_event_finished exit\n") if 
$self->{options}{poe_trace};
     &App::sub_exit() if ($App::trace);
 }
 
 sub poe_server_state {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap ) = @_[ OBJECT, KERNEL, HEAP ];
+    $self->log("POE: poe_server_state enter\n") if $self->{options}{poe_trace};
+
     my $server_state = $self->state();
+
+    $self->log("POE: poe_server_state exit\n") if $self->{options}{poe_trace};
     &App::sub_exit($server_state) if ($App::trace);
     return $server_state;
 }
@@ -1136,16 +1147,17 @@
 sub poe_http_server_state {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap, $request, $response ) = @_[ OBJECT, KERNEL, 
HEAP, ARG0, ARG1 ];
-    $self->log({level=>2},"POE: poe_http_server_state\n") if 
$self->{options}{poe_http_debug};
-    my $server_state = $kernel->call( $self->{poe_session_name}, 
'poe_server_state' );
+    $self->log("POE: poe_http_server_state enter\n") if 
$self->{options}{poe_trace};
 
-    # Build the response.
+    my $server_state = $kernel->call( $self->{poe_session_name}, 
'poe_server_state' );
+    ### Build the response.
     $response->code(RC_OK);
     $response->push_header( "Content-Type", "text/plain" );
     $response->content($server_state);
-
-    # Signal that the request was handled okay.
+    ### Signal that the request was handled okay.
     $kernel->post( $self->{poe_kernel_http_name}, 'DONE', $response );
+
+    $self->log("POE: poe_http_server_state exit\n") if 
$self->{options}{poe_trace};
     &App::sub_exit(RC_OK) if ($App::trace);
     return RC_OK;
 }
@@ -1153,7 +1165,8 @@
 sub poe_http_test_run {
     &App::sub_entry if ($App::trace);
     my ( $self, $kernel, $heap, $request, $response ) = @_[ OBJECT, KERNEL, 
HEAP, ARG0, ARG1 ];
-    $self->log({level=>2},"POE: poe_http_test_run\n") if 
$self->{options}{poe_http_debug};
+    $self->log("POE: poe_http_test_run enter\n") if 
$self->{options}{poe_trace};
+
     my $event = {
         service_type => "SessionObject",
         name => "mvworkd",
@@ -1169,6 +1182,8 @@
 
     # Signal that the request was handled okay.
     $kernel->post( $self->{poe_kernel_http_name}, 'DONE', $response );
+
+    $self->log("POE: poe_http_test_run exit\n") if $self->{options}{poe_trace};
     &App::sub_exit(RC_OK) if ($App::trace);
     return RC_OK;
 }

Reply via email to