Classe: Mongo::TopologyVersion Private

Herda:
BSON::Document
  • Objeto
mostrar tudo
Definido em:
lib/mongo/topology_version.rb

Visão geral

Esta classe faz parte de uma API privada. Evite usar essa classe, se possível, pois ela pode ser removida ou alterada no futuro.

TopologyVersion encapsula o documento topologyVersion obtido a partir de respostas de hello e não de erros de OperationFailure semelhantes a mestres.

Recolhimento do Resumo do método de instância

Detalhes do construtor

#initialize(doc) ➤ TopologyVersion

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna uma nova instância de TopologyVersion.

[Ver fonte]

24
25
26
27
28
29
30
31
32
33
34
35
# Arquivo 'lib/mongo/topology_version.rb', linha 24

def inicializar(doc)
  se Lint.habilitado?
    a menos que doc['processId']
      aumentar ArgumentError, 'Criando uma versão de topologia sem o campo processId'
    end
    a menos que doc['contador']
      aumentar ArgumentError, 'Criando uma versão de topologia sem campo de contador'
    end
  end

  super
end

Detalhes do método de instância

#contadorInteiro

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna O contador.

Retorna:

  • (Inteiro)

    O contador.

[Ver fonte]

43
44
45
# Arquivo 'lib/mongo/topology_version.rb', linha 43

def Contador
  auto['contador']
end

#gt?(outro) ➤ verdadeiro | false

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna se esta versão de topologia é potencialmente mais recente do que outra versão de topologia .

Observe que não há uma ordem total das versões de topologia - dadas duas versões de topologia , cada uma pode ser "potencialmente mais recente" do que a outra.

Parâmetros:

Retorna:

  • (verdadeiro | falso)

    Se esta versão de topologia é potencialmente mais recente.

[Ver fonte]

57
58
59
60
61
62
63
# Arquivo 'lib/mongo/topology_version.rb', linha 57

def gt?(Outro)
  se process_id != Outro.process_id
    true
  mais
    Contador > Outro.Contador
  end
end

#gte?(outro) ➤ verdadeiro | false

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna se esta versão de topologia é potencialmente mais recente ou igual a outra versão de topologia .

Observe que não há uma ordem total das versões de topologia - dadas duas versões de topologia , cada uma pode ser "potencialmente mais recente" do que a outra.

Parâmetros:

Retorna:

  • (verdadeiro | falso)

    Se esta versão de topologia é potencialmente mais recente.

[Ver fonte]

75
76
77
78
79
80
81
# Arquivo 'lib/mongo/topology_version.rb', linha 75

def gte?(Outro)
  se process_id != Outro.process_id
    true
  mais
    Contador >= Outro.Contador
  end
end

#process_idBSON::ObjectId

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna o ID do processo.

Retorna:

  • (BSON::ObjectId)

    O ID do processo.

[Ver fonte]

38
39
40
# Arquivo 'lib/mongo/topology_version.rb', linha 38

def process_id
  auto['processId']
end

#to_docBSON::Document

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Converte o objeto em um documento adequado para ser enviado ao servidor.

Retorna:

  • (BSON::Document)

    O documento.

[Ver fonte]

88
89
90
# Arquivo 'lib/mongo/topology_version.rb', linha 88

def to_doc
  BSON::Documento.Novo(auto).mesclar(contador: BSON::Int64.Novo(Contador))
end