モジュール: Mongoid::Clients

次による拡張機能。
ActiveSupport::Concern
次のことが含まれます。
オプションセッションストレージオプション
次のドキュメントに含まれます。
構成可能
定義:
lib/mongoid/clients.rb
lib/mongoid/clients/factory.rb、
lib/mongoid/clients/options.rb、
lib/mongoid/clients/sessions.rb、
lib/mongoid/clients/storage_options.rb、
lib/mongoid/clients/validator/storage.rb

Overview

Mongoid::Document に含まれる混合モジュールで、データベース クライアント接続機能を追加します。 データベース クライアントの管理に関連する単一クラス メソッドも含まれています。

名前空間で定義済み

Modules: ファクトリーオプションセッションストレージオプション 、バリデーター

定数の概要の削減

CREATE_LOCK =
ミューテックス.新着情報

インスタンス属性の概要

StorageOptionsに含まれる属性

#remembered_storage_options

クラスメソッドの概要を折りたたむ

セッションに含まれるメソッド

次が含まれます:

オプションに含まれるメソッド

#collection#collection_name#mongo_client 、#永続性_context 、#永続性_context?

StorageOptionsに含まれるメソッド

#remember_storage_options を使用します。#storage_options

クラスメソッドの詳細

clear配列

現在のスレッドからすべてのクライアントをクリアします。

例:

すべてのクライアントをクリアします。

Mongoid::Clients.clear

次の値を返します。

  • 配列

    空のクライアント。



26
27
28
# ファイル 'lib/mongoid/clients.rb' 行26

デフォルト クリア
  クライアント.クリア
end

クライアントHash <Symbol, Mongo::Client>

名前がインデックス付けされた保存済みクライアントを返します。

次の値を返します。

  • ハッシュ < Symbol, Mongo::Client>

    クライアントのインデックス。



101
102
103
# ファイル 'lib/mongoid/clients.rb' 行101

デフォルト クライアント
  @clients ||= {}
end

.defaultMongo::Client

デフォルトのクライアントを取得します。

例:

デフォルトのクライアントを取得します。

Mongoid::Clients.default

次の値を返します。

  • Mongo::Client

    デフォルトのクライアント。



36
37
38
# ファイル 'lib/mongoid/clients.rb' 行36

デフォルト default
  with_name(:default)
end

Connect 接続= true

アクティブなクライアントをすべて切断します。

例:

アクティブなクライアントをすべて切断します。

Mongoid::Clients.disconnect

次の値を返します。

  • ( true )

    True。



46
47
48
49
# ファイル 'lib/mongoid/clients.rb' 行46

デフォルト 切断
  クライアント.each_value(&:close)
  true
end

。再接続 = true

すべてのアクティブなクライアントを再接続します。

例:

すべてのアクティブなクライアントを再接続します。

Mongoid::Clients.reconnect

次の値を返します。

  • ( true )

    True。



57
58
59
60
# ファイル 'lib/mongoid/clients.rb' 行57

デフォルト 再接続
  クライアント.each_value(&:reconnect)
  true
end

set (名前、クライアント) = Mongo::Client

指定された名前のクライアントを保存します。

例:

クライアントを設定します。

Mongoid::Clients.set(:analytics, my_client)

パラメーター:

  • name ( string | Symbol )

    設定するクライアントの名前。

  • クライアント Mongo::Client

    設定するクライアント。

次の値を返します。

  • Mongo::Client

    セット クライアント。



94
95
96
# ファイル 'lib/mongoid/clients.rb' 行94

デフォルト セット(name, クライアント)
  クライアント[name.to_sym] = クライアント
end

with_name (name) = Mongo::Client

指定された名前を持つ保存済みクライアントを取得します。 指定された名前のクライアントが存在しない場合は、新しいクライアントが作成、保存、返されます。

例:

という名前のクライアントを取得します。

Mongoid::Clients.with_name(:replica)

パラメーター:

  • name ( string | Symbol )

    クライアントの名前。

次の値を返します。

  • Mongo::Client

    名前付きクライアント。



72
73
74
75
76
77
78
79
80
81
82
83
# ファイル 'lib/mongoid/clients.rb' 行72

デフォルト with_name(name)
  name_as_symbol = name.to_sym
  return クライアント[name_as_symbol] 場合 クライアント[name_as_symbol]

  CREATE_LOCK.同期 行う
    場合 (key_vault_client = Mongoid.クライアント.dig(name_as_symbol, :options, : auto_encryption_options,
                                               :key_vault_client))
      クライアント[key_vault_client.to_sym] ||= クライアント::工場.create(key_vault_client)
    end
    クライアント[name_as_symbol] ||= クライアント::工場.create(name)
  end
end