Clase: Mongo::Server::Descripción::Funcionalidades
- Hereda:
-
Objeto
- Objeto
- Mongo::Server::Description::Funcionalidades
- Definido en:
- lib/mongo/server/description/features.rb
Overview
Define el comportamiento en torno a qué funcionalidades admite un servidor específico.
Resumen de constantes colapsar
- MAPPINGS =
Lista de funcionalidades y la versión del protocolo de conexión en la que aparecen.
Las versiones del protocolo de conexión se corresponden con las siguientes versiones del servidor:
- 8 => 4.2
- 9 => 4.4
- 13 => 5.0
- 14 => 5.1
- 17 => 6.0
{ merge_out_on_secondary: 13, get_more_comment: 9, retryable_write_error_label: 9, commit_quorum: 9, }.freeze
- SERVER_TOO_OLD =, SERVER_TOO_OLD =
Mensaje de error si el servidor es demasiado antiguo para esta versión del controlador.
'El servidor en (%s) informa la versión de wire (%s), pero esta versión del controlador Ruby ' + 'requiere al menos (%s).'
- SERVIDOR_DESFASADO =
Mensaje de advertencia si la versión del servidor está obsoleta.
'El servidor en (%s) informa la versión de conexión (%s), pero se ha ' \ 'desaprobado el soporte para esa versión y se eliminará en una futura versión del controlador Ruby. ' \ 'Por favor, actualiza tu servidor de MongoDB a una versión más reciente en el corto plazo.'
- DRIVER_TOO_OLD =
Mensaje de error si el controlador es demasiado antiguo para la versión del servidor.
'El servidor en (%s) requiere la versión de cable (%s), pero esta versión del controlador Ruby ' + 'solo admite hasta (%s).'
- EMPTY_RANGE =
Una constante de rango vacío, para usar en DEPRECATED_WIRE_VERSIONS.
(0...0).freeze
- DRIVER_WIRE_VERSIONS =
Las versiones del protocolo de conexión que soporta esta versión del driver.
8..25
- DEPRECATED_WIRE_VERSIONS =
Las versiones del protocolo de conexión que están obsoletas en esta versión del driver. El soporte para estas versiones se eliminará en el futuro.
Si hay varias versiones wire actualmente obsoletas, esto debe establecerse en un rango de esas versiones.
Si solo hay una versión obsoleta actualmente del canal, esto debe configurarse en un rango en el que el mínimo y el máximo sean el mismo valor.
Si actualmente no existen versiones obsoletas del protocolo, se debe establecer en un rango vacío (por ejemplo, la constante EMPTY_RANGE).
EMPTY_RANGE
Resumen de atributos de la instancia colapsar
-
#server_wire_versions ⇒ Rango
Solo lectura
Server_wire_versions Las versiones de puerto compatibles con el servidor.
Resumen del método de instancia colapsar
-
#verificar_soporte_controlador! ⇒ Objeto
Verifique que exista una superposición entre el rango de versiones de cable compatibles con el controlador y el rango de versiones de cable del servidor.
-
#inicializar(server_wire_versions, address = nil) ⇒ funcionalidades
constructor
Inicializa las funcionalidades.
Detalles del Constructor
#initialize(server_wire_versions, address = nil) ⇒ Funcionalidades
Inicializa las funcionalidades.
114 115 116 117 118 119 120 121 122 123 124 |
# Archivo 'lib/mongo/servidor/descripción/funcionalidades.rb', línea 114 def inicializar(versiones_de_cable_del_servidor, dirección = nulo) propagar ArgumentError, "El mínimo de server_wire_versions es nulo" si versiones_de_cable_del_servidor.min.nil? propagar ArgumentError, "server_wire_versions's max es nulo" si versiones_de_cable_del_servidor.máximo.nil? @server_wire_versions = versiones_de_cable_del_servidor @address = dirección return a menos que mongo::Lint.¿habilitado? freeze end |
Detalles de atributo de instancias
#server_wire_versions ⇒ Range (solo lectura)
Devuelve server_wire_versions Las versiones cableadas admitidas por el servidor.
103 104 105 |
# Archivo 'lib/mongo/servidor/descripción/funcionalidades.rb', línea 103 def versiones_de_cable_del_servidor @server_wire_versions end |
Detalles del método de instancia
#check_driver_support! ⇒ Objeto
Comprueba que haya una superposición entre el rango de versiones de cable admitidas por el controlador y el rango de versiones de cable del servidor. También comprueba si el servidor está utilizando una versión obsoleta de transmisión de datos.
132 133 134 135 136 137 138 139 140 141 142 143 144 145 |
# Archivo 'lib/mongo/servidor/descripción/funcionalidades.rb', línea 132 def check_driver_support! si DEPRECATED_WIRE_VERSIONS.incluir?(@server_wire_versions.máximo) funcionalidad = "wire_version:#{@address}" mongo::Obsolescencias.advertencia(funcionalidad, Formato(SERVIDOR_OBSOLETO, @address, @server_wire_versions.máximo)) elsif VERSIONS_DRIVER_WIRE.min > @server_wire_versions.máximo propagar Error::UnsupportedFeatures.Nuevo(Formato(SERVIDOR DEMASIADO ANTIGUO, @address, @server_wire_versions.máximo, VERSIONS_DRIVER_WIRE.min)) elsif VERSIONS_DRIVER_WIRE.máximo < @server_wire_versions.min propagar Error::UnsupportedFeatures.Nuevo(Formato(CONTROLADOR_DEMASIADO_ANTIGUO, @address, @server_wire_versions.min, VERSIONS_DRIVER_WIRE.máximo)) end end |