|
Lines 132-137
if ($destination_server_id) {
Link Here
|
| 132 |
unless $file_transport; |
132 |
unless $file_transport; |
| 133 |
} |
133 |
} |
| 134 |
|
134 |
|
|
|
135 |
# Validate flag combinations |
| 136 |
if ( $delete_local_after_run && !$destination_server_id ) { |
| 137 |
pod2usage("--delete_local_after_run requires --destination_server_id to be specified"); |
| 138 |
} |
| 139 |
|
| 135 |
if ($report_id) { |
140 |
if ($report_id) { |
| 136 |
|
141 |
|
| 137 |
# Check report exists |
142 |
# Check report exists |
|
Lines 355-377
if ($deleted_barcodes) {
Link Here
|
| 355 |
} |
360 |
} |
| 356 |
|
361 |
|
| 357 |
if ($file_transport) { |
362 |
if ($file_transport) { |
| 358 |
$file_transport->connect |
|
|
| 359 |
or die pod2usage( sprintf( "Unable to connect server (%s)", $destination_server_id ) ); |
| 360 |
|
363 |
|
|
|
364 |
# Verify the file was created successfully before attempting upload |
| 365 |
unless ( -f $filename ) { |
| 366 |
die "Error: Output file '$filename' was not created successfully\n"; |
| 367 |
} |
| 368 |
|
| 369 |
# Connect to the transport |
| 370 |
unless ( $file_transport->connect ) { |
| 371 |
die sprintf( "Error: Unable to connect to file transport server (ID: %s)\n", $destination_server_id ); |
| 372 |
} |
| 373 |
|
| 374 |
# Change to upload directory if specified |
| 361 |
my $upload_dir = $file_transport->upload_directory; |
375 |
my $upload_dir = $file_transport->upload_directory; |
| 362 |
if ($upload_dir) { |
376 |
if ($upload_dir) { |
| 363 |
$file_transport->change_directory($upload_dir) |
377 |
unless ( $file_transport->change_directory($upload_dir) ) { |
| 364 |
or die pod2usage( |
378 |
$file_transport->disconnect; |
| 365 |
sprintf( "Unable to change directory on server (%s) to path (%s)", $destination_server_id, $upload_dir ) ); |
379 |
die sprintf( |
|
|
380 |
"Error: Unable to change to upload directory '%s' on server (ID: %s)\n", $upload_dir, |
| 381 |
$destination_server_id |
| 382 |
); |
| 383 |
} |
| 384 |
} |
| 385 |
|
| 386 |
# Upload the file |
| 387 |
unless ( $file_transport->upload_file( $filename, $filename ) ) { |
| 388 |
$file_transport->disconnect; |
| 389 |
die sprintf( "Error: Unable to upload file '%s' to server (ID: %s)\n", $filename, $destination_server_id ); |
| 366 |
} |
390 |
} |
| 367 |
|
391 |
|
| 368 |
$file_transport->upload_file( $filename, $filename ) |
392 |
# Always disconnect when done |
| 369 |
or die pod2usage( sprintf( "Unable to upload file (%s) to server (%s)", $filename, $destination_server_id ) ); |
393 |
$file_transport->disconnect; |
|
|
394 |
|
| 395 |
print STDERR "Successfully uploaded '$filename' to file transport server (ID: $destination_server_id)\n"; |
| 370 |
} |
396 |
} |
| 371 |
|
397 |
|
| 372 |
if ($delete_local_after_run) { |
398 |
if ($delete_local_after_run) { |
| 373 |
unlink $filename |
399 |
if ( -f $filename ) { |
| 374 |
or die pod2usage( sprintf( "Unable to delete local file (%s)", $filename ) ); |
400 |
unless ( unlink $filename ) { |
|
|
401 |
die sprintf( "Error: Unable to delete local file '%s': %s\n", $filename, $! ); |
| 402 |
} |
| 403 |
print STDERR "Successfully deleted local file '$filename'\n"; |
| 404 |
} |
| 375 |
} |
405 |
} |
| 376 |
|
406 |
|
| 377 |
exit; |
407 |
exit; |
| 378 |
- |
|
|