Clase: Mongo::Database::View
- Hereda:
-
Objeto
- Objeto
- Mongo::Database::View
- Ampliado por:
- Reenviable
- Incluye:
- Enumerable, Cursor::NonTailable, CursorHost, Retryable
- Definido en:
- lib/mongo/database/view.rb
Overview
Una clase que representa una vista de una base de datos.
Resumen de atributos de la instancia colapsar
-
#tamaño_del_lote ⇒ Entero
Solo lectura
Batch_size El tamaño del lote de resultados al enviar el comando listCollections.
-
#colección ⇒ Colección
Solo lectura
Colección La colección de comandos.
- #database ⇒ Object Solo lectura privado
-
#limit ⇒ Integer
Solo lectura
Limitar El límite al enviar un comando.
-
#operation_timeout_ms ⇒ Entero | nulo | El valor de timeout_ms que se pasó como opción a la vista.
Solo lectura
privado
Entero | nulo | El valor timeout_ms que se pasó como opción a la vista.
Atributos incluidos desde CursorHost
Resumen del método de instancia colapsar
-
#agregado(tubería, opciones = {}) ⇒ Colección::Vista::Agregación
privado
Ejecute una agregación en la vista de base de datos.
-
#collection_names(options = {}) ⇒ arreglo<String>
Obtenga todos los nombres de las colecciones que no son del sistema en la base de datos.
-
#initialize(database, options = {}) ⇒ View
constructor
Crear la nueva vista de base de datos.
-
#list_collections(options = {}) ⇒ Array<Hash>
Obtener información sobre todas las colecciones de la base de datos.
-
#operation_timeouts(opciones = {}) ⇒ Hash
privado
Valor timeout_ms configurado a nivel de operación (si lo hay).
-
#timeout_ms ⇒ Integer | nil
El valor de timeout_ms a usar para esta operación; especificada como una opción en la vista, o heredada de la base de datos.
Métodos incluidos desde Cursor::NonTailable
Métodos incluidos desde CursorHost
Métodos incluidos en Retryable
#read_worker, #select_server, #write_worker
Detalles del constructor
#initialize(database, options = {}) ⇒ View
Crear la nueva vista de base de datos.
149 150 151 152 153 154 155 156 157 158 |
# Archivo 'lib/mongo/database/view.rb', línea 149 def inicializar(database, = {}) @database = database @operation_timeout_ms = .borrar(:timeout_ms) validate_timeout_mode!() @batch_size = nulo @limit = nulo @colección = @database[Database::Comando] end |
Detalles de los atributos de instancia
#batch_size ⇒ Integer (solo lectura)
Devuelve batch_size El tamaño del lote de resultados al enviar el comando listCollections.
40 41 42 |
# Archivo 'lib/mongo/database/view.rb', línea 40 def tamaño del lote @batch_size end |
#colección ⇒ Colección (solo lectura)
Devuelve colección La colección de comandos.
46 47 48 |
# Archivo 'lib/mongo/database/view.rb', línea 46 def Colección @colección end |
#base de datos ⇒ objeto (solo lectura)
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
161 162 163 |
# Archivo 'lib/mongo/database/view.rb', línea 161 def database @database end |
#límite ⇒ Entero (solo lectura)
Devuelve límite El límite al enviar un comando.
43 44 45 |
# Archivo 'lib/mongo/database/view.rb', línea 43 def limit @limit end |
#operation_timeout_ms ⇒ Entero | nulo | El valor timeout_ms que se pasó como opción a la vista. (solo lectura)
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Devuelve un entero | nil | El valor timeout_ms que se pasó como opción a la vista.
167 168 169 |
# Archivo 'lib/mongo/database/view.rb', línea 167 def operation_timeout_ms @operation_timeout_ms end |
Detalles del método de instancia
#aggregate(pipeline, options = {}) ⇒ Collection::View::Aggregation
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Ejecute una agregación en la vista de base de datos.
183 184 185 |
# Archivo 'lib/mongo/database/view.rb', línea 183 def Agregar(pipeline, = {}) Colección::vista::Agregación.Nuevo(sí mismo, pipeline, ) end |
#collection_names(opciones = {}) ⇒ arreglo<String>
El conjunto de nombres de colecciones devueltos depende de la versión del servidor MongoDB que cumpla con la solicitud.
Obtenga todos los nombres de las colecciones que no son del sistema en la base de datos.
See https://mongodb.com/es/docs/manual/reference/command/listCollections/
for more information and usage.
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
# Archivo 'lib/mongo/database/view.rb', línea 75 def nombres_de_colección( = {}) @batch_size = [:batch_size] sesión = Cliente.get_session() context = Operación::Context.Nuevo( cliente: Cliente, sesión: sesión, operation_timeouts: tiempos de espera de operación() ) cursor = leer_con_reintento_cursor(sesión, ServerSelector.primario, sí mismo, context: context) hacer |Server| enviar_consulta_inicial(Server, sesión, context, .fusionar(name_only: true)) end cursor.map hacer |información| si cursor.resultado inicial.connection_description.Funcionalidades.list_collections_enabled? información['nombre'] else (información['nombre'] && información['nombre'].sub("#{@database.name}.", '')) end end.rechazar hacer |Nombre| Nombre.start_with?('system.') || Nombre.incluir?('$') end end |
#list_collections(options = {}) ⇒ Arreglo<Hash>
El conjunto de colecciones devueltas y el esquema del hash de información por colección dependen de la versión del servidor de MongoDB que atienda la solicitud.
Obtener información sobre todas las colecciones de la base de datos.
127 128 129 130 |
# Archivo 'lib/mongo/database/view.rb', línea 127 def list_collections( = {}) sesión = Cliente.get_session() collections_info(sesión, ServerSelector.primario, ) end |
#tiempos_de_espera_de_operación(opciones = {}) ⇒ Hash
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Devuelve el valor de timeout_ms configurado en el nivel de operación (si corresponde).
198 199 200 201 202 203 204 205 206 |
# Archivo 'lib/mongo/database/view.rb', línea 198 def tiempos de espera de operación(opta = {}) {}.tocar hacer |Resultado| si opta[:timeout_ms] || operation_timeout_ms Resultado[:operation_timeout_ms] = opta.borrar(:timeout_ms) || operation_timeout_ms else Resultado[:tiempo de espera heredado_ms] = database.timeout_ms end end end |
#timeout_ms ⇒ Integer | nil
El valor de timeout_ms a usar para esta operación; especificada como una opción en la vista, o heredada de la base de datos.
191 192 193 |
# Archivo 'lib/mongo/database/view.rb', línea 191 def timeout_ms operation_timeout_ms || database.timeout_ms end |