From: Tomas Doran Date: Sat, 19 Dec 2009 13:05:52 +0000 (+0000) Subject: More Pod X-Git-Tag: 0.000005~11^2~4 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=271f6b464c2e18789aafa7ec661353cf91013990;p=catagits%2FGitalist.git More Pod --- diff --git a/lib/Gitalist/Git/CollectionOfRepositories.pm b/lib/Gitalist/Git/CollectionOfRepositories.pm index 18dd195..69243af 100644 --- a/lib/Gitalist/Git/CollectionOfRepositories.pm +++ b/lib/Gitalist/Git/CollectionOfRepositories.pm @@ -33,3 +33,63 @@ role Gitalist::Git::CollectionOfRepositories { } 1; + +=head1 NAME + +Gitalist::Git::CollectionOfRepositories - Interface and partial implementation of a collection of git repositories + +=head1 SYNOPSIS + + package My::Example::CollectionOfRepositories; + use Moose::Role; + use namespace::autoclean; + + with 'Gitalist::Git::CollectionOfRepositories'; + + sub _build_repositories { + my $self = shift; + [ $self->get_repository('Gitalist') ]; + } + sub _get_path_for_repository_name { + my ($self, $name) = @_; + '/var/example/' . $name . '.git'; + } + + my $collection = My::Example::CollectionOfRepositories->new + my $repository_list = $collection->repositories; + my $only_repository = $repository_list->[0]; + my $named_repository = $repo->get_repository('Gitalist'); + +=head1 DESCRIPTION + +This role provides an abstraction for a list of Repository directories. + +=head1 ATTRIBUTES + +=head2 repositories + +An array of all Ls. + +=head1 METHODS + +=head2 get_repository (Str $name) + +Returns a L for the given name. +If C<$name> is not a valid git repository an exception will be thrown. + +=head1 SEE ALSO + +L, +L, +L. + +=head1 AUTHORS + +See L for authors. + +=head1 LICENSE + +See L for the license. + +=cut + diff --git a/lib/Gitalist/Git/CollectionOfRepositories/FromDirectory.pm b/lib/Gitalist/Git/CollectionOfRepositories/FromDirectory.pm index abd3219..57fdc8c 100644 --- a/lib/Gitalist/Git/CollectionOfRepositories/FromDirectory.pm +++ b/lib/Gitalist/Git/CollectionOfRepositories/FromDirectory.pm @@ -44,7 +44,7 @@ __END__ =head1 NAME -Gitalist::Git::CollectionOfRepositories::FromDirectory - Model of a repository directory +Gitalist::Git::CollectionOfRepositories::FromDirectory - Model of a directory containing git repositories =head1 SYNOPSIS @@ -63,26 +63,9 @@ This class provides a list of Repositories found in the given directory. The filesystem root of the C. -=head2 repositories - -An array of all Ls found in C. - - - -=head1 METHODS - -=head2 get_repository (Str $name) - -Returns a L for the given name. -If C<$name> is not a valid git repository under C<$repo_dir>, an exception -will be thrown. - - - =head1 SEE ALSO -L - +L, L =head1 AUTHORS diff --git a/lib/Gitalist/Git/CollectionOfRepositories/FromListOfDirectories.pm b/lib/Gitalist/Git/CollectionOfRepositories/FromListOfDirectories.pm index ba66185..4f3383c 100644 --- a/lib/Gitalist/Git/CollectionOfRepositories/FromListOfDirectories.pm +++ b/lib/Gitalist/Git/CollectionOfRepositories/FromListOfDirectories.pm @@ -11,7 +11,7 @@ class Gitalist::Git::CollectionOfRepositories::FromListOfDirectories with Gitali is => 'ro', required => 1, ); - has repos_by_name => ( + has _repos_by_name => ( isa => HashRef[NonEmptySimpleStr], is => 'ro', lazy_build => 1, @@ -21,7 +21,7 @@ class Gitalist::Git::CollectionOfRepositories::FromListOfDirectories with Gitali }, ); - method _build_repos_by_name { + method _build__repos_by_name { { map { basename($_) => $_ } $self->repos->flatten }; } @@ -32,3 +32,41 @@ class Gitalist::Git::CollectionOfRepositories::FromListOfDirectories with Gitali } # end class 1; + +=head1 NAME + +Gitalist::Git::CollectionOfRepositories::FromListOfDirectories - Model of a collection of git repositories + +=head1 SYNOPSIS + + my $collection = Gitalist::Git::CollectionOfRepositories::FromListOfDirectories->new( repos => [qw/ + /path/to/repos1 + /path/to/repos2 + /] ); + my $repository_list = $collection->repositories; + my $first_repository = $repository_list->[0]; + my $named_repository = $repo->get_repository('Gitalist'); + +=head1 DESCRIPTION + +This class provides an abstraction for a list of Repository directories. + +=head1 ATTRIBUTES + +=head2 repos (C<< ArrayRef[NonEmptySimpleStr] >>) + +A list of git repository directories + +=head1 SEE ALSO + +L, L + +=head1 AUTHORS + +See L for authors. + +=head1 LICENSE + +See L for the license. + +=cut diff --git a/lib/Gitalist/Git/HasUtils.pm b/lib/Gitalist/Git/HasUtils.pm index df63d09..7d133ac 100644 --- a/lib/Gitalist/Git/HasUtils.pm +++ b/lib/Gitalist/Git/HasUtils.pm @@ -29,6 +29,10 @@ role Gitalist::Git::HasUtils { __END__ +=head1 NAME + +Gitalist::Git::HasUtils - Role for classes with an instance of Gitalist::Git::Util + =head1 AUTHORS See L for authors. diff --git a/lib/Gitalist/Git/Util.pm b/lib/Gitalist/Git/Util.pm index dcf1e78..adbb5bb 100644 --- a/lib/Gitalist/Git/Util.pm +++ b/lib/Gitalist/Git/Util.pm @@ -73,6 +73,14 @@ EOR __END__ +=head1 NAME + +Gitalist::Git::Util - Class for utilities to run git or deal with Git::PurePerl + +=head1 SEE ALSO + +L. + =head1 AUTHORS See L for authors.