Clase: Mongo::WriteConcern::Base

Hereda:
Objeto
  • Objeto
Mostrar todo
Definido en:
lib/mongo/write_concern/base.rb

Overview

Define el comportamiento común para el nivel de confirmación de escritura (write concern).

Desde:

  • 2.7.0

Subclases conocidas directas

Reconocido, No reconocido

Resumen de atributos de la instancia colapsar

Resumen del método de instancia colapsar

Detalles del constructor

#initialize(opciones) ⇒ Base

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Instancie un nuevo nivel de confirmación de escritura (write concern) dadas las opciones.

Ejemplos:

Instancie un nuevo modo de nivel de confirmación de escritura (write concern).

Mongo::WriteConcern::Acknowledged.new(:w => 1)

Parámetros:

  • opciones (encriptada)

    Las opciones para instanciar con.

Opciones Hash (options):

  • :w (Integer, String)

    El número de servidores o el modo personalizado para reconocer.

  • :j (verdadero, falso)

    Si se debe reconocer un escrito en la revista.

  • :fsync (verdadero, falso)

    Si el guardar debe sincronizarse con el disco.

  • :wtimeout (Entero)

    El número de milisegundos a esperar para recibir una confirmación antes de generar un error.

Desde:

  • 2.0.0



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# Archivo 'lib/mongo/write_concern/base.rb', línea 48

def inicializar(opciones)
  opciones = opciones::Mapeador.transform_keys_to_symbols(opciones)
  opciones = opciones::Mapeador.transform_values_to_strings(opciones).freeze

  si opciones[:w]
    si opciones[:w] == 0 && opciones[:j]
      propagar Error::InvalidWriteConcern, "Opciones de nivel de confirmación de escritura (write concern) no válidas::j no puede ser true cuando :w es 0: #{options.inspect}"
    elsif opciones[:w] == 0 && opciones[:fsync]
      propagar Error::InvalidWriteConcern, "Opciones de nivel de confirmación de escritura (write concern) no válidas: :fsync no puede ser true cuando :w es 0: #{options.inspect}"
    elsif opciones[:w].is_a?(entero) && opciones[:w] < 0
      propagar Error::InvalidWriteConcern, "Opciones de nivel de confirmación de escritura no válidas: :w no puede ser negativo(#{opciones[:w]}): #{opciones.inspect}"
    end
  end

  si opciones[:journal]
    propagar Error::InvalidWriteConcern, "Opciones de nivel de confirmación de escritura (write concern) inválidas: usar :j para el journal: #{opciones.inspeccionar}"
  end

  @options = opciones
end

Detalles de los atributos de instancia

#opcionesHash (solo lectura)

Devuelve las opciones de escritura.

Devuelve:

  • (encriptada)

    Las opciones de nivel de confirmación de escritura (write concern).

Desde:

  • 2.7.0



27
28
29
# Archivo 'lib/mongo/write_concern/base.rb', línea 27

def opciones
  @options
end