Commit | Line | Data |
f6595170 |
1 | package SQL::Translator::Parser::Storable; |
2 | |
3 | # $Source: /home/faga/work/sqlfairy_svn/sqlfairy-cvsbackup/sqlfairy/lib/SQL/Translator/Parser/Storable.pm,v $ |
ca0022de |
4 | # $Id: Storable.pm,v 1.2 2003-10-08 20:35:52 phrrngtn Exp $ |
f6595170 |
5 | |
6 | =head1 NAME |
7 | |
8 | SQL::Translator::Parser::Storable - null parser for Schema objects that have already been created. |
9 | |
10 | =head1 SYNOPSIS |
11 | |
12 | use SQL::Translator; |
13 | use SQL::Translator::Parser::Storable; |
14 | |
15 | my $translator = SQL::Translator->new; |
16 | $translator->parser("SQL::Translator::Parser::Storable"); |
17 | |
18 | =head1 DESCRIPTION |
19 | |
20 | Slurps in a Schema from a Storable file on disk. You can then turn |
21 | the data into a database tables or graphs. |
22 | |
23 | =cut |
24 | |
25 | use strict; |
26 | use vars qw($DEBUG $VERSION @EXPORT_OK); |
27 | $DEBUG = 0 unless defined $DEBUG; |
ca0022de |
28 | $VERSION = sprintf "%d.%02d", q$Revision: 1.2 $ =~ /(\d+)\.(\d+)/; |
f6595170 |
29 | |
30 | use Storable; |
31 | use Exporter; |
32 | use SQL::Translator::Utils qw(debug normalize_name); |
33 | |
34 | use base qw(Exporter); |
35 | |
36 | @EXPORT_OK = qw(parse); |
37 | |
38 | sub parse { |
39 | my ($translator, $data) = @_; |
40 | |
ca0022de |
41 | if (defined($data)) { |
42 | $translator->{'schema'} = Storable::thaw($data); |
43 | return 1; |
44 | } elsif (defined($translator->filename)) { |
45 | $translator->{'schema'} = Storable::retrieve($translator->filename); |
46 | return 1; |
47 | } |
f6595170 |
48 | |
ca0022de |
49 | return 0; |
f6595170 |
50 | } |
51 | |
52 | 1; |
53 | |
54 | =pod |
55 | |
56 | =head1 SEE ALSO |
57 | |
58 | SQL::Translator::Parser::Excel; |
59 | |
60 | =head1 AUTHORS |
61 | |
62 | Paul Harrington <harringp@deshaw.com> |
63 | |
64 | =cut |