NAME

OpenInteract2::Setup::RequireClasses - Bring in one or a set of classes

SYNOPSIS

my $setup = OpenInteract2::Setup->new( 'require classes' );
# declare one at a time...
$setup->param( classes => 'Foo::Bar' );

# an arrayref...
$setup->param( classes => [ 'Foo::Bar', 'Foo::Baz' ] );

# or from a file... (one class per line)
$setup->param( classes_file => 'my_foo_classes.txt' );
$setup->run();

# Typical inlined usage from other setup classes
my $req = OpenInteract2::Setup->new(
     'require classes',
     classes      => [ keys %uniq_classes ],
     classes_type => 'Action classes',
)->run();

# Report on what was done
print "I brought in the following classes: ",
      join( ', ', @{ $req->param( 'required_classes' ) } );

DESCRIPTION

This setup action simply brings in a set of classes. The classes to bring in are found in one of two parameters:

  • classes: May be a single class or an arrayref of multiple classes.

  • classes_file: File listing classes to bring in, one class per line.

You can also specify the parameter classes_type to be used in any error message, which will look like this:

$CLASSES_TYPE: failed to require class '$SOME_CLASS': $ERROR

Subclassing

A useful strategy for a setup task whose only job is to bring in classes is to subclass this class and only implement setup() to set the classes parameter. See OpenInteract2::Setup::RequireIndexers as an example.

Setup Metadata

name - 'require classes'

dependencies - default

SEE ALSO

OpenInteract2::Setup

COPYRIGHT

Copyright (c) 2005 Chris Winters. All rights reserved.

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

AUTHORS

Chris Winters <chris@cwinters.com>