Class: Shipit::MergeStatusController::ReferrerParser

Inherits:
Object
  • Object
show all
Defined in:
app/controllers/shipit/merge_status_controller.rb

Constant Summary collapse

URL_PATTERN =
%r{\Ahttps://github\.com/([^/]+)/([^/]+)/pull/(\d+)}

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(referrer) ⇒ ReferrerParser

Returns a new instance of ReferrerParser.



119
120
121
122
123
124
125
126
127
# File 'app/controllers/shipit/merge_status_controller.rb', line 119

def initialize(referrer)
  unless (match_info = URL_PATTERN.match(referrer.to_s))
    raise ArgumentError, "Invalid referrer: #{referrer.inspect}"
  end

  @repo_owner = match_info[1].downcase
  @repo_name = match_info[2].downcase
  @pull_request_number = match_info[3].to_i
end

Instance Attribute Details

#pull_request_numberObject (readonly)

Returns the value of attribute pull_request_number.



117
118
119
# File 'app/controllers/shipit/merge_status_controller.rb', line 117

def pull_request_number
  @pull_request_number
end

#repo_nameObject (readonly)

Returns the value of attribute repo_name.



117
118
119
# File 'app/controllers/shipit/merge_status_controller.rb', line 117

def repo_name
  @repo_name
end

#repo_ownerObject (readonly)

Returns the value of attribute repo_owner.



117
118
119
# File 'app/controllers/shipit/merge_status_controller.rb', line 117

def repo_owner
  @repo_owner
end