Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: Help with Net::FTP module

by runrig (Abbot)
on Jan 08, 2013 at 17:42 UTC ( #1012296=note: print w/ replies, xml ) Need Help??


in reply to Help with Net::FTP module

The object is defined, but it won't work anymore, and you should get errors if you try to do anything with it (assuming you are checking for errors). You'll have to reconnect with a new object if you lose the connection.


Comment on Re: Help with Net::FTP module
Re^2: Help with Net::FTP module
by spacebar (Beadle) on Jan 09, 2013 at 05:12 UTC
    I would recommend changing the timeout to +240 and check/use return value after each operation, something like:

    sub ftp_put_file { # If rename_file = "Y" transfer file with '.xferring' as extension. if ( $rename_file eq "Y" ) { $file_name_to_xfer = "$file_name" . ".xferring"; } else { $file_name_to_xfer = "$file_name"; } $ftp->put( "${source_directory}/${file_name}", "${file_name_to_xfer} +" ) or $retval = 1; if ($retval == 1) { print "**Error occurred .........etc.\n"; } else { print "**Successfully put file(${source_directory}/${file_name_to_ +xfer}) to host($host).\n"; } return $retval; } # End ftp_put_file()

      I prefer exceptions and including the reason for failure, and I don't care for functions that return non-zero (true) on failure (perl is not 'C' or shell) nor unnecessarily wrapping variables in quotes, so I might write you sub more like (I also would probably pass in arguments and make it self-contained and 'use strict' compliant, but I'll leave that out for now):
      sub ftp_put_file { # If rename_file = "Y" transfer file with '.xferring' as extension. if ( $rename_file eq "Y" ) { $file_name_to_xfer = "$file_name.xferring"; } else { $file_name_to_xfer = $file_name; } $ftp->put( "$source_directory/$file_name", $file_name_to_xfer ) or d +ie "Failed to transfer $source_directory/$file_name: ".$ftp->message( +); print "**Successfully put file($source_directory/$file_name_to_xfer) + to host($host).\n"; return 1; } # End ftp_put_file()

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1012296]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (15)
As of 2014-07-24 13:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (160 votes), past polls