2016-07-10 21:13:06 +00:00
|
|
|
module Gitlab
|
|
|
|
module DependencyLinker
|
|
|
|
LINKERS = [
|
2017-05-16 20:26:31 +00:00
|
|
|
GemfileLinker,
|
|
|
|
GemspecLinker,
|
2017-05-16 20:27:50 +00:00
|
|
|
PackageJsonLinker,
|
2017-05-16 20:28:11 +00:00
|
|
|
ComposerJsonLinker,
|
2017-05-16 20:28:52 +00:00
|
|
|
PodfileLinker,
|
2017-05-16 20:29:13 +00:00
|
|
|
PodspecLinker,
|
2017-05-16 20:29:34 +00:00
|
|
|
PodspecJsonLinker,
|
2017-05-16 20:29:56 +00:00
|
|
|
CartfileLinker,
|
2017-05-16 20:30:18 +00:00
|
|
|
GodepsJsonLinker,
|
2017-05-16 20:30:29 +00:00
|
|
|
RequirementsTxtLinker
|
2016-07-10 21:13:06 +00:00
|
|
|
].freeze
|
|
|
|
|
|
|
|
def self.linker(blob_name)
|
|
|
|
LINKERS.find { |linker| linker.support?(blob_name) }
|
|
|
|
end
|
|
|
|
|
|
|
|
def self.link(blob_name, plain_text, highlighted_text)
|
|
|
|
linker = linker(blob_name)
|
|
|
|
return highlighted_text unless linker
|
|
|
|
|
|
|
|
linker.link(plain_text, highlighted_text)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|