Add new model
bobtfish [Mon, 2 Nov 2009 22:23:11 +0000 (22:23 +0000)]
lib/Gitalist/Model/Git.pm
lib/Gitalist/Model/GitRepos.pm [new file with mode: 0644]

index 4579f60..48c2d0c 100644 (file)
@@ -41,6 +41,8 @@ sub build_per_context_instance {
   return $model;
 }
 
+__PACKAGE__->meta->make_immutable;
+
 package Git::Repos; # Better name? Split out into own file once we have a sane name.
 use Moose;
 use namespace::autoclean;
diff --git a/lib/Gitalist/Model/GitRepos.pm b/lib/Gitalist/Model/GitRepos.pm
new file mode 100644 (file)
index 0000000..81623b4
--- /dev/null
@@ -0,0 +1,23 @@
+package Gitalist::Model::GitRepos;
+
+use Moose;
+use Gitalist::Git::Repo;
+use namespace::autoclean;
+
+extends 'Catalyst::Model';
+with 'Catalyst::Component::InstancePerContext'; # Note we only need to be
+                                                # InstancePerContext as we nick
+                                                # the config from the other
+                                                # model. Once we take over just
+                                                # use ::Model::Adaptor
+
+sub build_per_context_instance {
+    my ( $self, $c ) = @_;
+
+    return Gitalist::Git::Repo->new(
+        repo_dir => $c->model('Git')->repo_dir,
+    );
+}
+
+__PACKAGE__->meta->make_immutable;
+