diff options
author | Christian Pointner <equinox@helsinki.at> | 2012-01-20 22:54:46 (GMT) |
---|---|---|
committer | Christian Pointner <equinox@helsinki.at> | 2012-01-20 22:54:46 (GMT) |
commit | b0e2a62cbc92cac628ff8d3565b2e310aad0c4c1 (patch) | |
tree | b2f59ab1f9d0cc4f1820fdcf3eb13d22dc3aa4b9 | |
parent | 00b024abb5c021d2921249e152bf9d844326b92a (diff) |
moved pv add note to rhimport modul
git-svn-id: https://svn.helsinki.at/rhimport/trunk@117 7c65635b-ec39-4f67-a626-873dbafdd612
-rwxr-xr-x | rhimport-dn | 20 | ||||
-rwxr-xr-x | rhimport-rs | 40 | ||||
-rwxr-xr-x | rhimport-wl | 20 | ||||
-rw-r--r-- | rhimport.pm | 27 |
4 files changed, 31 insertions, 76 deletions
diff --git a/rhimport-dn b/rhimport-dn index b228bf0..d712c9b 100755 --- a/rhimport-dn +++ b/rhimport-dn @@ -134,25 +134,7 @@ for my $entry ($headlines_feed->entries) { print "summary:\n" . $sum_title . "\n\n" . $sum_text . "\n"; push(@PV_SCRIPT, sprintf("%04d-%02d-%02d", $today[0], $today[1], $today[2])); - my ($reader, $writer, $error ) = ( new IO::Handle, new IO::Handle, new IO::Handle ); - $writer->autoflush(1); - local $SIG{CHLD} = 'DEFAULT'; - my $pid = open3($writer, $reader, $error, @PV_SCRIPT); - binmode($reader, ":utf8"); - binmode($writer, ":utf8"); - binmode($error, ":utf8"); - print $writer $sum_title . "\n" . $sum_text; - close $writer; - waitpid $pid, 0; - if ( $? >> 8 ) { - print "\n\nPV: adding note returned non-zero value\n"; - print "STDERR:\n" . join('', <$error>) . "\n"; - print "STDOUT:\n" . join('', <$reader>) . "\n"; - print "Ignoring failed headline import!\n"; - } else { - print join('', <$reader>) . "\n"; - print join('', <$error>) . "\n"; - } + rhimport::pv_add_note($sum_title, $sum_text, @PV_SCRIPT); print "\n"; } } diff --git a/rhimport-rs b/rhimport-rs index 276d612..13ea5a3 100755 --- a/rhimport-rs +++ b/rhimport-rs @@ -115,47 +115,11 @@ for my $entry ($feed->entries) { print "summary:\n" . $sum_title . "\n\n" . $sum_text . "\n"; push(@PV_SCRIPT, sprintf("%04d-%02d-%02d", $import_date[0], $import_date[1], $import_date[2])); - my ($reader, $writer, $error ) = ( new IO::Handle, new IO::Handle, new IO::Handle ); - $writer->autoflush(1); - local $SIG{CHLD} = 'DEFAULT'; - my $pid = open3($writer, $reader, $error, @PV_SCRIPT); - binmode($reader, ":utf8"); - binmode($writer, ":utf8"); - binmode($error, ":utf8"); - print $writer $sum_title . "\n" . $sum_text; - close $writer; - waitpid $pid, 0; - if ( $? >> 8 ) { - print "\n\nPV: adding note returned non-zero value\n"; - print "STDERR:\n" . join('', <$error>) . "\n"; - print "STDOUT:\n" . join('', <$reader>) . "\n"; - print "Ignoring failed headline import!\n"; - } else { - print join('', <$reader>) . "\n"; - print join('', <$error>) . "\n"; - } + rhimport::pv_add_note($sum_title, $sum_text, @PV_SCRIPT); print "\n"; push(@PV_SCRIPT_REB, sprintf("%04d-%02d-%02d", $import_date_reb[0], $import_date_reb[1], $import_date_reb[2])); - ($reader, $writer, $error ) = ( new IO::Handle, new IO::Handle, new IO::Handle ); - $writer->autoflush(1); - local $SIG{CHLD} = 'DEFAULT'; - $pid = open3($writer, $reader, $error, @PV_SCRIPT_REB); - binmode($reader, ":utf8"); - binmode($writer, ":utf8"); - binmode($error, ":utf8"); - print $writer $sum_title . "\n" . $sum_text; - close $writer; - waitpid $pid, 0; - if ( $? >> 8 ) { - print "\n\nPV: adding note returned non-zero value\n"; - print "STDERR:\n" . join('', <$error>) . "\n"; - print "STDOUT:\n" . join('', <$reader>) . "\n"; - print "Ignoring failed headline import!\n"; - } else { - print join('', <$reader>) . "\n"; - print join('', <$error>) . "\n"; - } + rhimport::pv_add_note($sum_title, $sum_text, @PV_SCRIPT_REB); print "\n"; last; diff --git a/rhimport-wl b/rhimport-wl index cf51b73..6c2d314 100755 --- a/rhimport-wl +++ b/rhimport-wl @@ -100,25 +100,7 @@ for my $entry ($feed->entries) { my @tomorrow = Date::Calc::Add_Delta_Days($today[0], $today[1], $today[2], 1); push(@PV_SCRIPT, sprintf("%04d-%02d-%02d", $tomorrow[0], $tomorrow[1], $tomorrow[2])); - my ($reader, $writer, $error ) = ( new IO::Handle, new IO::Handle, new IO::Handle ); - $writer->autoflush(1); - local $SIG{CHLD} = 'DEFAULT'; - my $pid = open3($writer, $reader, $error, @PV_SCRIPT); - binmode($reader, ":utf8"); - binmode($writer, ":utf8"); - binmode($error, ":utf8"); - print $writer $sum_title . "\n" . $sum_text; - close $writer; - waitpid $pid, 0; - if ( $? >> 8 ) { - print "\n\nPV: adding note returned non-zero value\n"; - print "STDERR:\n" . join('', <$error>) . "\n"; - print "STDOUT:\n" . join('', <$reader>) . "\n"; - print "Ignoring failed headline import!\n"; - } else { - print join('', <$reader>) . "\n"; - print join('', <$error>) . "\n"; - } + rhimport::pv_add_note($sum_title, $sum_text, @PV_SCRIPT); print "\n"; } } diff --git a/rhimport.pm b/rhimport.pm index d44c34b..6e125d2 100644 --- a/rhimport.pm +++ b/rhimport.pm @@ -327,4 +327,31 @@ sub delete_file return 1; } +sub pv_add_note +{ + my $title = shift; + my $text = shift; + my @script = @_; + + my ($reader, $writer, $error ) = ( new IO::Handle, new IO::Handle, new IO::Handle ); + $writer->autoflush(1); + local $SIG{CHLD} = 'DEFAULT'; + my $pid = open3($writer, $reader, $error, @script); + binmode($reader, ":utf8"); + binmode($writer, ":utf8"); + binmode($error, ":utf8"); + print $writer $title . "\n" . $text; + close $writer; + waitpid $pid, 0; + if ( $? >> 8 ) { + print "\n\nPV: adding note returned non-zero value\n"; + print "STDERR:\n" . join('', <$error>) . "\n"; + print "STDOUT:\n" . join('', <$reader>) . "\n"; + print "Ignoring failed headline import!\n"; + } else { + print join('', <$reader>) . "\n"; + print join('', <$error>) . "\n"; + } +} + 1; |