File: Log.pm

package info (click to toggle)
libclass-dbi-perl 3.0.17-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 548 kB
  • ctags: 251
  • sloc: perl: 2,118; makefile: 6
file content (35 lines) | stat: -rw-r--r-- 713 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package Log;

BEGIN { unshift @INC, './t/testlib'; }
use base 'MyBase';

use strict;
use Time::Piece::MySQL;
use POSIX;

__PACKAGE__->set_table();
__PACKAGE__->columns(All => qw/id message datetime_stamp/);
__PACKAGE__->has_a(
	datetime_stamp => 'Time::Piece',
	inflate        => 'from_mysql_datetime',
	deflate        => 'mysql_datetime'
);

__PACKAGE__->add_trigger(before_create => \&set_dts);
__PACKAGE__->add_trigger(before_update => \&set_dts);

sub set_dts {
	shift->datetime_stamp(
		POSIX::strftime('%Y-%m-%d %H:%M:%S', localtime(time)));
}

sub create_sql {
	return qq{
    id             INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    message        VARCHAR(255),
    datetime_stamp DATETIME
  };
}

1;