summaryrefslogtreecommitdiff
path: root/app/models/concerns/database_reflection.rb
blob: 1842f5bf4ecd76cea4b6def02edc889900fd4028 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# frozen_string_literal: true

# A module that makes it easier/less verbose to reflect upon a database
# connection.
#
# Using this module you can write this:
#
#     User.database.database_name
#
# Instead of this:
#
#     Gitlab::Database::Reflection.new(User).database_name
module DatabaseReflection
  extend ActiveSupport::Concern

  class_methods do
    def database
      @database_reflection ||= ::Gitlab::Database::Reflection.new(self)
    end
  end
end