X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FAdmin.pm;h=b1e6020c37bf24e15ee435a62543d7beed9c17bc;hb=417e178451e10e72688582a3790d5398ad4f7538;hp=03238e1be1db8068cc2cb29135aa2eee9a335e6a;hpb=c57f1cf76f37aa747e1093309ff7c1fc8b11945c;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/lib/DBIx/Class/Admin.pm b/lib/DBIx/Class/Admin.pm index 03238e1..b1e6020 100644 --- a/lib/DBIx/Class/Admin.pm +++ b/lib/DBIx/Class/Admin.pm @@ -23,12 +23,14 @@ use MooseX::Types::Moose qw/Int HashRef ArrayRef Str Any/; use MooseX::Types::JSON qw(JSON); use MooseX::Types::Path::Class qw(Dir File); use Try::Tiny; + use parent 'Class::C3::Componentised'; -use Data::Dumper; use JSON::Any; +my @_deps = qw(Moose MooseX::Types MooseX::Types::JSON MooseX::Types::Path::Class Try::Tiny parent JSON::Any Class::C3::Componentised); + coerce ArrayRef, from JSON, via { _json_to_data ($_) }; @@ -543,6 +545,23 @@ sub _json_to_data { return $ret; } + +{ # deps check + +my @_missing_deps; +foreach my $dep (@_deps) { + eval "require $dep"; + if ($@) { + push @_missing_deps, $dep; + } +} + +if (@_missing_deps > 0) { + die "The following dependecies are missing " . join ",", @_missing_deps; +} + + +} =head1 AUTHOR Gordon Irving