From 7a005adbf486cbb6c3f64ba26b1aa97c2f696025 Mon Sep 17 00:00:00 2001 From: dakkar Date: Sun, 9 Dec 2012 15:30:06 +0000 Subject: renaming roles --- lib/Feed/Role/FixDateTime.pm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 lib/Feed/Role/FixDateTime.pm (limited to 'lib/Feed/Role/FixDateTime.pm') diff --git a/lib/Feed/Role/FixDateTime.pm b/lib/Feed/Role/FixDateTime.pm new file mode 100644 index 0000000..86bc19a --- /dev/null +++ b/lib/Feed/Role/FixDateTime.pm @@ -0,0 +1,29 @@ +package Feed::Role::FixDateTime; +use Moose::Role; +use 5.016; +use namespace::autoclean; +use DateTime; + +requires 'process_entry'; + +before process_entry => sub { + my ($self,$entry) = @_; + + $self->log->trace('before process_entry - begin'); + + for my $f ('issued','modified') { + my $date = $entry->$f; + if (!$date) { + $date = DateTime->from_epoch(epoch=>0); + } + if ($date && $date->time_zone->is_floating) { + $date->set_time_zone('UTC'); + } + + $entry->$f($date); + } + + $self->log->trace('before process_entry - end'); +}; + +1; -- cgit v1.2.3