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