requires '_open2_for';
-#TODO return to 10 seconds after debugging
-#has timeout => (is => 'ro', default => sub { { after => 10 } });
-has timeout => (is => 'ro', default => sub { { after => 10 } });
+has timeout => (is => 'ro', default => sub { 10 });
sub connect {
my $self = shift;
- Dlog_debug { "Perparing to create connection with args of: $_" } @_;
+ Dlog_debug { "Preparing to create connection with args of: $_" } @_;
my ($send_to_fh, $receive_from_fh, $child_pid) = $self->_open2_for(@_);
my $channel = use_module('Object::Remote::ReadChannel')->new(
fh => $receive_from_fh
log_trace { "initialized events on channel for child pid '$child_pid'; creating timeout" };
Object::Remote->current_loop
->watch_time(
- %{$self->timeout},
+ after => $self->timeout,
code => sub {
-# log_warn { "Connection timed out for child pid '$child_pid'" };
-# $f->fail("Connection timed out") unless $f->is_ready;
-# undef($channel);
- Dlog_trace { "Connection timeout timer has fired for child pid '$child_pid'; is_ready: $_" } $f->is_ready;
+ Dlog_trace {"Connection timeout timer has fired for child pid '$child_pid'; is_ready: $_" } $f->is_ready;
unless($f->is_ready) {
log_warn { "Connection with child pid '$child_pid' has timed out" };
- $f->fail("Connection timed out") unless $f->is_ready;
+ $f->fail("Connection timed out") unless $f->is_ready;
}
undef($channel);