Class: PactBroker::Domain::Pacticipant

Inherits:
Sequel::Model
  • Object
show all
Includes:
Messages, Pacticipants::GenerateDisplayName
Defined in:
lib/pact_broker/domain/pacticipant.rb

Instance Method Summary collapse

Methods included from Pacticipants::GenerateDisplayName

call, #generate_display_name

Methods included from Messages

#message, #pluralize, #validation_message, #validation_message_at_index

Instance Method Details

#any_versions?Boolean

Returns:

  • (Boolean)


73
74
75
# File 'lib/pact_broker/domain/pacticipant.rb', line 73

def any_versions?
  PactBroker::Domain::Version.where(pacticipant: self).any?
end

#before_destroyObject



54
55
56
57
58
59
60
61
# File 'lib/pact_broker/domain/pacticipant.rb', line 54

def before_destroy
  PactBroker::Pacts::PactPublication.where(provider: self).delete
  PactBroker::Domain::Verification.where(consumer: self).or(provider: self).delete
  PactBroker::Domain::Version.where(pacticipant: self).delete
  PactBroker::Pacts::PactVersion.where(consumer: self).or(provider: self).delete
  PactBroker::Domain::Label.where(pacticipant: self).destroy
  super
end

#before_saveObject



63
64
65
66
67
# File 'lib/pact_broker/domain/pacticipant.rb', line 63

def before_save
  super
  self.display_name = generate_display_name(name) if display_name.blank?
  self.main_branch = nil if main_branch.blank?
end

#branch_head_for(branch_name) ⇒ Object



77
78
79
# File 'lib/pact_broker/domain/pacticipant.rb', line 77

def branch_head_for(branch_name)
  branch_heads.find{ | branch_head | branch_head.branch_name == branch_name }
end

#label?(name) ⇒ Boolean

Returns:

  • (Boolean)


81
82
83
# File 'lib/pact_broker/domain/pacticipant.rb', line 81

def label?(name)
  labels.any? { |label| label.name == name }
end

#to_sObject



69
70
71
# File 'lib/pact_broker/domain/pacticipant.rb', line 69

def to_s
  "Pacticipant: id=#{id}, name=#{name}"
end