Commit | Line | Data |
cc73c25e |
1 | package SQL::Translator::Parser; |
2 | use Moose; |
d6201a5e |
3 | use MooseX::Types::Moose qw(Str); |
4 | use SQL::Translator::Types qw(DBIHandle); |
5 | #extends 'SQL::Translator'; |
cc73c25e |
6 | |
d6201a5e |
7 | my $apply_role_dbi = sub { |
8 | my $self = shift; |
9 | my $class = __PACKAGE__ . '::DBI'; |
10 | Class::MOP::load_class($class); |
11 | $class->meta->apply($self); |
12 | $self->_subclass(); |
13 | }; |
14 | |
15 | my $apply_role_ddl = sub { }; |
16 | |
17 | has 'dbh' => ( |
18 | isa => DBIHandle, |
19 | is => 'ro', |
20 | predicate => 'has_dbh', |
21 | trigger => $apply_role_dbi, |
22 | ); |
23 | |
24 | has 'ddl' => ( |
25 | isa => Str, |
26 | is => 'ro', |
27 | predicate => 'has_ddl', |
28 | trigger => $apply_role_ddl, |
29 | ); |
30 | |
31 | sub BUILD {} |
32 | |
33 | after BUILD => sub { |
34 | my $self = shift; |
35 | my $schema = SQL::Translator::Object::Schema->new({ name => $self->schema_name }); |
36 | $self->_add_tables($schema); |
37 | use Data::Dumper; |
38 | print Dumper($schema); |
39 | }; |
40 | |
41 | no Moose; |
42 | __PACKAGE__->meta->make_immutable; |
cc73c25e |
43 | 1; |