diff options
Diffstat (limited to 'perllib/Open311/Endpoint/Service/Request')
-rw-r--r-- | perllib/Open311/Endpoint/Service/Request/Update.pm | 57 | ||||
-rw-r--r-- | perllib/Open311/Endpoint/Service/Request/mySociety.pm | 51 |
2 files changed, 0 insertions, 108 deletions
diff --git a/perllib/Open311/Endpoint/Service/Request/Update.pm b/perllib/Open311/Endpoint/Service/Request/Update.pm deleted file mode 100644 index b881af9ce..000000000 --- a/perllib/Open311/Endpoint/Service/Request/Update.pm +++ /dev/null @@ -1,57 +0,0 @@ -package Open311::Endpoint::Service::Request::Update; -use Moo; -use Types::Standard ':all'; -use namespace::clean; - -sub BUILDARGS { - my ($class, %args) = @_; - my $service_request = delete $args{service_request}; - - if (! $args{status}) { - $args{status} = $service_request->status; - } - - return \%args; -} - -has update_id => ( - is => 'ro', - isa => Maybe[Str], - predicate => 1, -); - -has service_request_id => ( - is => 'ro', - isa => Maybe[Str], - predicate => 1, -); - -has token => ( - is => 'ro', - isa => Maybe[Str], - predicate => 1, -); - -has status => ( - is => 'ro', - isa => Enum[qw/ open closed /], -); - -has description => ( - is => 'ro', - isa => Maybe[Str], -); - -has media_url => ( - is => 'ro', - isa => Str, - default => sub { '' }, -); - -has updated_datetime => ( - is => 'ro', - isa => InstanceOf['DateTime'], - default => sub { DateTime->now() }, -); - -1; diff --git a/perllib/Open311/Endpoint/Service/Request/mySociety.pm b/perllib/Open311/Endpoint/Service/Request/mySociety.pm deleted file mode 100644 index 85e31b26f..000000000 --- a/perllib/Open311/Endpoint/Service/Request/mySociety.pm +++ /dev/null @@ -1,51 +0,0 @@ -package Open311::Endpoint::Service::Request::mySociety; -use Moo; -use MooX::HandlesVia; -extends 'Open311::Endpoint::Service::Request'; - -use DateTime; -use Open311::Endpoint::Service::Request::Update; -use Types::Standard ':all'; - -has updates => ( - is => 'rw', - isa => ArrayRef[InstanceOf['Open311::Endpoint::Service::Request::Update']], - default => sub { [] }, - handles_via => 'Array', - handles => { - _add_update => 'push', - get_updates => 'elements', - get_update => 'get', - has_updates => 'count', - filter_updates => 'grep', - } -); - -sub add_update { - my ($self, %args) = @_; - my $update = Open311::Endpoint::Service::Request::Update->new( - %args, - service_request => $self, - service_request_id => $self->service_request_id, - ); - $self->_add_update($update); -} - -sub last_update { - my $self = shift; - return $self->has_updates ? $self->get_update(-1) : undef; -} - -around updated_datetime => sub { - my ($orig, $self) = @_; - my $last_update = $self->last_update or return; - return $last_update->updated_datetime; -}; - -around status => sub { - my ($orig, $self) = @_; - my $last_update = $self->last_update or return 'open'; - return $last_update->status; -}; - -1; |