Class: Gitlab::Database::Aggregation::ClickHouse::FilterDefinition

Inherits:
PartDefinition show all
Defined in:
lib/gitlab/database/aggregation/click_house/filter_definition.rb

Direct Known Subclasses

ExactMatchFilter, RangeFilter

Instance Attribute Summary collapse

Attributes inherited from PartDefinition

#description, #expression, #formatter, #name, #secondary_expression, #type

Instance Method Summary collapse

Methods inherited from PartDefinition

#format_value, #identifier, #instance_key, #parameterized?

Constructor Details

#initialize(name, type, expression = nil, **kwargs) ⇒ FilterDefinition

Returns a new instance of FilterDefinition.



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

def initialize(name, type, expression = nil, **kwargs)
  super
  @merge_column = kwargs[:merge_column]
  @max_size = kwargs[:max_size]
end

Instance Attribute Details

#max_sizeObject (readonly)

Returns the value of attribute max_size.



8
9
10
# File 'lib/gitlab/database/aggregation/click_house/filter_definition.rb', line 8

def max_size
  @max_size
end

Instance Method Details

#apply_inner(query_builder, filter_config) ⇒ Object



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

def apply_inner(query_builder, filter_config)
  apply(query_builder, filter_config)
end

#validate_part(part) ⇒ Object



20
21
22
# File 'lib/gitlab/database/aggregation/click_house/filter_definition.rb', line 20

def validate_part(part)
  validate_max_size(part)
end