File Coverage

blib/lib/WebPresence/Profile.pm
Criterion Covered Total %
statement 6 35 17.1
branch 0 10 0.0
condition 0 5 0.0
subroutine 2 7 28.5
pod 2 4 50.0
total 10 61 16.3


line stmt bran cond sub pod time code
1             package WebPresence::Profile;
2              
3 1     1   16701 use strict;
  1         3  
  1         56  
4 1     1   6 use Carp;
  1         2  
  1         489  
5              
6             our $VERSION = '1.0';
7              
8             our $AUTOLOAD;
9              
10             sub new {
11 0 0   0 0   my $pkg = shift or return undef;
12 0           my $obj = {};
13 0           while (@_) {
14 0           my $k = shift;
15 0 0         if (@_) {
16 0           my $v = shift;
17 0           $obj->{$k} = $v;
18             }
19             else {
20 0           $obj->{$k} = undef;
21             }
22             }
23 0   0       bless $obj, ref $pkg || $pkg;
24 0 0         $obj->SetInfo($obj->{user}) if $obj->{'user'};
25 0           return $obj;
26             }
27              
28             sub SetInfo {
29 0     0 0   my $obj = shift;
30 0           my $user = shift;
31 0           $obj->{profile}->{user} = $user;
32             }
33              
34             sub Get {
35 0     0 1   my $obj = shift;
36 0           my $prop = shift;
37 0           return $obj->{profile}->{$prop};
38             }
39              
40             sub Set {
41 0     0 1   my $obj = shift;
42 0           my $prop = shift;
43 0           my $val = shift;
44 0           my $oldval = $obj->{profile}->{$prop};
45 0           $obj->{profile}->{$prop} = $val;
46 0   0       return $oldval || '0E0';
47             }
48              
49             sub AUTOLOAD {
50 0     0     my $obj = shift;
51 0 0         my $type = ref $obj or croak "$obj is not an object.";
52 0           my $prop = $AUTOLOAD;
53 0 0         if (@_) {
54 0           return $obj->Set($prop, shift);
55             }
56             else {
57 0           return $obj->Get($prop);
58             }
59             }
60              
61             1;
62              
63             __END__