SEE ALSO
Gitalist::Controller::Root
- Gitalist::Git::Project
+ Gitalist::Git::Repository
Catalyst
L<Gitalist::Controller::Root>
-L<Gitalist::Git::Project>
+L<Gitalist::Git::Repository>
L<Catalyst>
use MooseX::Types::Common::String qw/NonEmptySimpleStr/;
use MooseX::Types::Moose qw/ArrayRef/;
use Moose::Autobox;
- use aliased 'Gitalist::Git::Project';
+ use aliased 'Gitalist::Git::Repository';
has projects => (
is => 'ro',
- isa => ArrayRef['Gitalist::Git::Project'],
+ isa => ArrayRef['Gitalist::Git::Repository'],
required => 1,
lazy_build => 1,
);
method get_project (NonEmptySimpleStr $name) {
my $path = $self->_get_path_for_project_name($name);
- die "Not a valid Project"
+ die "Not a valid git repository."
unless $self->_is_git_repo($path);
- return Project->new( $path );
+ return Repository->new( $path );
}
# Determine whether a given directory is a git repo.
method _is_git_repo ($dir) {
=head2 projects
-An array of all L<Gitalist::Git::Project>s found in C<repo_dir>.
+An array of all L<Gitalist::Git::Repository>s found in C<repo_dir>.
=head2 get_project (Str $name)
-Returns a L<Gitalist::Git::Project> for the given name.
+Returns a L<Gitalist::Git::Repository> 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<Gitalist::Git::Project>
+L<Gitalist::Git::Repository>
=head1 AUTHORS
use MooseX::Types::Common::String qw/NonEmptySimpleStr/;
# project and sha1 are required initargs
- has project => ( isa => 'Gitalist::Git::Project',
+ has project => ( isa => 'Gitalist::Git::Repository',
required => 1,
is => 'ro',
weak_ref => 1,
=head1 SYNOPSIS
- my $object = Project->get_object($sha1);
+ my $object = Repository->get_object($sha1);
=head1 DESCRIPTION
=head1 SYNOPSIS
- my $blob = Project->get_object($blob_sha1);
+ my $blob = Repository->get_object($blob_sha1);
=head1 DESCRIPTION
=head1 SYNOPSIS
- my $commit = Project->get_object($commit_sha1);
+ my $commit = Repository->get_object($commit_sha1);
=head1 DESCRIPTION
=head1 SYNOPSIS
- my $tree = Project->get_object($tree_sha1);
+ my $tree = Repository->get_object($tree_sha1);
=head1 DESCRIPTION
=head1 SYNOPSIS
- my $tag = Project->get_object($tag_sha1);
+ my $tag = Repository->get_object($tag_sha1);
=head1 DESCRIPTION
=head1 SYNOPSIS
- my $tree = Project->get_object($tree_sha1);
+ my $tree = Repository->get_object($tree_sha1);
=head1 DESCRIPTION
use MooseX::Declare;
-class Gitalist::Git::Project with Gitalist::Git::HasUtils {
+class Gitalist::Git::Repository with Gitalist::Git::HasUtils {
# FIXME, use Types::Path::Class and coerce
use MooseX::Types::Common::String qw/NonEmptySimpleStr/;
use MooseX::Types::Path::Class qw/Dir/;
our $SHA1RE = qr/[0-9a-fA-F]{40}/;
around BUILDARGS (ClassName $class: Dir $dir) {
- # Allows us to be called as Project->new($dir)
+ # Allows us to be called as Repository->new($dir)
# Last path component becomes $self->name
# Full path to git objects becomes $self->path
my $name = $dir->dir_list(-1);
=head1 NAME
-Gitalist::Git::Project - Model of a git repository
+Gitalist::Git::Repository - Model of a git repository
=head1 SYNOPSIS
my $gitrepo = dir('/repo/base/Gitalist');
- my $project = Gitalist::Git::Project->new($gitrepo);
+ my $project = Gitalist::Git::Repository->new($gitrepo);
$project->name; # 'Gitalist'
$project->path; # '/repo/base/Gitalist/.git'
$project->description; # 'Unnamed repository.'
use MooseX::Types::Common::String qw/NonEmptySimpleStr/;
has project => (
- isa => 'Gitalist::Git::Project',
+ isa => 'Gitalist::Git::Repository',
handles => { gitdir => 'path' },
is => 'bare', # No accessor
weak_ref => 1, # Weak, you have to hold onto me.
my $project_list = $repo->projects;
ok(scalar @{$project_list} == 3, 'list_projects returns an array with the correct number of members' );
-isa_ok($project_list->[0], 'Gitalist::Git::Project');
+isa_ok($project_list->[0], 'Gitalist::Git::Repository');
is($project_list->[0]->{name}, 'bare.git', 'list_projects has correct name for "bare.git" repo' );
dies_ok {
} 'throws exception for directory traversal';
my $project = $repo->get_project('repo1');
-isa_ok($project, 'Gitalist::Git::Project');
+isa_ok($project, 'Gitalist::Git::Repository');
# check for bug where get_project blew up if repo_dir
};
}
-BEGIN { use_ok 'Gitalist::Git::Project' }
+BEGIN { use_ok 'Gitalist::Git::Repository' }
dies_ok {
- my $proj = Gitalist::Git::Project->new();
+ my $proj = Gitalist::Git::Repository->new();
} 'New project with no args';
use Path::Class;
my $gitdir = dir("$Bin/lib/repositories/repo1");
-my $proj = Gitalist::Git::Project->new($gitdir);
-isa_ok($proj, 'Gitalist::Git::Project');
+my $proj = Gitalist::Git::Repository->new($gitdir);
+isa_ok($proj, 'Gitalist::Git::Repository');
is($proj->path, $gitdir, 'project path is set');
isa_ok($proj->path, 'Path::Class::Dir', 'project path');
is($proj->name, qw/repo1/, 'repository name is set');
use Data::Dumper;
use Path::Class;
-use Gitalist::Git::Project;
-my $project = Gitalist::Git::Project->new(
+use Gitalist::Git::Repository;
+my $project = Gitalist::Git::Repository->new(
dir("$Bin/lib/repositories/repo1"),
);
BEGIN {
use_ok 'Gitalist::Git::Util';
- use_ok 'Gitalist::Git::Project';
+ use_ok 'Gitalist::Git::Repository';
}
use Path::Class;
my $gitdir = dir("$Bin/lib/repositories/repo1");
-my $proj = Gitalist::Git::Project->new($gitdir);
+my $proj = Gitalist::Git::Repository->new($gitdir);
my $util = Gitalist::Git::Util->new(
project => $proj,
);