module::starter::plugin::dirstore(3pm) [debian man page]
Module::Starter::Plugin::DirStore(3pm) User Contributed Perl Documentation Module::Starter::Plugin::DirStore(3pm)NAME
Module::Starter::Plugin::DirStore -- module template files in a directory
VERSION
version 0.144
SYNOPSIS
use Module::Starter qw(
Module::Starter::Simple
Module::Starter::Plugin::Template
Module::Starter::Plugin::DirStore
...
);
Module::Starter->create_distro( ... );
DESCRIPTION
This Module::Starter plugin is intended to be loaded after Module::Starter::Plugin::Template. It implements the "templates" method,
required by the Template plugin. The "DirStore" plugin stores all the required templates as files in a directory.
METHODS
"templates"
This method reads in the template files and populates the object's "templates" attribute. The module template directory is found by
checking the MODULE_TEMPLATE_DIR environment variable and then the config option "template_dir".
AUTHOR
Ricardo SIGNES, "<rjbs@cpan.org>"
Bugs
Please report any bugs or feature requests to "bug-module-starter-plugin-inlinestore@rt.cpan.org", or through the web interface at
<http://rt.cpan.org>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
COPYRIGHT
Copyright 2004 Ricardo SIGNES, All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
perl v5.14.2 2011-12-23 Module::Starter::Plugin::DirStore(3pm)
Check Out this Related Man Page
Module::Starter::Plugin(3pm) User Contributed Perl Documentation Module::Starter::Plugin(3pm)NAME
Module::Starter::Plugin -- how Module::Starter plugins work
DESCRIPTION
This document is a guide to writing plugins for Module::Starter. Currently, as is evident, it isn't very comprehensive. It should provide
enough information for writing effective plugins, though. After all, Module::Starter's guts are nice and simple.
"Module::Starter->import"
Module::Starter provides an import method, the arguments to which are plugins, in the order in which they should be loaded. If no plugins
are given, Module::Starter::Simple (and only Module::Starter::Simple) is loaded.
By default, the given modules are required and arranged in an is-a chain. That is, Module::Starter subclasses the last plugin given, which
subclasses the second-to-last, up to the first plugin given, which is the base class. If a plugin provides a "load_plugins" method,
however, the remaining plugins to be loaded are passed to that method, which is responsible for loading the rest of the plugins.
This architecture suggests two kinds of plugins:
engine plugins
An engine is a plugin that stands alone, implementing the public "create_distro" method and all the functionality required to carry out
that implementation. The only engine included with Module::Starter is Module::Starter::Simple, and I'm not sure any more will be seen in
the wild any time soon.
plain old plugins
Other plugins are designed to subclass an engine and alter its behavior, just as a normal subclass alters its parent class's. These
plugins may add features to Module::Starter engines, or may just provide general APIs for other plugins to exploit (like
Module::Starter::Plugin::Template.)
The template plugin is a simple example of a plugin that alters an engine to accept further plugins. Other plugins like template will
probably be written in the near future, and plugins that exploit the API provided by Module::Starter::Plugin::Template will be available on
the CPAN.
AUTHOR
Ricardo SIGNES "<rjbs at cpan.org>"
COPYRIGHT
Copyright 2005, Ricardo SIGNES. All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
perl v5.12.4 2010-05-28 Module::Starter::Plugin(3pm)