Clase: Mongo::CachingCursor
- Hereda:
-
Cursor
- Objeto
- Cursor
- Mongo::Cursor de almacenamiento en caché
- Definido en:
- lib/mongo/caching_cursor.rb
Overview
Un cursor que intenta cargar documentos desde la memoria primero antes de acceder a la base de datos si ya se ha ejecutado la misma consulta.
Colapso delresumen de atributos de instancia
-
#cached_docs ⇒ Matriz <BSON::Document>
solo lectura
privada
Los documentos almacenados en caché del cursor.
Atributos heredados de Cursor
#conexión, #contexto, #resultado_inicial, #token_de_reanudación, #servidor, #vista
Colapso del resumen del método de instancia
-
#cada ⇒ Objeto
Iteramos sobre los documentos almacenados en caché si ya existen en el cursor; de lo contrario, procedemos de manera normal.
-
#inspeccionar ⇒ Cadena
Obtenga una representación de cadena legible por humanos de
Cursor. -
#try_next ⇒ Objeto
privada
Obtiene el siguiente documento para la iteración del cursor y luego inserta ese documento en el arreglo @cached_docs.
Métodos heredados de Cursor
#tamaño_de_lote, #cerrar, #¿cerrado?, #nombre_de_colección,finalizar, #¿completamente_iterado?, #obtener_más, #id, #inicializar, #eliminar_especificación, #para_regresar
Métodos incluidos en Retryable
#trabajador_de_lectura, #servidor_de_selección, #trabajador_de_escritura
Detalles del constructor
Esta clase hereda un constructor de Mongo::Cursor
Detalles de los atributos de instancia
#cached_docs ⇒ Matriz <BSON::Document> (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 los documentos almacenados en caché del cursor.
28 29 30 |
# Archivo 'lib/mongo/caching_cursor.rb', línea 28 def cached_docs @cached_docs end |
Detalles del método de instancia
#cada ⇒ Objeto
Iteramos sobre los documentos almacenados en caché si ya existen en el cursor; de lo contrario, procedemos de manera normal.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# Archivo 'lib/mongo/caching_cursor.rb', línea 37 def cada Si @cached_docs @cached_docs.cada hacer |doc| rendimiento doc end a no ser que ¿cerrado? # StopIteration generado por try_next finaliza este bucle. bucle hacer Documento = try_next rendimiento Documento Si Documento end end else Super end end |
#inspeccionar ⇒ Cadena
Obtenga una representación de cadena legible por humanos de Cursor.
61 62 63 |
# Archivo 'lib/mongo/caching_cursor.rb', línea 61 def inspeccionar "#<Mongo::CachingCursor:0x#{object_id} @view=#{@view.inspect }>" end |
#try_next ⇒ Objeto
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Obtiene el siguiente documento para la iteración del cursor y luego inserta ese documento en el arreglo @cached_docs.
69 70 71 72 73 74 75 |
# Archivo 'lib/mongo/caching_cursor.rb', línea 69 def try_next @cached_docs ||= [] Documento = Super @cached_docs << Documento Si Documento Documento end |