| CPANPLUS documentation | Contained in the CPANPLUS distribution. |
CPANPLUS::Module::Fake
my $obj = CPANPLUS::Module::Fake->new(
module => 'Foo',
path => 'ftp/path/to/foo',
author => CPANPLUS::Module::Author::Fake->new,
package => 'fake-1.1.tgz',
_id => $cpan->_id,
);
A class for creating fake module objects, for shortcut use internally by CPANPLUS.
Inherits from CPANPLUS::Module.
Creates a dummy module object from the above parameters. It can
take more options (same as CPANPLUS::Module->new but the above
are required.
| CPANPLUS documentation | Contained in the CPANPLUS distribution. |
package CPANPLUS::Module::Fake; use CPANPLUS::Error; use CPANPLUS::Module; use CPANPLUS::Module::Author::Fake; use CPANPLUS::Internals; use strict; use vars qw[@ISA]; use Params::Check qw[check]; @ISA = qw[CPANPLUS::Module]; $Params::Check::VERBOSE = 1;
sub new { my $class = shift; my %hash = @_; local $Params::Check::ALLOW_UNKNOWN = 1; my $tmpl = { module => { required => 1 }, path => { required => 1 }, package => { required => 1 }, _id => { default => CPANPLUS::Internals->_last_id }, author => { default => '' }, }; my $args = check( $tmpl, \%hash ) or return; $args->{author} ||= CPANPLUS::Module::Author::Fake->new( _id => $args->{_id} ); my $obj = CPANPLUS::Module->new( %$args ) or return; unless( $obj->_id ) { error(loc("No '%1' specified -- No CPANPLUS object associated!",'_id')); return; } ### rebless object ### return bless $obj, $class; } 1; # Local variables: # c-indentation-style: bsd # c-basic-offset: 4 # indent-tabs-mode: nil # End: # vim: expandtab shiftwidth=4: