Clase: Mongo::Server::ConnectionCommon
- Hereda:
-
Objeto
- Objeto
- Mongo::Server::ConnectionCommon
- Definido en:
- lib/mongo/servidor/connection_common.rb
Overview
Aunque los métodos de este módulo forman parte de la API pública, el hecho de que estos métodos estén definidos en este módulo y no en las clases que incluyen este módulo no forma parte de la API pública.
Métodos comunes usados tanto por conexiones de supervisión como por conexiones que no lo son.
Subclases conocidas directas
ConnectionBase, Monitor::Conexión
Resumen de atributos de la instancia colapsar
-
#compressor ⇒ String | nil
Solo lectura
El compresor negoció durante el protocolo de enlace esta conexión, si la hubiera.
-
#pid ⇒ Entero
Solo lectura
privado
Pid El id del proceso cuando se creó la conexión.
Resumen del método de instancia colapsar
- #¿conectado? ⇒ true, false Obsoleto Obsoleto.
-
#handshake_command(handshake_document) ⇒ Protocol::Message
privado
Construya un comando que se debe utilizar para el protocolo de conexión.
-
#handshake_document(app_metadata, speculative_auth_doc: nil, load_balancer: false, server_api: nil) ⇒ BSON::Document
privado
Compile un documento que debe utilizarse para el saludo de conexión.
Detalles de los atributos de instancia
#compressor ⇒ String | nil (solo lectura)
El compresor negoció durante el protocolo de enlace esta conexión, si la hubiera.
Este atributo es nulo para las conexiones que aún no han completado el protocolo de enlace y para las conexiones que no negociaron ninguna compresión.
37 38 39 |
# Archivo 'lib/mongo/server/connection_common.rb', línea 37. def compresor @compressor end |
#pid ⇒ Integer (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 pid El id del proceso cuando se creó la conexión.
53 54 55 |
# Archivo 'lib/mongo/server/connection_common.rb', línea 53. def pid @pid end |
Detalles del método de instancia
#¿conectado? ⇒ verdadero, falso
Determinar si la conexión está activa actualmente.
47 48 49 |
# Archivo 'lib/mongo/server/connection_common.rb', línea 47. def ¿conectado? !!enchufe end |
#handshake_command(handshake_document) ⇒ Protocol::Message
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Construya un comando que se debe utilizar para el protocolo de conexión.
94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
# Archivo 'lib/mongo/server/connection_common.rb', línea 94. def handshake_command(documento_handshake) si documento_handshake['apiVersion'] || documento_handshake['balanceada'] protocolo::Msg.Nuevo( [], {}, documento_handshake.fusionar({'$db' => Database::ADMIN}) ) else protocolo::Query.Nuevo( Database::ADMIN, Database::Comando, documento_handshake, :limit => -1 ) end end |
#handshake_document(app_metadata, speculative_auth_doc: nil, load_balancer: false, server_api: nil) ⇒ BSON::documento
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Compile un documento que debe utilizarse para el saludo de conexión.
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# Archivo 'lib/mongo/server/connection_common.rb', línea 68. def documento_handshake(, speculative_auth_doc: nulo, equilibrador de carga: false, server_api: nulo) serv_api = .server_api || server_api Documento = si serv_api HELLO_DOC.fusionar(Utils.transform_server_api(serv_api)) else HELLO_DOC_ANTIGUO end Documento.fusionar(.documento validado).tocar hacer |doc| si speculative_auth_doc doc.update(speculativeAuthenticate: speculative_auth_doc) end si equilibrador de carga doc.update(Carga equilibrada: true) end end end |