App-Schema-Data
view release on metacpan or search on metacpan
print STDERR "\t--version\t\tPrint version.\n";
print STDERR "\tdsn\t\t\tDatabase DSN. e.g. dbi:SQLite:dbname=ex1.db\n";
print STDERR "\tschema_data_module\tName of Schema data module.\n";
print STDERR "\tvar_key=var_value\tVariable keys with values for insert.\n";
return 1;
}
$self->{'_dsn'} = shift @ARGV;
$self->{'_schema_data_module'} = shift @ARGV;
$self->{'_variables'} = {
map {
my ($k, $v) = split m/=/ms, decode_utf8($_), 2;
($k => $v);
} @ARGV
};
eval "require $self->{'_schema_data_module'}";
if ($EVAL_ERROR) {
err 'Cannot load Schema data module.',
'Module name', $self->{'_schema_data_module'},
'Error', $EVAL_ERROR,
;
my $print_version = '';
if (defined $data_version) {
$print_version = '(v'.$data_version.') ';
}
print "Schema data ${print_version}from '$self->{'_schema_data_module'}' was ".
"inserted to '$self->{'_dsn'}'.\n";
my @plugins;
if (defined $self->{'_opts'}->{'l'}) {
@plugins = split m/:/ms, $self->{'_opts'}->{'l'};
}
foreach my $plugin (@plugins) {
# Load plugin object.
my $plugin_module = "$self->{'_schema_data_module'}::Plugin::$plugin";
eval "require $plugin_module";
if ($EVAL_ERROR) {
err 'Cannot load Schema data plugin module.',
'Module name', $plugin_module,
'Error', $EVAL_ERROR,
( run in 0.628 second using v1.01-cache-2.11-cpan-411bb0df24b )