From c9af26b1194f693cd55fd9a7850bc168aeba7d27 Mon Sep 17 00:00:00 2001 From: dakkar Date: Sun, 27 Mar 2011 14:33:59 +0100 Subject: rework object creation now we unpack args before calling ->new --- lib/DeWeave/EDO.pm | 33 --------------------------------- 1 file changed, 33 deletions(-) (limited to 'lib/DeWeave/EDO.pm') diff --git a/lib/DeWeave/EDO.pm b/lib/DeWeave/EDO.pm index 81250d2..55422f7 100644 --- a/lib/DeWeave/EDO.pm +++ b/lib/DeWeave/EDO.pm @@ -2,9 +2,6 @@ package DeWeave::EDO; use Moose; use namespace::autoclean; use MooseX::Types::Moose qw(Int Str Num Bool); -use JSON::Any; -use Try::Tiny; -use DeWeave::Exception::Deleted; extends 'DeWeave::WBO'; @@ -35,34 +32,4 @@ has deleted => ( is => 'ro', ); -around BUILDARGS => sub { - my $orig = shift; - my $class = shift; - - my $args = $class->$orig(@_); - return $args unless defined $args->{__crypt}; - return $args unless exists $args->{ciphertext}; - - my $decrypted_payload = $args->{__crypt}->decrypt($args); - - if (defined $decrypted_payload) { - my $j = JSON::Any->new; - my $extra_args = $j->decode($decrypted_payload); - - @$args{keys %$extra_args} = - values %$extra_args; - } - - delete @$args{grep {!defined $args->{$_}} keys %$args}; - - $class->_debug_data('buildargs: ',$args); - - if ($args->{deleted}) { - delete $args->{__crypt}; - die DeWeave::Exception::Deleted->new({args=>$args}); - } - - return $args; -}; - 1; -- cgit v1.2.3