NAME

App::CPAN2Pkg::Module - poe session to drive a module packaging

DESCRIPTION

App::CPAN2Pkg::Module implements a POE session driving the whole packaging process of a given module.

It is spawned by App::CPAN2Pkg and implements the logic related to the module availability in the distribution.

METHODS

This package is also a class, used internally to store private data needed for the packaging stuff.

Constructor

my $module = App::CPAN2Pkg::Module->new(name=>$name)

Accessors

The following accessors are available:

is_avail_on_bs() - whether the module is available on build system
is_local() - whether the module is installed locally
name() - the module name
prereqs() - the module prereqs

Public methods

blocking_add( $module )

Add $module to the list of modules that current object is blocking from locally before trying to build the object.

blocking_clear( $module )

Remove $module from the list of modules missing locally. This means that module has been built and installed by cpan2pkg.

blocking_list( )

Get the list of modules missing before trying to build the object.

missing_add( $module )

Add $module to the list of modules missing locally before trying to build the object.

missing_del( $module )

Remove $module from the list of modules missing locally. This means that module has been built and installed by cpan2pkg.

missing_list( )

Get the list of modules missing before trying to build the object.

Public events accepted

available_on_bs()

Sent when module is available on upstream build system.

build_upstream()

Submit package to be build on upstream build system.

cpan2dist()

Build a native package for this module, using cpan2dist with the --force flag.

find_prereqs()

Start looking for any other module needed by current module.

import_upstream()

Try to import module into upstream distribution.

install_from_dist()

Try to install module from upstream distribution.

install_from_local()

Try to install module from package freshly build.

is_in_dist()

Check whether the package is provided by an existing upstream package.

is_installed()

Check whether the package is installed locally.

SEE ALSO

For all related information (bug reporting, source code repository, etc.), refer to App::CPAN2Pkg's pod, section SEE ALSO.

AUTHOR

Jerome Quelin, <jquelin@cpan.org>

COPYRIGHT & LICENSE

Copyright (c) 2009 Jerome Quelin, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.