line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
package Elive::Entity::Role; |
2
|
7
|
|
|
7
|
|
1096
|
use warnings; use strict; |
|
7
|
|
|
7
|
|
10
|
|
|
7
|
|
|
|
|
230
|
|
|
7
|
|
|
|
|
37
|
|
|
7
|
|
|
|
|
13
|
|
|
7
|
|
|
|
|
187
|
|
3
|
|
|
|
|
|
|
|
4
|
7
|
|
|
7
|
|
30
|
use Mouse; |
|
7
|
|
|
|
|
13
|
|
|
7
|
|
|
|
|
36
|
|
5
|
7
|
|
|
7
|
|
2163
|
use Mouse::Util::TypeConstraints; |
|
7
|
|
|
|
|
21
|
|
|
7
|
|
|
|
|
53
|
|
6
|
|
|
|
|
|
|
|
7
|
|
|
|
|
|
|
extends 'Elive::Entity'; |
8
|
|
|
|
|
|
|
|
9
|
|
|
|
|
|
|
=head1 NAME |
10
|
|
|
|
|
|
|
|
11
|
|
|
|
|
|
|
Elive::Entity::Role - Elluminate Role entity class |
12
|
|
|
|
|
|
|
|
13
|
|
|
|
|
|
|
=head1 DESCRIPTION |
14
|
|
|
|
|
|
|
|
15
|
|
|
|
|
|
|
This is a structural class for Elive roles. It is a component of the |
16
|
|
|
|
|
|
|
L and L |
17
|
|
|
|
|
|
|
entities. |
18
|
|
|
|
|
|
|
|
19
|
|
|
|
|
|
|
=cut |
20
|
|
|
|
|
|
|
|
21
|
|
|
|
|
|
|
__PACKAGE__->entity_name('Role'); |
22
|
|
|
|
|
|
|
|
23
|
|
|
|
|
|
|
has 'roleId' => (is => 'rw', isa => 'Int', required => 1); |
24
|
|
|
|
|
|
|
__PACKAGE__->primary_key('roleId'); |
25
|
|
|
|
|
|
|
|
26
|
|
|
|
|
|
|
our ( $SYSTEM_ADMIN, $APPLICATION_ADMIN, $MODERATOR, $PARTICIPANT ); |
27
|
|
|
|
|
|
|
BEGIN { |
28
|
7
|
|
|
7
|
|
1386
|
$SYSTEM_ADMIN = 0; |
29
|
7
|
|
|
|
|
16
|
$APPLICATION_ADMIN = 1; |
30
|
7
|
|
|
|
|
10
|
$MODERATOR = 2; |
31
|
7
|
|
|
|
|
984
|
$PARTICIPANT = 3; |
32
|
|
|
|
|
|
|
} |
33
|
|
|
|
|
|
|
|
34
|
|
|
|
|
|
|
sub BUILDARGS { |
35
|
106
|
|
|
106
|
1
|
221
|
my $class = shift; |
36
|
106
|
|
|
|
|
129
|
my $spec = shift; |
37
|
|
|
|
|
|
|
|
38
|
106
|
|
|
|
|
108
|
my $args; |
39
|
106
|
100
|
66
|
|
|
469
|
if (defined $spec && ! ref $spec) { |
40
|
21
|
|
|
|
|
60
|
$args = {roleId => $spec}; |
41
|
|
|
|
|
|
|
} |
42
|
|
|
|
|
|
|
else { |
43
|
85
|
|
|
|
|
126
|
$args = $spec; |
44
|
|
|
|
|
|
|
} |
45
|
|
|
|
|
|
|
|
46
|
106
|
|
|
|
|
908
|
return $args; |
47
|
|
|
|
|
|
|
} |
48
|
|
|
|
|
|
|
|
49
|
|
|
|
|
|
|
coerce 'Elive::Entity::Role' => from 'HashRef|Int' |
50
|
|
|
|
|
|
|
=> via {Elive::Entity::Role->new($_) }; |
51
|
|
|
|
|
|
|
|
52
|
|
|
|
|
|
|
1; |