Class: Ci::BuildNameFinder

Inherits:
Object
  • Object
show all
Defined in:
app/finders/ci/build_name_finder.rb

Constant Summary collapse

MAX_PER_PAGE =
100

Instance Method Summary collapse

Constructor Details

#initialize(relation:, name:, project:, params: {}) ⇒ BuildNameFinder

Returns a new instance of BuildNameFinder.

Raises:

  • (ArgumentError)


7
8
9
10
11
12
13
14
15
# File 'app/finders/ci/build_name_finder.rb', line 7

def initialize(relation:, name:, project:, params: {})
  raise ArgumentError, 'Only Ci::Builds are name searchable' unless relation.klass == Ci::Build
  raise ArgumentError, "Offset Pagination is not supported" if relation.offset_value.present?

  @relation = relation
  @name = name
  @project = project
  @params = params
end

Instance Method Details

#executeObject



17
18
19
20
21
# File 'app/finders/ci/build_name_finder.rb', line 17

def execute
  return relation unless name.to_s.present?

  filter_by_name(relation)
end