Akira Horimoto > App-CLI-Plugin-Config-YAML-Syck-0.02 > App::CLI::Plugin::Config::YAML::Syck

Download:
App-CLI-Plugin-Config-YAML-Syck-0.02.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
Report a bug
Module Version: 0.02   Source   Latest Release: App-CLI-Plugin-Config-YAML-Syck-0.3

NAME ^

App::CLI::Plugin::Config::YAML::Syck - for App::CLI::Extension config plugin module

VERSION ^

0.02

SYNOPSIS ^

  # YourApp.pm
  package YourApp;

  use strict;
  use base qw(App::CLI::Extension);

  # extension method
  __PACKAGE__->load_plugins(qw(Config::YAML::Syck));
  
  # extension method
  __PACKAGE__->config( config_file => "/path/to/config.yaml");
  
  1;


  # /path/to/config.yaml
  ---
  name: kurt
  age:  27

  # YourApp/Hello.pm
  package YourApp:Hello;

  use strict;
  use base qw(App::CLI::Command);

  sub run {

      my($self, @args) = @_;
      print "Hello! my name is " . $self->config->{name} . "\n";
      print "age is " . "$self->config->{age}\n";
  }

  # yourapp
  #!/usr/bin/perl

  use strict;
  use YourApp;

  YourApp->dispatch;

  # execute
  [kurt@localhost ~] youapp hello
  Hello! my name is kurt
  age is 27

DESCRIPTION ^

App::CLI::Extension YAML::Syck Configuration plugin module

The priority of the config file (name of the execute file in the case of [yourapp])

1. /etc/yourapp.yaml

2. /usr/local/etc/yourapp.yaml

3. $ENV{HOME}/.yourapp.yaml

4. command line option

   yourapp hello --config_file=/path/to/config.yaml

5. config method setting

   __PACKAGE__->config(config_file => "/path/to/config.yaml");

EXTENDED METHOD ^

setup

SEE ALSO ^

App::CLI::Extension NEXT Path::Class YAML::Syck

AUTHOR ^

Akira Horimoto

COPYRIGHT AND LICENSE ^

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

Copyright (C) 2008 Akira Horimoto