Fix to columns_info_for for type(size)
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Validation.pm
index 623766c..b51c9c8 100644 (file)
@@ -4,10 +4,10 @@ use strict;
 use warnings;
 
 use base qw( DBIx::Class );
-use Carp qw( croak );
 use English qw( -no_match_vars );
 
-local $^W = 0; # Silence C:D:I redefined sub errors.
+#local $^W = 0; # Silence C:D:I redefined sub errors.
+# Switched to C::D::Accessor which doesn't do this. Hate hate hate hate.
 
 our $VERSION = '0.01';
 
@@ -20,8 +20,8 @@ sub validation_module {
     my $module = shift;
     
     eval("use $module");
-    croak("Unable to load the validation module '$module' because $EVAL_ERROR") if ($EVAL_ERROR);
-    croak("The '$module' module does not support the check method") if (!$module->can('check'));
+    $class->throw_exception("Unable to load the validation module '$module' because $EVAL_ERROR") if ($EVAL_ERROR);
+    $class->throw_exception("The '$module' module does not support the check method") if (!$module->can('check'));
     
     $class->_validation_module_accessor( $module );
 }
@@ -32,7 +32,7 @@ sub validation {
     
     $class->validation_module( $args{module} ) if (exists $args{module});
     $class->validation_profile( $args{profile} ) if (exists $args{profile});
-    $class->validatio_auto( $args{auto} ) if (exists $args{auto});
+    $class->validation_auto( $args{auto} ) if (exists $args{auto});
 }
 
 sub validate {
@@ -42,7 +42,7 @@ sub validate {
     my $profile = $self->validation_profile();
     my $result = $module->check( \%data => $profile );
     return $result if ($result->success());
-    croak( $result );
+    $self->throw_exception( $result );
 }
 
 sub insert {