X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FGitalist%2FModel%2FCollectionOfRepos.pm;h=f6318159c3ecf2761fc021a53ca78826e3d3b1b9;hb=1891c7741653bd5c20f52aa7176157afeb2e0121;hp=6c2d9a11f49d765f59c7a112387886f168d57ff1;hpb=606ffc33eb95e4dadb72a9f461561436cd1dd90b;p=catagits%2FGitalist.git diff --git a/lib/Gitalist/Model/CollectionOfRepos.pm b/lib/Gitalist/Model/CollectionOfRepos.pm index 6c2d9a1..f631815 100644 --- a/lib/Gitalist/Model/CollectionOfRepos.pm +++ b/lib/Gitalist/Model/CollectionOfRepos.pm @@ -50,6 +50,13 @@ has repos => ( coerce => 1, ); + +has search_recursively => ( + is => 'ro', + isa => 'Bool', + default => 0, +); + has export_ok => ( is => 'ro', isa => 'Str', @@ -60,7 +67,6 @@ has whitelist => ( isa => 'Str', ); - sub _build_repo_dir { my $self = shift; $ENV{GITALIST_REPO_DIR} ? @@ -86,11 +92,10 @@ sub build_per_context_instance { $class = 'Gitalist::Git::CollectionOfRepositories::FromDirectory::WhiteList'; $args{repo_dir} = $self->repo_dir; $args{whitelist} = $self->whitelist; - } elsif ($self->_repos_count) { + } elsif ($self->_repos_count && !$self->search_recursively) { $class = 'Gitalist::Git::CollectionOfRepositories::FromListOfDirectories'; $args{repos} = $self->repos; - } - else { + } else { $class = 'Gitalist::Git::CollectionOfRepositories::FromDirectoryRecursive'; $args{repo_dir} = $self->repo_dir; }