diff --git a/lib/gitlab/gl_repository.rb b/lib/gitlab/gl_repository.rb index a56ca1e39e729b4665a33a192fdfb30edc04ade2..04dabe423e88694c1d82c2cf1612abe8aa58fb8e 100644 --- a/lib/gitlab/gl_repository.rb +++ b/lib/gitlab/gl_repository.rb @@ -1,7 +1,9 @@ # frozen_string_literal: true module Gitlab - module GlRepository + class GlRepository + include Singleton + PROJECT = RepoType.new( name: :project, access_checker_class: Gitlab::GitAccess, @@ -19,7 +21,7 @@ module GlRepository }.freeze def self.types - TYPES + instance.types end def self.parse(gl_repository) @@ -39,5 +41,11 @@ def self.parse(gl_repository) def self.default_type PROJECT end + + def types + TYPES + end + + private_class_method :instance end end diff --git a/lib/gitlab/gl_repository/repo_type.rb b/lib/gitlab/gl_repository/repo_type.rb index 7abe6c29a254ef54b74aae464e80ea6f9dc3713e..19915980d7f9fa9723cda011e77073cfd26846dd 100644 --- a/lib/gitlab/gl_repository/repo_type.rb +++ b/lib/gitlab/gl_repository/repo_type.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Gitlab - module GlRepository + class GlRepository class RepoType attr_reader :name, :access_checker_class,