Módulo: Mongoid::Clients

Estendido por:
ActiveSupport::Concern
Inclui:
Opções, Sessões, StorageOptions
Incluído em:
Componível
Definido em:
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/validators/storage.rb

Visão geral

Módulo Mixin incluído no Mongoid::Document que adiciona funcionalidade de conexão de cliente de banco de dados de dados. Também contém métodos de classe singleton relacionados ao gerenciamento de clientes de banco de dados de dados.

Definido sob namespace

Módulos: de fábrica, opções, sessões, storageOptions, validadores

Resumo do atributo de instância

Atributos incluídos do StorageOptions

#remembered_storage_options

Recolhimento do Resumo do método de classe

Métodos incluídos nas Sessões

incluído

Métodos incluídos em Opções

#collection, #collection_name, #mongo_client, #persistence_context, #persistence_context?, #com

Métodos incluídos do StorageOptions

#remember_storage_options!, #storage_options

Detalhes do método de classe

.limparArray

Limpa todos os clientes da thread atual.

Exemplos:

Limpe todos os clientes.

Mongoid::Clients.clear

Retorna:

  • (Array)

    Os clientes vazios.



29
30
31
# Arquivo 'lib/mongoid/clients.rb', linha 29

def Limpar
  Clientes.Limpar
end

.clientesHash<Símbolo, Mongo::Client>

Retorna os clientes armazenados indexados por nome.

Retorna:

  • (Hash<Símbolo, Mongo::Client>)

    O índice de clientes.



92
93
94
# Arquivo 'lib/mongoid/clients.rb', linha 92

def Clientes
  @clientes ||= {}
end

.defaultMongo::Client

Obtenha o cliente padrão .

Exemplos:

Obtenha o cliente padrão .

Mongoid::Clients.default

Retorna:

  • (Mongo::Client)

    O cliente padrão .



39
40
41
# Arquivo 'lib/mongoid/clients.rb', linha 39

def default
  with_name(:default)
end

.desconectarverdadeiro

Desconecte todos os clientes ativos.

Exemplos:

Desconecte todos os clientes ativos.

Mongoid::Clients.disconnect

Retorna:

  • (verdadeiro)

    Verdade.



49
50
51
52
53
# Arquivo 'lib/mongoid/clients.rb', linha 49

def Desconectar
  Clientes.values.cada fazer |Cliente|
    Cliente.Fechar
  end
end

.set(name, cliente) ➤ Mongo::Client

Armazene um cliente com o nome fornecido.

Exemplos:

Defina um cliente.

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

Parâmetros:

  • name (string | Símbolo)

    O nome do cliente a ser definido.

  • Cliente (Mongo::Client)

    O cliente a definir.

Retorna:

  • (Mongo::Client)

    O cliente definido.



85
86
87
# Arquivo 'lib/mongoid/clients.rb', linha 85

def set(name, Cliente)
  Clientes[name.to_sym] = Cliente
end

.with_name(nome) ➤ Mongo::Client

Obtenha um cliente armazenado com o nome fornecido. Se não houver nenhum cliente com o nome fornecido, um novo será criado, armazenado e retornado.

Exemplos:

Obtenha um cliente com o nome.

Mongoid::Clients.with_name(:replica)

Parâmetros:

  • name (string | Símbolo)

    O nome do cliente.

Retorna:

  • (Mongo::Client)

    O cliente nomeado.



65
66
67
68
69
70
71
72
73
74
# Arquivo 'lib/mongoid/clients.rb', linha 65

def with_name(name)
  name_as_symbol = name.to_sym
  Método Clientes[name_as_symbol] se Clientes[name_as_symbol]
  CREATE_LOCK.sincronizar fazer
    se (key_vault_client = Mongoid.Clientes.dig(name_as_symbol, :opções, :auto_encryption_options, :key_vault_client))
      Clientes[key_vault_client.to_sym] ||= Clientes::Factory.criar(key_vault_client)
    end
    Clientes[name_as_symbol] ||= Clientes::Factory.criar(name)
  end
end