<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -104,28 +104,7 @@ prepare_message
 sub new {
     my $package = shift;
 
-    my %options = Params::Validate::validate(
-        @_,
-        {
-            servers =&gt; {
-                type     =&gt; Params::Validate::ARRAYREF,
-                optional =&gt; 0,
-            },
-            worker =&gt; {
-                type     =&gt; Params::Validate::SCALAR,
-                optional =&gt; 0,
-            },
-            method =&gt; {
-                type    =&gt; Params::Validate::SCALAR,
-                regex   =&gt; qr/^(do|do_high|do_low|do_background|do_high_background|do_low_background)$/,
-                default =&gt; 'do_background',
-            },
-            prepare_message =&gt; {
-                type     =&gt; Params::Validate::CODEREF,
-                optional =&gt; 1,
-            },
-        }
-    );
+    my %options = $package-&gt;_validate(@_);
 
     my $self = bless \%options, $package;
 
@@ -207,6 +186,32 @@ sub _raise_error {
     return undef;
 }
 
+sub _validate {
+    my $self = shift;
+    return Params::Validate::validate(
+        @_,
+        {
+            servers =&gt; {
+                type     =&gt; Params::Validate::ARRAYREF,
+                optional =&gt; 0,
+            },
+            worker =&gt; {
+                type     =&gt; Params::Validate::SCALAR,
+                optional =&gt; 0,
+            },
+            method =&gt; {
+                type    =&gt; Params::Validate::SCALAR,
+                regex   =&gt; qr/^(do|do_high|do_low|do_background|do_high_background|do_low_background)$/,
+                default =&gt; 'do_background',
+            },
+            prepare_message =&gt; {
+                type     =&gt; Params::Validate::CODEREF,
+                optional =&gt; 1,
+            },
+        }
+    );
+}
+
 =head1 AUTHOR
 
 Johannes Plunien E&lt;lt&gt;plu@cpan.orgE&lt;gt&gt;</diff>
      <filename>lib/Log/Handler/Output/Gearman.pm</filename>
    </modified>
    <modified>
      <diff>@@ -8,7 +8,7 @@ eval { my $logger = Log::Handler::Output::Gearman-&gt;new(); };
 
 like(
     $@,
-    qr/Mandatory parameters 'worker', 'servers' missing in call to Log::Handler::Output::Gearman::new/,
+    qr/Mandatory parameters 'worker', 'servers' missing in call to Log::Handler::Output::Gearman::.*/,
     'Mandatory parameters missing'
 );
 
@@ -16,7 +16,7 @@ eval { my $logger = Log::Handler::Output::Gearman-&gt;new( method =&gt; 'invalid' ); }
 
 like(
     $@,
-    qr/The 'method' parameter \(&quot;invalid&quot;\) to Log::Handler::Output::Gearman::new did not pass regex check/,
+    qr/The 'method' parameter \(&quot;invalid&quot;\) to Log::Handler::Output::Gearman::.*? did not pass regex check/,
     'Invalid Gearman::XS::Client method'
 );
 
@@ -24,7 +24,7 @@ eval { my $logger = Log::Handler::Output::Gearman-&gt;new( servers =&gt; 'invalid' );
 
 like(
     $@,
-qr/The 'servers' parameter \(&quot;invalid&quot;\) to Log::Handler::Output::Gearman::new was a 'scalar', which is not one of the allowed types: arrayref/,
+qr/The 'servers' parameter \(&quot;invalid&quot;\) to Log::Handler::Output::Gearman::.*? was a 'scalar', which is not one of the allowed types: arrayref/,
     'Invalid servers parameter'
 );
 
@@ -38,7 +38,7 @@ eval {
 
 like(
     $@,
-qr/The 'prepare_message' parameter \(&quot;invalid&quot;\) to Log::Handler::Output::Gearman::new was a 'scalar', which is not one of the allowed types: coderef/,
+qr/The 'prepare_message' parameter \(&quot;invalid&quot;\) to Log::Handler::Output::Gearman::.*? was a 'scalar', which is not one of the allowed types: coderef/,
     'Invalid prepare_message parameter'
 );
 </diff>
      <filename>t/01-validate.t</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>ec5e9667bf0c8dfaf979b431d165d57f24707d00</id>
    </parent>
  </parents>
  <author>
    <name>Johannes Plunien</name>
    <email>johannes.plunien@xing.com</email>
  </author>
  <url>http://github.com/plu/log-handler-output-gearman/commit/ca5b2f643257e6c5b0ff7ab23af6f2a1f96901c4</url>
  <id>ca5b2f643257e6c5b0ff7ab23af6f2a1f96901c4</id>
  <committed-date>2009-10-31T14:58:11-07:00</committed-date>
  <authored-date>2009-10-31T14:58:11-07:00</authored-date>
  <message>Refactored parameter validation</message>
  <tree>bb7b53ca4b197bc3287af97da370a82f0236bf56</tree>
  <committer>
    <name>Johannes Plunien</name>
    <email>johannes.plunien@xing.com</email>
  </committer>
</commit>
