use strict;
use warnings;
-use Object::Tiny qw/config command/;
-
use App::Rgit::Command;
use App::Rgit::Config;
-use App::Rgit::Utils qw/validate/;
=head1 NAME
=head1 VERSION
-Version 0.05
+Version 0.06
=cut
-our $VERSION = '0.05';
+our $VERSION = '0.06';
=head1 DESCRIPTION
=cut
sub new {
- my ($class, %args) = &validate;
+ my $class = shift;
+ $class = ref $class || $class;
+
+ my %args = @_;
+
my $config = App::Rgit::Config->new(
root => $args{root},
git => $args{git},
debug => $args{debug},
);
return unless defined $config;
+
my $command = App::Rgit::Command->new(
cmd => $args{cmd},
args => $args{args},
policy => $args{policy},
);
return unless defined $command;
- $class->SUPER::new(
+
+ bless {
config => $config,
command => $command,
- );
+ }, $class;
}
=head2 C<run>
sub run {
my $self = shift;
+
$self->command->run($self->config);
}
=head2 C<command>
-Accessors.
+Read-only accessors.
+
+=cut
+
+BEGIN {
+ eval "sub $_ { \$_[0]->{$_} }" for qw/config command/;
+}
=head1 SEE ALSO
=head1 AUTHOR
Vincent Pit, C<< <perl at profvince.com> >>, L<http://profvince.com>.
-
+
You can contact me by mail or on C<irc.perl.org> (vincent).
=head1 BUGS