X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FObject%2FRemote%2FRole%2FConnector%2FPerlInterpreter.pm;h=60c0dd47556a34cda4a40fe72911524d8bc483dd;hb=f129bfaf05b1ae0e2e2992cad47a70482dec9885;hp=58eb93d157e444227a9f0465a0affc377319f5a1;hpb=37efeb68748dd589455d8ae58d39e74700abdd67;p=scpubgit%2FObject-Remote.git diff --git a/lib/Object/Remote/Role/Connector/PerlInterpreter.pm b/lib/Object/Remote/Role/Connector/PerlInterpreter.pm index 58eb93d..60c0dd4 100644 --- a/lib/Object/Remote/Role/Connector/PerlInterpreter.pm +++ b/lib/Object/Remote/Role/Connector/PerlInterpreter.pm @@ -16,6 +16,8 @@ with 'Object::Remote::Role::Connector'; has module_sender => (is => 'lazy'); has ulimit => ( is => 'ro' ); has nice => ( is => 'ro' ); +has watchdog_timeout => ( is => 'ro', required => 1, default => sub { undef } ); +has perl_command => (is => 'lazy'); #if no child_stderr file handle is specified then stderr #of the child will be connected to stderr of the parent @@ -28,13 +30,13 @@ sub _build_module_sender { return $hook ? $hook->sender : Object::Remote::ModuleSender->new; } -has perl_command => (is => 'lazy'); -has watchdog_timeout => ( is => 'ro', required => 1, default => sub { 0 } ); - #SSH requires the entire remote command to be #given as one single argument to the ssh #command line program so this jumps through #some hoops + +#TODO this is SSH's problem not perl's so move +#this to the SSH connector sub _build_perl_command { my ($self) = @_; my $nice = $self->nice; @@ -86,7 +88,7 @@ sub _start_perl { if (defined($given_stderr)) { #if the stderr data goes to an existing file handle - #an need an anonymous file handle is required + #an anonymous file handle is required #as the other half of a pipe style file handle pair #so the file handles can go into the run loop $foreign_stderr = gensym();