Class: Solicit::ClaimPullRequest

Inherits:
Object
  • Object
show all
Defined in:
app/use_cases/solicit/claim_pull_request.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(url:, label:, assignee:, original:) ⇒ ClaimPullRequest

Returns a new instance of ClaimPullRequest.



3
4
5
6
7
8
# File 'app/use_cases/solicit/claim_pull_request.rb', line 3

def initialize(url:, label:, assignee:, original:)
  @url      = url
  @label    = label
  @assignee = assignee
  @original = original
end

Class Method Details

.perform(*args) ⇒ Object



10
11
12
# File 'app/use_cases/solicit/claim_pull_request.rb', line 10

def self.perform(*args)
  new(*args).perform
end

Instance Method Details

#performObject



14
15
16
17
18
19
20
# File 'app/use_cases/solicit/claim_pull_request.rb', line 14

def perform
  return unless claim_pull_request&.success?

  @original[:attachments].reject! { |a| a[:callback_id] == @url } unless needs_more_assignees?
  @original[:attachments] << { color: :good, text: claim_message }
  @original
end