Módulo: Mongo::Lint Private

Definido em:
build/ruby-driver-v2.19/lib/mongo/lint.rb

Este módulo faz parte de uma API privada. Você deve evitar usar este módulo, se possível, pois ele pode ser removido ou alterado no futuro.

Recolhimento do Resumo do método de classe

Detalhes do método de classe

.assert_type(obj, cls) ➤ Objeto

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.

Gera LintError se obj não for do tipo cls.



10
11
12
13
14
15
# File 'build/ruby-driver-v2.19/lib/mongo/lint.rb', linha 10

def assert_type(obj, cls)
  Método a menos que habilitado?
  a menos que obj.is_a?(cls)
    aumentar Erro::LintError, "Esperava -se que#{obj} fosse um #{cls}"
  end
end

.habilitado?Booleano

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:

  • (Booleano)


100
101
102
# File 'build/ruby-driver-v2.19/lib/mongo/lint.rb', linha 100

def habilitado?
  ENV['MONGO_RUBY_DRIVER_LINT'] && %w(1 sim true em).incluir?(ENV['MONGO_RUBY_DRIVER_LINT'].downcase)
end

.validate_camel_case_read_preference(read_pref) ➤ Objeto

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.



38
39
40
41
42
43
44
45
# File 'build/ruby-driver-v2.19/lib/mongo/lint.rb', linha 38

def validate_camel_case_read_preference(read_pref)
  Método a menos que habilitado?
  Método se read_pref.nada?
  a menos que read_pref.is_a?(Hash)
    aumentar Erro::LintError, "Aread preference não é um hash: #{read_pref}"
  end
  validate_camel_case_read_preference_mode(read_pref[:mode] || read_pref['mode'])
end

.validate_camel_case_read_preference_mode(modo) ➤ Objeto

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.



48
49
50
51
52
53
54
55
# File 'build/ruby-driver-v2.19/lib/mongo/lint.rb', linha 48

def validate_camel_case_read_preference_mode(Modo)
  Método a menos que habilitado?
  se Modo
    a menos que %w(Principal primaryPreferred secundário secondaryPreferred mais próximo).incluir?(Modo.to_s)
      aumentar Erro::LintError, "modo de preferência de leitura inválido : #{modo}"
    end
  end
end

.validate_read_concern_option(read_concern) ➤ Objeto

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.

Valida o hash fornecido como um objeto de preocupação de leitura , de acordo com a especificação de read/ preocupação de gravação (github.com/mongodb/specifications/blob/master/source/read-write-concern/read-write-concern.rst#read-concern) .

Este método também aceita nulo como entrada por conveniência.

O documento de preocupação de leitura conforme enviado ao servidor pode incluir campos adicionais, por exemplo afterClusterTime. Esses campos são gerados internamente pelo driver e não podem ser especificados pelo usuário (e potencialmente levariam a comportamento incorreto se fossem especificados pelo usuário), portanto, este método os proíbe.

Parâmetros:

  • read_concern (Hash)

    O hash de opções de preocupação de leitura , com as seguintes chaves opcionais:

    • :level – o nível de preferência de leitura como um símbolo; valores válidos

      are *:local*, *:majority*, and *:snapshot*
      

Aumenta:



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# File 'build/ruby-driver-v2.19/lib/mongo/lint.rb', linha 76

def validate_read_concern_option(read_concern)
  Método a menos que habilitado?
  Método se read_concern.nada?
  a menos que read_concern.is_a?(Hash)
    aumentar Erro::LintError, "Aread concern não é um hash: #{read_concern}"
  end
  Método se read_concern.vazio?
  keys = read_concern.keys
  se read_concern.is_a?(BSON::Documento)
    # Permite acesso indiferente
    allow_keys = ['level']
  mais
    # Não permite acesso indiferente
    allow_keys = [:level]
  end
  se keys != allow_keys
    aumentar Erro::LintError, "A read concern tem chaves inválidas: #{chaves.inspect}"
  end
  level = read_concern[:level]
  Método se [:local, :available, :majority, :linearizable, :snapshot].incluir?(level)
  aumentar Erro::LintError, "O nível de preocupação de leitura é inválido: o valor deve ser um símbolo: #{nível.inspecionar}"
end

.validate_subscore_read_preference(read_pref) ➤ Objeto

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.



18
19
20
21
22
23
24
25
# File 'build/ruby-driver-v2.19/lib/mongo/lint.rb', linha 18

def validate_subscore_read_preference(read_pref)
  Método a menos que habilitado?
  Método se read_pref.nada?
  a menos que read_pref.is_a?(Hash)
    aumentar Erro::LintError, "Aread preference não é um hash: #{read_pref}"
  end
  validate_subscore_read_preference_mode(read_pref[:mode] || read_pref['mode'])
end

.validate_underscore_read_preference_mode(mode) ⇒ Object

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.



28
29
30
31
32
33
34
35
# File 'build/ruby-driver-v2.19/lib/mongo/lint.rb', linha 28

def validate_subscore_read_preference_mode(Modo)
  Método a menos que habilitado?
  se Modo
    a menos que %w(Principal primary_preferred secundário secondary_preferred mais próximo).incluir?(Modo.to_s)
      aumentar Erro::LintError, "modo de preferência de leitura inválido : #{modo}"
    end
  end
end