/[Frey]/trunk/lib/Frey/Session.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/Frey/Session.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 455 by dpavlin, Wed Nov 19 15:28:23 2008 UTC revision 562 by dpavlin, Thu Nov 27 21:04:35 2008 UTC
# Line 1  Line 1 
1  package Frey::Session;  package Frey::Session;
2  use Moose::Role;  use Moose::Role;
3    
4    with 'Frey::Path';
5    
6    __PACKAGE__->mkbasepath( 'var/session/something.db' );
7    
8  use DBM::Deep;  use DBM::Deep;
9  use Data::Dump qw/dump/;  use Data::Dump qw/dump/;
10    
11  has 'usage' => (  has 'usage' => (
12            documentation => 'Track usage of classes for ClassBrowser',
13          is => 'rw',          is => 'rw',
14          isa => 'DBM::Deep',          isa => 'DBM::Deep',
15          lazy => 1,          lazy => 1,
16          default => sub {          default => sub {
17                  DBM::Deep->new( 'var/usage.db' );                  DBM::Deep->new( 'var/session/usage.db' );
18          },          },
19  );  );
20    
21    has 'bugs' => (
22            documentation => 'Track bugs within Frey',
23            is => 'rw',
24            isa => 'DBM::Deep',
25            lazy => 1,
26            default => sub {
27                    DBM::Deep->new( 'var/session/bugs.db' );
28            },
29    );
30  sub as_data {  sub as_data {
31          my ($self) = @_;          my ($self) = @_;
32          $self->session_dump( $self->usage );          {
33                    usage => $self->session_dump( $self->usage ),
34                    bugs => $self->session_dump( $self->bugs ),
35            }
36  }  }
37    
38  sub session_dump {  sub session_dump {
# Line 31  sub session_dump { Line 48  sub session_dump {
48          return $data;          return $data;
49  }  }
50    
51    
52    sub TODO {
53            my ( $self, $what ) = @_;
54            eval {
55                    $self->bugs = {} unless defined $self->bugs; # bootstrap
56                    warn "TODO: $what" unless defined $self->bugs->{TODO}->{ $what };
57                    $self->bugs->{TODO}->{ $what }->{ time() } = {
58                            backtrace => caller,
59                    }
60            };
61            warn "TODO ERROR: $@\n$what" if $@;
62    }
63    
64  1;  1;

Legend:
Removed from v.455  
changed lines
  Added in v.562

  ViewVC Help
Powered by ViewVC 1.1.26