Commit | Line | Data |
38b9e5c8 |
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, |
defb0050 |
16 | handles => [ 'run_cmd', |
aa7f1f92 |
17 | 'run_cmd_fh', |
defb0050 |
18 | 'run_cmd_list', |
19 | 'get_gpp_object', |
20 | 'gpp', |
21 | ], |
38b9e5c8 |
22 | ); |
23 | |
24 | sub _build__util { confess(shift() . " cannot build _util") } |
25 | |
26 | 1; |
775e96e0 |
27 | |
28 | __END__ |
29 | |
30 | =head1 AUTHORS |
31 | |
32 | See L<Gitalist> for authors. |
33 | |
34 | =head1 LICENSE |
35 | |
36 | See L<Gitalist> for the license. |
37 | |
38 | =cut |