Accessors: I'd suggest using Class::Struct, although any of the three class-builders would do. The lvalue methods are neat, but I wouldn't depend on them.
Strict Hash Slots: This is trivial if you're using accessor methods -- replace your constructor behavior with something like the below, and any unsupported arguments will result in a "no such method" error:
my $self = bless {}, $class; while ( my($method, $value) = splice @_, 0, 2 ) { $self->$method( $value ); } return $self;
API Delegation: While accessing the internal Net::FTP object is a decent solution, I agree with your instinct to add delegation methods that correspond with the most useful bits of the API, or even to build them on demand using autoload.
In reply to Re: Balancing Concerns in Upgrading Net::FTP::Common
by simonm
in thread Balancing Concerns in Upgrading Net::FTP::Common
by princepawn
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |