From 912afcd11949777b4928409832ea58e7969b6ea8 Mon Sep 17 00:00:00 2001 From: Ian Docherty Date: Sun, 30 Dec 2012 12:39:44 -0500 Subject: [PATCH] Added missing modules --- lib/Lacuna/DB/ResultSet.pm | 8 ++++++++ lib/Lacuna/DB/ResultSet/Schedule.pm | 28 ++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 lib/Lacuna/DB/ResultSet.pm create mode 100644 lib/Lacuna/DB/ResultSet/Schedule.pm diff --git a/lib/Lacuna/DB/ResultSet.pm b/lib/Lacuna/DB/ResultSet.pm new file mode 100644 index 00000000..54b42ca0 --- /dev/null +++ b/lib/Lacuna/DB/ResultSet.pm @@ -0,0 +1,8 @@ +package Lacuna::DB::ResultSet; + +no warnings qw(uninitialized); +use namespace::autoclean -except => ['meta']; + +use base 'DBIx::Class::ResultSet'; + +1; diff --git a/lib/Lacuna/DB/ResultSet/Schedule.pm b/lib/Lacuna/DB/ResultSet/Schedule.pm new file mode 100644 index 00000000..677592df --- /dev/null +++ b/lib/Lacuna/DB/ResultSet/Schedule.pm @@ -0,0 +1,28 @@ +package Lacuna::DB::ResultSet::Schedule; + +use Moose; +use utf8; +no warnings qw(uninitialized); + +extends 'Lacuna::DB::ResultSet'; + +# Find an existing schedule, and reschedule it +# +sub reschedule { + my ($self, $args) = @_; + + my ($schedule) = $self->search({ + parent_table => $args->{parent_table}, + parent_id => $args->{parent_id}, + task => $args->{task}, + }); + $schedule->delete if defined $schedule; + + $schedule = $self->create($args); + return $schedule; +} + + +no Moose; +__PACKAGE__->meta->make_immutable(inline_constructor => 0); + -- 2.51.2