Align Vhost code with reality.
[catagits/Gitalist.git] / lib / Gitalist / Git / CollectionOfRepositoriesWithRequestState.pm
diff --git a/lib/Gitalist/Git/CollectionOfRepositoriesWithRequestState.pm b/lib/Gitalist/Git/CollectionOfRepositoriesWithRequestState.pm
new file mode 100644 (file)
index 0000000..f601d01
--- /dev/null
@@ -0,0 +1,13 @@
+use MooseX::Declare;
+
+role Gitalist::Git::CollectionOfRepositoriesWithRequestState {
+    requires qw/
+        implementation_class
+        extract_request_state
+    /;
+
+    method ACCEPT_CONTEXT($c) {
+        $self->implementation_class->new(%$self, $self->extract_request_state($c))->chosen_collection;
+    }
+}
+