kill(1, -2);
}
-our $DEBUG = !!$ENV{OBJECT_REMOTE_DEBUG};
-
has _id => ( is => 'ro', required => 1, default => sub { our $NEXT_CONNECTION_ID++ } );
has send_to_fh => (
local our @New_Ids = (-1);
return eval {
my $flat = $self->_encode($self->_deobjectify($data));
- warn "$$ >>> ${flat}\n" if $DEBUG;
$flat;
} || do {
my $err = $@; # won't get here if the eval doesn't die
sub _receive {
my ($self, $flat) = @_;
- warn "$$ <<< $flat\n" if $DEBUG;
Dlog_trace { my $l = length($flat); "Starting to deserialize $l characters of data for connection $_" } $self->_id;
my ($type, @rest) = eval { @{$self->_deserialize($flat)} }
or do { warn "Deserialize failed for ${flat}: $@"; return };
log_debug { "locating source for module '$module'" };
if (my $find = Object::Remote::FromData->can('find_module')) {
if (my $source = $find->($module)) {
- Dlog_trace { "Object::Remote::FromData->find_module('$module') returned '$_'" } $source;
+ Dlog_trace { "source of '$module' was found by Object::Remote::FromData" };
return $source;
}
}
$text = "my \$WATCHDOG_TIMEOUT = undef;\n";
}
- $text .= 'BEGIN { $ENV{OBJECT_REMOTE_DEBUG} = 1 }'."\n"
- if $ENV{OBJECT_REMOTE_DEBUG};
$text .= <<'END';
$INC{'Object/Remote/FatNode.pm'} = __FILE__;
$Object::Remote::FatNode::DATA = <<'ENDFAT';