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 )