Class: Gitlab::GithubImport::Representation::DiffNotes::DiscussionId

Inherits:
Object
  • Object
show all
Defined in:
lib/gitlab/github_import/representation/diff_notes/discussion_id.rb

Constant Summary collapse

NOTEABLE_TYPE =
'MergeRequest'
DISCUSSION_CACHE_REGEX =
%r{/(?<repo>[^/]*)/pull/(?<iid>\d+)}i
DISCUSSION_CACHE_KEY =
'github-importer/discussion-id-map/%{project}/%{noteable_id}/%{original_note_id}'

Instance Method Summary collapse

Constructor Details

#initialize(note) ⇒ DiscussionId

Returns a new instance of DiscussionId.



12
13
14
15
# File 'lib/gitlab/github_import/representation/diff_notes/discussion_id.rb', line 12

def initialize(note)
  @note = note
  @matches = note[:html_url].match(DISCUSSION_CACHE_REGEX)
end

Instance Method Details

#find_or_generateObject



17
18
19
# File 'lib/gitlab/github_import/representation/diff_notes/discussion_id.rb', line 17

def find_or_generate
  (note[:in_reply_to_id].present? && current_discussion_id) || generate_discussion_id
end