New importer, Nat. Geo. Wild.
[nonametv.git] / tools / nonametv-import-test
blob0514f7439a3bf4926dd1f18c2667b1e4ac197ee7
1 #!/usr/bin/perl -w
3 use strict;
5 use NonameTV;
6 use NonameTV::DataStore::Dummy;
7 use NonameTV::Config qw/ReadConfig/;
9 use Getopt::Long;
11 # Read configuration
12 my $conf = ReadConfig();
14 # Create Datastore
15 my $ds = NonameTV::DataStore::Dummy->new( $conf->{DataStore} );
17 # Create the right importer
18 my $imp_name = shift @ARGV;
19 my $contentname = shift @ARGV;
20 my $filename = shift @ARGV;
21 print "Content: $contentname\nFile: $filename\n";
23 my $imp_data = $conf->{Importers}->{$imp_name};
24 my $imp_type = $imp_data->{Type};
26 my $imp = eval "use NonameTV::Importer::$imp_type;
27 NonameTV::Importer::${imp_type}->new( \$imp_data, \$ds );"
28 or die $@;
30 my %opt = eval "\%NonameTV::Importer::${imp_type}::OptionDefaults";
31 my $option_spec = eval "\$NonameTV::Importer::${imp_type}::OptionSpec";
33 my $res = GetOptions( \%opt, @{$option_spec} );
35 # Run importer
36 $imp->ImportFile( $contentname, $filename, \%opt );