Classe: Mongo::Collection::View::Builder::aggregation

Herda:
Objeto
  • Objeto
mostrar tudo
Estendido por:
Encaminhável
Definido em:
build/ruby-driver-v2.19/lib/mongo/collection/view/builder/ agregação.rb

Visão geral

Constrói uma especificação de comando de agregação a partir da visualização e opções.

Desde:

  • 2.2.0

Colapsode resumo constante

Mapeamentos =

Os mapeamentos das opções Ruby para as opções de agregação .

Desde:

  • 2.2.0

BSON::Documento.Novo(
  allow_disk_use: 'allowDiskUse',
  bypass_document_validation: 'bypassDocumentValidation',
  explicar: 'explicar',
  agrupamento: 'agrupamento',
  comment: 'comment',
  hint: 'dica',
  let: 'deixe',
  # Isso é intencional; max_await_time_ms é um alias para maxTimeMS
  # usado nos comandos getMore para change streams.
  max_await_time_ms: 'maxTimeMS',
  max_time_ms: 'maxTimeMS',
).congelar

Recolhimento do Resumo do atributo de instância

Recolhimento do Resumo do método de instância

Detalhes do construtor

#inicializar(pipeline, visualização, opções) ➤ Agregação

Inicialize o construtor.

Parâmetros:

  • gasoduto (Array<Hash>)

    O pipeline de agregação .

  • vista (Collection::View)

    A visualização da collection.

  • opções (Hash)

    As opções de map/reduce e preferência de leitura .

Desde:

  • 2.2.0



64
65
66
67
68
# File 'build/ruby-driver-v2.19/lib/mongo/collection/view/builder/aggregation.rb', linha 64

def inicializar(gasoduto, vista, opções)
  @pipeline = gasoduto
  @view = vista
  @opções = opções
end

Detalhes do atributo da instância

#opçõesHash (somente leitura)

Retorna opções As opções específicas do mapa/reduzir.

Retorna:

  • (Hash)

    options As opções específicas de map/reduce.

Desde:

  • 2.2.0



55
56
57
# File 'build/ruby-driver-v2.19/lib/mongo/collection/view/builder/aggregation.rb', linha 55

def opções
  @opções
end

#pipelineArray<Hash> (somente leitura)

Retorna pipeline O pipeline.

Retorna:

  • (Array<Hash>)

    pipeline O pipeline.

Desde:

  • 2.2.0



49
50
51
# File 'build/ruby-driver-v2.19/lib/mongo/collection/view/builder/aggregation.rb', linha 49

def gasoduto
  @pipeline
end

#viewCollection::View (readonly)

Retorna a visualização A visualização da collection.

Retorna:

Desde:

  • 2.2.0



52
53
54
# File 'build/ruby-driver-v2.19/lib/mongo/collection/view/builder/aggregation.rb', linha 52

def vista
  @view
end

Detalhes do método de instância

#especificaçãoHash

Obtenha a especificação para passar para a operação de agregação .

Exemplos:

Obtenha a especificação.

builder.specification

Retorna:

  • (Hash)

    A especificação.

Desde:

  • 2.2.0



78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'build/ruby-driver-v2.19/lib/mongo/collection/view/builder/aggregation.rb', linha 78

def Especificação
  especificações = {
    seletor: aggregation_command,
    db_name: database.name,
    ler: @opções[:read_preference] || vista.read_preference,
    sessão: @opções[:session],
    agrupamento: @opções[:collation],
  }
  se escrever?
    especificações.update(write_concern: write_concern)
  end
  especificações
end