App-Netdisco
view release on metacpan or search on metacpan
lib/App/Netdisco/Backend/Job.pm view on Meta::CPAN
package App::Netdisco::Backend::Job;
use Dancer qw/:moose :syntax !error !params/;
use aliased 'App::Netdisco::Worker::Status';
use Moo;
use Try::Tiny;
use Term::ANSIColor qw(:constants :constants256);
use namespace::clean;
foreach my $slot (qw/
job
entered
started
finished
device
port
action
only_namespace
subaction
status
username
userip
log
device_key
backend
job_priority
is_cancelled
is_offline
_current_phase
/) {
has $slot => (
is => 'rw',
);
}
has '_statuslist' => (
is => 'rw',
default => sub { [] },
);
sub BUILD {
my ($job, $args) = @_;
if ($job->action =~ m/^(\w+)::(\w+)$/i) {
$job->action($1);
$job->only_namespace($2);
}
if (!defined $job->subaction) {
$job->subaction('');
}
}
=head1 METHODS
=head2 display_name
An attempt to make a meaningful written statement about the job.
=cut
sub display_name {
my $job = shift;
return join ' ',
( run in 1.956 second using v1.01-cache-2.11-cpan-6de40a662fe )