Checking in changes prior to tagging of version 0.10011. Changelog diff is:
[catagits/Catalyst-Plugin-Authentication.git] / lib / Catalyst / Plugin / Authentication.pm
index a878fe5..0e81f63 100644 (file)
@@ -2,18 +2,17 @@ package Catalyst::Plugin::Authentication;
 
 use base qw/Class::Accessor::Fast Class::Data::Inheritable/;
 
-BEGIN {
-    __PACKAGE__->mk_accessors(qw/_user/);
-}
+__PACKAGE__->mk_accessors(qw/_user/);
 
 use strict;
 use warnings;
 
+use MRO::Compat;
 use Tie::RefHash;
 use Class::Inspector;
 use Catalyst::Authentication::Realm;
 
-our $VERSION = "0.10009_01";
+our $VERSION = "0.10011";
 
 sub set_authenticated {
     my ( $c, $user, $realmname ) = @_;
@@ -34,7 +33,7 @@ sub set_authenticated {
 
     $c->persist_user();    
     
-    $c->NEXT::set_authenticated($user, $realmname);
+    $c->maybe::next::method($user, $realmname);
 }
 
 sub user {
@@ -99,7 +98,7 @@ sub persist_user {
         ## if we have a valid session handler - we store the 
         ## realm in the session.  If not - we have to hope that 
         ## the realm can recognize its frozen user somehow.
-        if ($c->isa("Catalyst::Plugin::Session") && 
+        if ($c->can('session') && 
             $c->config->{'Plugin::Authentication'}{'use_session'} && 
             $c->session_is_valid) {
         
@@ -132,7 +131,7 @@ sub logout {
         $realm->remove_persisted_user($c);
     }
     
-    $c->NEXT::logout(@_);
+    $c->maybe::next::method(@_);
 }
 
 sub find_user {
@@ -154,7 +153,7 @@ sub find_realm_for_persisted_user {
     my $c = shift;
     
     my $realm;
-    if ($c->isa("Catalyst::Plugin::Session")
+    if ($c->can('session')
         and $c->config->{'Plugin::Authentication'}{'use_session'}
         and $c->session_is_valid 
         and exists($c->session->{'__user_realm'})) {
@@ -189,7 +188,7 @@ sub auth_restore_user {
     $c->_user( my $user = $realm->restore_user( $c, $frozen_user ) );
     
     # this sets the realm the user originated in.
-    $user->auth_realm($realm->name);
+    $user->auth_realm($realm->name) if $user;
         
     return $user;
 
@@ -201,7 +200,7 @@ sub setup {
     my $app = shift;
 
     $app->_authentication_initialize();
-    $app->NEXT::setup(@_);
+    $app->next::method(@_);
 }
 
 ## the actual initialization routine. whee.
@@ -1051,6 +1050,8 @@ Jess Robinson
 
 David Kamholz
 
+Tomas Doran (t0m), C<bobtfish@bobtfish.net> 
+
 =head1 COPYRIGHT & LICENSE
 
         Copyright (c) 2005 the aforementioned authors. All rights