Class: Mongo::Database::View
- Herda:
-
Objeto
- Objeto
- Mongo::Banco de Dados::Visualizar
- Estendido por:
- Encaminhável
- Inclui:
- Enumerável, Cursor::NonTailable, CursorHost, Retryable
- Definido em:
- lib/mongo/database/view.rb
Visão geral
Uma classe que representa uma visualização de um banco de dados.
Recolhimento do Resumo do atributo de instância
-
#batch_size ➤ Inteiro
Somente leitura
Batch_size O tamanho do lote de resultados ao enviar o comando listCollections.
-
#collection ➤ Collection
Somente leitura
Collection A collection de comandos.
- #banco de dados ➤ Objeto Somente leitura privado
-
#limite ➤ Inteiro
Somente leitura
Limite O limite ao enviar um comando.
-
#operation_timeout_ms ➤ Inteiro | nada | O valor de timeout_ms que foi passado como uma opção para a visualização.
Somente leitura
privado
Inteiro | nada | O valor de timeout_ms que foi passado como uma opção para a visualização.
Atributos incluídos do CursorHost
Recolhimento do Resumo do método de instância
-
#aggregation(pipeline, options = {}) ➤ Collection::View::aggregation
privado
Execute uma agregação na visualização do banco de dados.
-
#collection_names(opções = {}) ➤ Array<String>
Obtenha todos os nomes das coleções que não são do sistema no banco de banco de dados.
-
#initialize(database, options = {}) ⇒ View
construtor
Crie a nova visualização do banco de dados.
-
#list_collections(options = {}) ➤ Array<Hash>
Obtenha informações sobre todas as coleções no banco de dados.
-
#operation_timeouts(opts = {}) ➤ Hash
privado
Valor de Timeout_ms definido no nível de operação (se houver).
-
#timeout_ms ⇒ Integer | nil
O valor de timeout_ms a ser usado para essa operação; especificado como uma opção para a visualização ou herdado do banco de dados.
Métodos incluídos do Cursor::NonTailable
Métodos incluídos do CursorHost
Métodos incluídos no Retryable
#read_worker, #select_server, #write_worker
Detalhes do construtor
#initialize(database, options = {}) ⇒ View
Crie a nova visualização do banco de dados.
149 150 151 152 153 154 155 156 157 158 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 149 def inicializar(database, = {}) @database = database @operation_timeout_ms = .excluir(:timeout_ms) validate_timeout_mode!() @batch_size = nada @limit = nada @collection = @database[Database::Comando] end |
Detalhes do atributo da instância
#batch_size ➤ inteiro (somente leitura)
Retorna batch_size O tamanho do lote de resultados ao enviar o comando listCollections.
40 41 42 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 40 def batch_size @batch_size end |
#collection ➤ Collection (somente leitura)
Retorna a collection A collection de comandos.
46 47 48 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 46 def collection @collection end |
#database ➤ Object (only read)
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.
161 162 163 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 161 def database @database end |
#limite ➤ inteiro (somente leitura)
Retorna limite O limite ao enviar um comando.
43 44 45 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 43 def limit @limit end |
#operation_timeout_ms ➤ Inteiro | nada | O valor de timeout_ms que foi passado como uma opção para a visualização. (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 número inteiro | nada | O valor de timeout_ms que foi passado como uma opção para a visualização.
167 168 169 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 167 def operation_timeout_ms @operation_timeout_ms end |
Detalhes do método de instância
#aggregation(pipeline, options = {}) ➤ Collection::View::aggregation
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.
Execute uma agregação na visualização do banco de dados.
183 184 185 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 183 def Agregação(gasoduto, = {}) collection::Vista::Agregação.Novo(auto, gasoduto, ) end |
#collection_names(opções = {}) ➤ Array<String>
O conjunto de nomes de collection retornados depende da versão do servidor MongoDB que atende à solicitação.
Obtenha todos os nomes das coleções que não são do sistema no banco de banco de dados.
See https://mongodb.com/pt-br/docs/manual/reference/command/listCollections/
for more information and usage.
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 75 def collection_names( = {}) @batch_size = [:batch_size] session = Cliente.get_session() Contexto = (operação)::Contexto.Novo( cliente: Cliente, sessão: session, operation_timeouts: operation_timeouts() ) cursor = read_with_retry_cursor(session, ServerSelector.Principal, auto, contexto: Contexto) fazer |Servidor| send_initial_query(Servidor, session, Contexto, .mesclar(name_only: true)) end cursor.map fazer |informações| se cursor.initial_result.connection_description.características.list_collections_enabled? informações['nome'] mais (informações['nome'] && informações['nome'].sub("#{@database.name}.", '')) end end.rejeitar fazer |name| name.start_with?('.') || name.incluir?('$') end end |
#list_collections(options = {}) ➤ Array<Hash>
O conjunto de coleções retornadas e o esquema do hash de informações por coleção depende da versão do servidor MongoDB que atende à solicitação.
Obtenha informações sobre todas as coleções no banco de dados.
127 128 129 130 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 127 def list_collections( = {}) session = Cliente.get_session() collections_info(session, ServerSelector.Principal, ) end |
#operation_timeouts(opts = {}) ➤ Hash
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 valor de timeout_ms definido no nível de operação (se houver).
198 199 200 201 202 203 204 205 206 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 198 def operation_timeouts(opciona = {}) {}.toque fazer |Resultado| se opciona[:timeout_ms] || operation_timeout_ms Resultado[:operation_timeout_ms] = opciona.excluir(:timeout_ms) || operation_timeout_ms mais Resultado[:inherited_timeout_ms] = database.timeout_ms end end end |
#timeout_ms ⇒ Integer | nil
O valor de timeout_ms a ser usado para essa operação; especificado como uma opção para a visualização ou herdado do banco de dados.
191 192 193 |
# Arquivo 'lib/mongo/ banco de dados/view.rb', linha 191 def timeout_ms operation_timeout_ms || database.timeout_ms end |