Class: PactBroker::Versions::Service

Inherits:
Object
  • Object
show all
Extended by:
Repositories
Defined in:
lib/pact_broker/versions/service.rb

Class Method Summary collapse

Methods included from Repositories

label_repository, matrix_repository, pact_repository, pacticipant_repository, tag_repository, verification_repository, version_repository, webhook_repository

Class Method Details

.create_or_update(pacticipant_name, version_number, version) ⇒ Object



21
22
23
24
# File 'lib/pact_broker/versions/service.rb', line 21

def self.create_or_update(pacticipant_name, version_number, version)
  pacticipant = pacticipant_repository.find_by_name_or_create(pacticipant_name)
  version_repository.create_or_update(pacticipant, version_number, version)
end

.delete(version) ⇒ Object



26
27
28
29
30
31
32
# File 'lib/pact_broker/versions/service.rb', line 26

def self.delete version
  tag_repository.delete_by_version_id version.id
  webhook_repository.delete_triggered_webhooks_by_version_id version.id
  pact_repository.delete_by_version_id version.id
  verification_repository.delete_by_provider_version_id version.id
  version_repository.delete_by_id version.id
end

.find_by_pacticipant_name_and_latest_tag(pacticipant_name, tag) ⇒ Object



17
18
19
# File 'lib/pact_broker/versions/service.rb', line 17

def self.find_by_pacticipant_name_and_latest_tag(pacticipant_name, tag)
  version_repository.find_by_pacticipant_name_and_latest_tag(pacticipant_name, tag)
end

.find_by_pacticipant_name_and_number(params) ⇒ Object



13
14
15
# File 'lib/pact_broker/versions/service.rb', line 13

def self.find_by_pacticipant_name_and_number params
  version_repository.find_by_pacticipant_name_and_number params.fetch(:pacticipant_name), params.fetch(:pacticipant_version_number)
end

.find_latest_by_pacticpant_name(params) ⇒ Object



9
10
11
# File 'lib/pact_broker/versions/service.rb', line 9

def self.find_latest_by_pacticpant_name params
  version_repository.find_latest_by_pacticpant_name params.fetch(:pacticipant_name)
end