Class: Gitlab::Database::Aggregation::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/gitlab/database/aggregation/request.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(metrics:, filters: [], dimensions: [], order: []) ⇒ Request

Returns a new instance of Request.



9
10
11
12
13
14
# File 'lib/gitlab/database/aggregation/request.rb', line 9

def initialize(metrics:, filters: [], dimensions: [], order: [])
  @filters = filters || []
  @dimensions = dimensions || []
  @metrics = metrics
  @order = order || []
end

Instance Attribute Details

#dimensionsObject (readonly)

Returns the value of attribute dimensions.



7
8
9
# File 'lib/gitlab/database/aggregation/request.rb', line 7

def dimensions
  @dimensions
end

#filtersObject (readonly)

Returns the value of attribute filters.



7
8
9
# File 'lib/gitlab/database/aggregation/request.rb', line 7

def filters
  @filters
end

#metricsObject (readonly)

Returns the value of attribute metrics.



7
8
9
# File 'lib/gitlab/database/aggregation/request.rb', line 7

def metrics
  @metrics
end

#orderObject (readonly)

Returns the value of attribute order.



7
8
9
# File 'lib/gitlab/database/aggregation/request.rb', line 7

def order
  @order
end

Instance Method Details

#to_query_plan(engine) ⇒ Object



16
17
18
# File 'lib/gitlab/database/aggregation/request.rb', line 16

def to_query_plan(engine)
  QueryPlan.new(engine, self)
end