package App::RunCron::Announcer::Command;
use strict;
use warnings;
use JSON::PP;
sub new {
my ($class, $command) = @_;
$command = ref $command ? $command : [$command];
bless $command, $c
lass;
}
sub run {
my ($self, $runner) = @_;
open my $pipe, '|-', @$self or die $!;
print $pipe encode_json($runner->announce_data);
close $pipe;
}
1;
package App::RunCron::Reporter::Command;
use strict;
use warnings;
use JSON::PP;
sub new {
my ($class, $command) = @_;
$command = ref $command ? $command : [$command];
bless $command, $cl
$pipe, '|-', @$self or die $!;
my $d = $runner->report_data;
$d->{is_success} = $d->{is_success} ? $JSON::PP::true : $JSON::PP::false;
print $pipe encode_json($d);
close $pipe;
}
1;