Class: Gitlab::Analytics::UsageTrends::WorkersArgumentBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/gitlab/analytics/usage_trends/workers_argument_builder.rb

Instance Method Summary collapse

Constructor Details

#initialize(measurement_identifiers: [], recorded_at: Time.zone.now) ⇒ WorkersArgumentBuilder

Returns a new instance of WorkersArgumentBuilder.



7
8
9
10
# File 'lib/gitlab/analytics/usage_trends/workers_argument_builder.rb', line 7

def initialize(measurement_identifiers: [], recorded_at: Time.zone.now)
  @measurement_identifiers = measurement_identifiers
  @recorded_at = recorded_at
end

Instance Method Details

#executeObject



12
13
14
15
16
17
18
19
20
# File 'lib/gitlab/analytics/usage_trends/workers_argument_builder.rb', line 12

def execute
  measurement_identifiers.map do |measurement_identifier|
    query_scope = query_mappings[measurement_identifier]&.call

    next if query_scope.nil?

    [measurement_identifier, *determine_start_and_finish(measurement_identifier, query_scope), recorded_at]
  end.compact
end