Classe: Mongo::URI::SRVProtocol

Herda:
URI
  • Objeto
mostrar tudo
Definido em:
lib/mongo/uri/srv_protocol.rb

Visão geral

Analisador de URI usando o protocolo mongodb+srv, que especifica um DNS para fazer query de registros SRV. O driver consultará o servidor DNS em busca de registros SRV em ., prefixados com _mongodb._tcp Os registros SRV podem ser usados como a lista de sementes para um Mongo::Client. O driver também consulta um registro TXT que fornece opções de string de conexão padrão. Somente um registro TXT é permitido, e somente um subconjunto de opções Mongo::Client é permitido.

Consulte a especificação da Descoberta inicial da lista de sementes de DNS para obter detalhes.

https://github.com/mongodb/specifications/blob/master/source/initial-dns-seedlist-discovery/initial-dns-seedlist-discovery.md

Exemplos:

Use a string uri para fazer uma conexão com o cliente .

client = Mongo::Client.new('mongodb+srv://test6.test.build.10gen.cc/')

Desde:

  • 2.5.0

Recolhimento do Resumo do atributo de instância

Recolhimento do Resumo do método de instância

Detalhes do atributo da instância

#query_hostname ➤ string (somente leitura)

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.

O nome de host especificado no URI e usado para procurar registros SRV.

Este atributo precisa ser definido porque o SRVProtocol altera #servers para ser o resultado da pesquisa em vez do nome de host especificado no URI.

Retorna:

  • (string)

    O nome do host usado na pesquisa de SRV.

Desde:

  • 2.5.0



68
69
70
# File 'lib/mongo/uri/srv_protocol.rb', linha 68

def query_hostname
  @query_hostname
end

#srv_records ➤ Object (somente leitura)

Desde:

  • 2.5.0



35
36
37
# File 'lib/mongo/uri/srv_protocol.rb', linha 35

def srv_records
  @srv_records
end

#srv_result ➤ SRV::Result (somente leitura)

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 resultado da pesquisa SRV.

Retorna:

Desde:

  • 2.5.0



56
57
58
# File 'lib/mongo/uri/srv_protocol.rb', linha 56

def srv_result
  @srv_result
end

Detalhes do método de instância

#client_options ➤ Hash

Obtém o hash de opções que precisa ser passado para um Mongo::Client na instanciação, para que não precisemos mesclar as opções de registro txt, as credenciais e o banco de dados nesse ponto - só temos um único ponto aqui.

Exemplos:

Obtenha as opções do cliente.

uri.client_options

Retorna:

  • (Hash)

    As opções passadas para o Mongo::Client

Desde:

  • 2.5.0



47
48
49
50
51
# File 'lib/mongo/uri/srv_protocol.rb', linha 47

def client_options
  opciona = @txt_options.mesclar(ssl: true)
  opciona = opciona.mesclar(uri_options).mesclar(database: database)
  @user ? opciona.mesclar(credenciais) : opciona
end