NAME
TaskPipe::Tool::Command - base class for TaskPipe Tool commands
DESCRIPTION
See individual <TaskPipe::Tool::Command_...> packages for information on specific commands. You should not use this class directly.
You can create a new tool command by inheriting from this class. However, this is not for the faint-hearted and not recommended if you don't fully understand TaskPipe architecture.
The inherited package should look like this:
package TaskPipe::Tool::Command_NewCommand;
use Moose;
extends 'TaskPipe::Tool::Command';
with 'MooseX::ConfigCascade';
has option_specs => (is => 'ro', isa => 'ArrayRef', defaults => sub{[
# which options are available for your command?
# Enter settings attributes like this:
{
module: (name of module to take settings from)
items: [
# (arrayref of attributes to take from
# the module - or omit to take them all)
],
is_config: 1 # Boolean. Are the settings taken
from this module available in config
or just on command line?
},
{
# ...
}
]});
sub execute{
my ($self) = @_;
# execute the command here
}
1;
See the other TaskPipe::Tool::Command_
packages for examples of how to prepare a command.
AUTHOR
Tom Gracey <tomgracey@gmail.com>
COPYRIGHT AND LICENSE
Copyright (c) Tom Gracey 2018
TaskPipe is free software, licensed under
The GNU Public License Version 3