summaryrefslogtreecommitdiff
path: root/lib/gitlab
diff options
context:
space:
mode:
authorBob Van Landuyt <bob@vanlanduyt.co>2019-04-30 11:37:07 +0200
committerBob Van Landuyt <bob@vanlanduyt.co>2019-04-30 17:17:08 +0200
commit55457b2c163df552ddc333a91f9f34d4b753601b (patch)
tree242107c8a5aab16210addd32fa6b6389606d187a /lib/gitlab
parenta96e96d5c8829348fed969d00395be93290577d4 (diff)
downloadgitlab-ce-55457b2c163df552ddc333a91f9f34d4b753601b.tar.gz
Make Gitlab::GlRepository#types an instance method
Having this as an instance method makes it easier to override in the prepended `EE` module. If we try to override this method on the module itself, it would not be overridden correctly, depending on the load order.
Diffstat (limited to 'lib/gitlab')
-rw-r--r--lib/gitlab/gl_repository.rb12
-rw-r--r--lib/gitlab/gl_repository/repo_type.rb2
2 files changed, 11 insertions, 3 deletions
diff --git a/lib/gitlab/gl_repository.rb b/lib/gitlab/gl_repository.rb
index a56ca1e39e7..04dabe423e8 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 Gitlab
}.freeze
def self.types
- TYPES
+ instance.types
end
def self.parse(gl_repository)
@@ -39,5 +41,11 @@ module Gitlab
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 7abe6c29a25..19915980d7f 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,