Authentication::Store::Htpasswd:
[catagits/Catalyst-Authentication-Store-Htpasswd.git] / lib / Catalyst / Plugin / Authentication / Store / Htpasswd / User.pm
index dc2bd83..7c7600f 100644 (file)
@@ -6,39 +6,44 @@ use base qw/Catalyst::Plugin::Authentication::User Class::Accessor::Fast/;
 use strict;
 use warnings;
 
-BEGIN { __PACKAGE__->mk_accessors(qw/file name/) }
+BEGIN { __PACKAGE__->mk_accessors(qw/user/) }
+
+use overload '""' => sub { shift->user->username };
 
 sub new {
-       my ( $class, $name, $file ) = @_;
+       my ( $class, $user ) = @_;
 
-       bless {
-               name => $name,
-               file => $file,
-       }, $class;
+       bless { user => $user }, $class;
 }
 
 sub supported_features {
        return {
                password => {
                        self_check => 1,
-               }
+               },
+               session => 1
        };
 }
 
 sub check_password {
        my ( $self, $password ) = @_;
 
-       return $self->file->htCheckPassword( $self->name, $password );
+       return $self->user->check_password( $password );
 }
 
 sub roles {
        my $self = shift;
-       split( ",", $self->info_string );
+       split( ",", $self->user->extra_info );
 }
 
-sub info_string {
-       my $self = shift;
-       $self->file->fetchInfo( $self->name );
+sub for_session {
+    my $self = shift;
+    return $self;
+}
+
+sub from_session {
+    my ($class,$c,$user) = @_;
+    return $user;
 }
 
 __PACKAGE__;