comparison Lib/IMPL/Security/Principal.pm @ 230:6d8092d8ce1b

*reworked IMPL::Security *reworked IMPL::Web::Security *refactoring
author sergey
date Mon, 08 Oct 2012 03:37:37 +0400
parents d1676be8afcc
children 16ff604298c7
comparison
equal deleted inserted replaced
229:47f77e6409f7 230:6d8092d8ce1b
1 package IMPL::Security::Principal; 1 package IMPL::Security::Principal;
2 use strict; 2 use strict;
3 use warnings; 3 use warnings;
4 4
5 use parent qw(IMPL::Object IMPL::Object::Autofill); 5 use IMPL::Const qw(:prop);
6 use IMPL::Class::Property; 6 use IMPL::require {
7 AbstractPrincipal => 'IMPL::Security::AbstractPrincipal'
8 };
9 use IMPL::declare {
10 base => [
11 'IMPL::Object' => undef,
12 'IMPL::Object::Autofill' => '@_',
13 'IMPL::Security::AbstractPrincipal' => undef
14 ],
15 props => [
16 @{AbstractPrincipal->abstractProps()}
17 ]
18 };
7 19
8 __PACKAGE__->PassThroughArgs; 20 __PACKAGE__->abstractProps([]);
9
10 BEGIN {
11 public property name => prop_get;
12 public property description => prop_all;
13 }
14 21
15 my $nobody; 22 my $nobody;
16 23
17 sub nobody { 24 sub nobody {
18 $nobody = $_[0]->new(name => 'nobody', description => '') unless $nobody; 25 $nobody = $_[0]->new(name => 'nobody', description => '') unless $nobody;