Clase: Mongo::TopologyVersion Privado

Hereda:
BSON::Documento
  • Objeto
Mostrar todo
Definido en:
lib/mongo/topology_version.rb

Overview

Esta clase forma parte de una API privada. Evita usar esta clase si es posible, ya que puede ser eliminada o modificada en el futuro.

TopologyVersion encapsula el documento topologyVersion obtenido de las respuestas hello y no los errores OperationFailure de tipo master-like.

Resumen del método de instancia colapsar

Detalles del Constructor

#initialize(doc) ⇒ TopologyVersion

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve una nueva instancia de TopologyVersion.



23
24
25
26
27
28
29
30
# Archivo 'lib/mongo/topology_version.rb', línea 23

def inicializar(doc)
  si Lint.¿habilitado?
    propagar ArgumentError, 'Creando una versión de topología sin el campo processId' a menos que doc['processId']
    propagar ArgumentError, 'Creando una versión de topología sin campo contador' a menos que doc['counter']
  end

  super
end

Detalles del método de instancia

#counterInteger

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve el contador.

Devuelve:

  • (Número entero)

    El mostrador.



38
39
40
# Archivo 'lib/mongo/topology_version.rb', línea 38

def Contador
  sí mismo['counter']
end

#gt?(otra) ⇒ verdadero | falso

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve si esta versión de topología es potencialmente más reciente que otra versión de topología.

Tenga en cuenta que no hay un ordenamiento total de las versiones de topología: dadas dos versiones de topología, cada una puede ser "potencialmente más nueva" que la otra.

Parámetros:

Devuelve:

  • (true | false)

    Si esta versión de topología es potencialmente más reciente.



52
53
54
55
56
57
58
# Archivo 'lib/mongo/topology_version.rb', línea 52

def gt?(Otros)
  si process_id == Otros.process_id
    Contador > Otros.Contador
  else
    true
  end
end

#gte?(other) ⇒ true | false

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve si esta versión de topología es potencialmente más reciente o igual que otra versión de topología.

Tenga en cuenta que no hay un ordenamiento total de las versiones de topología: dadas dos versiones de topología, cada una puede ser "potencialmente más nueva" que la otra.

Parámetros:

Devuelve:

  • (true | false)

    Si esta versión de topología es potencialmente más reciente.



70
71
72
73
74
75
76
# Archivo 'lib/mongo/topology_version.rb', línea 70

def gte?(Otros)
  si process_id == Otros.process_id
    Contador >= Otros.Contador
  else
    true
  end
end

#process_idBSON::ObjectId

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve el id del proceso.

Devuelve:

  • (BSON::ObjectId)

    El id. del proceso.



33
34
35
# Archivo 'lib/mongo/topology_version.rb', línea 33

def process_id
  sí mismo['processId']
end

#to_docBSON::Document

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Convierte el objeto en un documento adecuado para ser enviado al servidor.

Devuelve:

  • (BSON::Document)

    El documento.



83
84
85
# Archivo 'lib/mongo/topology_version.rb', línea 83

def to_doc
  BSON::Documento.Nuevo(sí mismo).fusionar(contador: BSON::Int64.Nuevo(Contador))
end