Módulo: Mongoid::Clients

Ampliado por:
ActiveSupport::Concern
Incluye:
Options, Sessions, StorageOptions
Incluido en:
Compuesto
Definido en:
lib/mongoid/clientes.rb,
lib/mongoid/clientes/factory.rb,
lib/mongoid/clientes/options.rb,
lib/mongoid/clientes/sessions.rb,
lib/mongoid/clientes/storage_options.rb,
lib/mongoid/clientes/validators/almacenamiento.rb

Overview

Módulo Mixin incorporado en Mongoid::Document que añade la funcionalidad de conexión de cliente a la base de datos. También contiene métodos de clases singleton relacionados con la gestión de los clientes de bases de datos.

Definido bajo Namespace

Modules: Fábrica, Opciones, Sesiones, Opcionesde almacenamiento, Validadores

Resumen del atributo de la instancia

Atributos incluidos de StorageOptions

#remembered_storage_options

Resumen del método de clase colapsar

Métodos incluidos de Sessions

incluido

Métodos incluidos de Opciones

#colección, #nombre_de_colección, #cliente_mongo, #contexto_de_persistencia, #contexto_de_persistencia?, #con

Métodos incluidos de Opciones de almacenamiento

#remember_storage_options!, #storage_options

Detalles del método de clase

.cleararreglo

Borrar todos los clientes del hilo actual.

Ejemplos:

Borrar todos los clientes.

Mongoid::Clients.clear

Devuelve:

  • (arreglo)

    Los clientes vacíos.



29
30
31
# Archivo 'lib/mongoid/clients.rb', línea 29

def borrar
  clientes.borrar
end

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

Devuelve los clientes almacenados indexados por nombre.

Devuelve:

  • (Hash<Symbol, Mongo::cliente>)

    El índice de clientes.



102
103
104
# Archivo 'lib/mongoid/clients.rb', línea 102

def clientes
  @clients ||= {}
end

.defaultMongo::Client

Obtenga el cliente predeterminado.

Ejemplos:

Obtenga el cliente predeterminado.

Mongoid::Clients.default

Devuelve:

  • (Mongo::Client)

    El cliente por defecto.



39
40
41
# Archivo 'lib/mongoid/clients.rb', línea 39

def predeterminado
  con_nombre(por defecto)
end

.desconectarverdadero

Desconecta todos los clientes activos.

Ejemplos:

Desconecta todos los clientes activos.

Mongoid::Clients.disconnect

Devuelve:

  • (cierto)

    Verdadero.



49
50
51
52
# Archivo 'lib/mongoid/clients.rb', línea 49

def Desconectar
  clientes.each_value(YCerrar)
  true
end

.reconnecttrue

Reconecta todos los clientes activos.

Ejemplos:

Reconecta todos los clientes activos.

Mongoid::Clients.reconnect

Devuelve:

  • (cierto)

    Verdadero.



60
61
62
63
# Archivo 'lib/mongoid/clients.rb', línea 60

def Reconnecting
  clientes.each_value(Y:reconnect)
  true
end

.set(name, Client) ⇒ Mongo::Client

Almacene un cliente con el nombre proporcionado.

Ejemplos:

Configurar un cliente.

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

Parámetros:

  • Nombre (String | Símbolo)

    El nombre del cliente a establecer.

  • Cliente (Mongo::Client)

    El cliente a configurar.

Devuelve:

  • (Mongo::Client)

    El conjunto de clientes.



95
96
97
# Archivo 'lib/mongoid/clients.rb', línea 95

def conjunto(Nombre, Cliente)
  clientes[Nombre.to_sym] = Cliente
end

.with_name(name) ⇒ Mongo::cliente

Obtén un cliente almacenado con el nombre provisto. Si no existe un cliente con el nombre dado, se creará uno nuevo, que se almacenará y se devolverá.

Ejemplos:

Obtén un cliente con el nombre.

Mongoid::Clients.with_name(:replica)

Parámetros:

  • Nombre (String | Símbolo)

    El nombre del cliente.

Devuelve:

  • (Mongo::Client)

    El cliente nombrado.



75
76
77
78
79
80
81
82
83
84
# Archivo 'lib/mongoid/clients.rb', línea 75

def con_nombre(Nombre)
  name_as_symbol = Nombre.to_sym
  return clientes[name_as_symbol] si clientes[name_as_symbol]
  CREATE_LOCK.sincronizar hacer
    si (key_vault_client = Mongoid.clientes.dig(name_as_symbol, :options, opciones de cifrado automático, cliente de Key Vault))
      clientes[key_vault_client.to_sym] ||= Clientes::Fábrica.Cree(key_vault_client)
    end
    clientes[name_as_symbol] ||= Clientes::Fábrica.Cree(Nombre)
  end
end