Clase: Mongo::Database::View
- Hereda:
-
Objeto
- Objeto
- Mongo::Database::View
- Ampliado por:
- Reenviable
- Incluye:
- Enumerable, Cursor::NonTailable, CursorHost, Reintentable
- Definido en:
- lib/mongo/database/view.rb
Overview
Una clase que representa una vista de una base de datos.
Colapso delresumen de atributos de instancia
-
#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 privada
-
#limit ⇒ Integer
solo lectura
Límite 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
privada
Entero | nulo | El valor timeout_ms que se pasó como opción a la vista.
Atributos incluidos desde CursorHost
Colapso del resumen del método de instancia
-
#agregado(tubería, opciones = {}) ⇒ Colección::Vista::Agregación
privada
Ejecutar una agregación en la vista de la base de datos.
-
#nombres_de_colección(opciones = {}) ⇒ Array<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(opciones = {}) ⇒ Array<Hash>
Obtenga información sobre todas las colecciones en la base de datos.
-
#tiempos_de_espera_de_operación(opciones = {}) ⇒ Hash
privada
Valor timeout_ms establecido en el nivel de operación (si lo hay).
-
#timeout_ms ⇒ Integer | nil
El valor timeout_ms que se utilizará para esta operación, ya sea especificado como una opción para la vista o heredado de la base de datos.
Métodos incluidos en Cursor::NonTailable
Métodos incluidos desde CursorHost
Métodos incluidos en Retryable
#trabajador_de_lectura, #servidor_de_selección, #trabajador_de_escritura
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 @tiempo_de_espera_de_operación_ms = .borrar(:tiempo de espera_ms) validate_timeout_mode!() @tamaño_de_lote = nulo @limit = nulo @recopilación = @database[Database::DOMINIO] end |
Detalles de los atributos de instancia
#batch_size ⇒ Entero (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 @tamaño_de_lote 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 @recopilació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 de 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 | nulo | 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 tiempo de espera de operación_ms @tiempo_de_espera_de_operación_ms end |
Detalles del método de instancia
#agregado(tubería, opciones = {}) ⇒ Colección::Vista::Agregación
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Ejecutar una agregación en la vista de la base de datos.
183 184 185 |
# Archivo 'lib/mongo/database/view.rb', línea 183 def Agregar(pipeline, = {}) Colección::vista::Agregación.Nuevo(yo, pipeline, ) end |
#nombres_de_colección(opciones = {}) ⇒ Array<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( = {}) @tamaño_de_lote = [:tamaño_del_lote] sesión = Cliente.obtener_sesión() context = Operación::Context.Nuevo( cliente: Cliente, sesión: sesión, tiempos de espera de operación: tiempos de espera de operación() ) cursor = lectura con cursor de reintento(sesión, Selector de servidor.primario, yo, context: context) hacer |Server| enviar_consulta_inicial(Server, sesión, context, .unir(name_only: true)) end cursor.map hacer |información| Si cursor.resultado inicial.descripción de la conexión.características.¿lista_colecciones_habilitadas? información['nombre '] else (información['nombre '] && información['nombre '].sub("#{@database.name }. ", '')) end end.rechazar hacer |Nombre| Nombre.empezar_con?(' sistema. ') || Nombre.¿incluir?('$') end end |
#list_collections(opciones = {}) ⇒ Array<Hash>
El conjunto de colecciones devueltas y el esquema del hash de información por colección dependen de la versión del servidor MongoDB que cumple la solicitud.
Obtenga información sobre todas las colecciones en la base de datos.
127 128 129 130 |
# Archivo 'lib/mongo/database/view.rb', línea 127 def listas_colecciones( = {}) sesión = Cliente.obtener_sesión() información de colecciones(sesión, Selector de servidor.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 timeout_ms establecido en el nivel de operación (si lo hay).
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 = {}) {}.grifo hacer |resultado| Si opta[:tiempo de espera_ms] || tiempo de espera de operación_ms resultado[:tiempo de espera_de_operación_ms] = opta.borrar(:tiempo de espera_ms) || tiempo de espera de operación_ms else resultado[:tiempo de espera heredado_ms] = database.tiempo de espera_ms end end end |
#timeout_ms ⇒ Integer | nil
El valor timeout_ms que se utilizará para esta operación, ya sea especificado como una opción para la vista o heredado de la base de datos.
191 192 193 |
# Archivo 'lib/mongo/database/view.rb', línea 191 def tiempo de espera_ms tiempo de espera de operación_ms || database.tiempo de espera_ms end |