8815b6a9d64b76926f15ee2e0ef535ee4a73e2ba
[catagits/Gitalist.git] / lib / Gitalist / Git / HasUtils.pm
1 package Gitalist::Git::HasUtils;
2 use Moose::Role;
3 use Gitalist::Git::Util;
4 use namespace::autoclean;
5
6 sub BUILD {}
7 after BUILD => sub {
8     my $self = shift;
9     # Force value build. A little convoluted as we don't have an accessor :)
10     $self->_util;
11 };
12
13 has _util => ( isa => 'Gitalist::Git::Util',
14                is => 'ro',
15                lazy_build => 1,
16                handles => [ 'run_cmd',
17                             'run_cmd_fh',
18                             'run_cmd_list',
19                             'get_gpp_object',
20                             'gpp',
21                         ],
22            );
23
24 sub _build__util { confess(shift() . " cannot build _util") }
25
26 1;