diff options
author | Douwe Maan <douwe@gitlab.com> | 2015-11-19 18:18:13 +0300 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2015-11-19 18:18:13 +0300 |
commit | e1e67d383e4b56c9e1848aebc175402a71502e82 (patch) | |
tree | f8c6ebb928e0cb822d3b8e53788cf5771fd79cfd /lib/gitlab | |
parent | f5a630111fb1499a1541e77040529f74ca6475ec (diff) |
Move Markdown filters and pipelines into folders.
Diffstat (limited to 'lib/gitlab')
-rw-r--r-- | lib/gitlab/markdown.rb | 80 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/autolink_filter.rb (renamed from lib/gitlab/markdown/autolink_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/commit_range_reference_filter.rb (renamed from lib/gitlab/markdown/commit_range_reference_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/commit_reference_filter.rb (renamed from lib/gitlab/markdown/commit_reference_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/emoji_filter.rb (renamed from lib/gitlab/markdown/emoji_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/external_issue_reference_filter.rb (renamed from lib/gitlab/markdown/external_issue_reference_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/external_link_filter.rb (renamed from lib/gitlab/markdown/external_link_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/issue_reference_filter.rb (renamed from lib/gitlab/markdown/issue_reference_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/label_reference_filter.rb (renamed from lib/gitlab/markdown/label_reference_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/markdown_filter.rb (renamed from lib/gitlab/markdown/markdown_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/merge_request_reference_filter.rb (renamed from lib/gitlab/markdown/merge_request_reference_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/redactor_filter.rb (renamed from lib/gitlab/markdown/redactor_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/reference_gatherer_filter.rb (renamed from lib/gitlab/markdown/reference_gatherer_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/relative_link_filter.rb (renamed from lib/gitlab/markdown/relative_link_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/sanitization_filter.rb (renamed from lib/gitlab/markdown/sanitization_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/snippet_reference_filter.rb (renamed from lib/gitlab/markdown/snippet_reference_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/syntax_highlight_filter.rb (renamed from lib/gitlab/markdown/syntax_highlight_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/table_of_contents_filter.rb (renamed from lib/gitlab/markdown/table_of_contents_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/task_list_filter.rb (renamed from lib/gitlab/markdown/task_list_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/upload_link_filter.rb (renamed from lib/gitlab/markdown/upload_link_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/filter/user_reference_filter.rb (renamed from lib/gitlab/markdown/user_reference_filter.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline.rb | 5 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/asciidoc_pipeline.rb (renamed from lib/gitlab/markdown/asciidoc_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/atom_pipeline.rb (renamed from lib/gitlab/markdown/atom_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/description_pipeline.rb (renamed from lib/gitlab/markdown/description_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/email_pipeline.rb (renamed from lib/gitlab/markdown/email_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/full_pipeline.rb (renamed from lib/gitlab/markdown/full_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/gfm_pipeline.rb (renamed from lib/gitlab/markdown/gfm_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/note_pipeline.rb (renamed from lib/gitlab/markdown/note_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/plain_markdown_pipeline.rb (renamed from lib/gitlab/markdown/plain_markdown_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/post_process_pipeline.rb (renamed from lib/gitlab/markdown/post_process_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/reference_extraction_pipeline.rb (renamed from lib/gitlab/markdown/reference_extraction_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/pipeline/single_line_pipeline.rb (renamed from lib/gitlab/markdown/single_line_pipeline.rb) | 0 | ||||
-rw-r--r-- | lib/gitlab/markdown/reference_filter.rb | 4 | ||||
-rw-r--r-- | lib/gitlab/reference_extractor.rb | 3 |
35 files changed, 46 insertions, 46 deletions
diff --git a/lib/gitlab/markdown.rb b/lib/gitlab/markdown.rb index 969607558ef..f4e2cefca51 100644 --- a/lib/gitlab/markdown.rb +++ b/lib/gitlab/markdown.rb @@ -33,7 +33,7 @@ module Gitlab end def self.render_result(text, context = {}) - pipeline_by_name(context[:pipeline]).call(text, context) + Pipeline[context[:pipeline]].call(text, context) end # Perform post-processing on an HTML String @@ -50,11 +50,9 @@ module Gitlab # # Returns an HTML-safe String def self.post_process(html, context) - pipeline = pipeline_by_name(context[:pipeline]) - context = pipeline.transform_context(context) - - pipeline = pipeline_by_name(:post_process) + context = Pipeline[context[:pipeline]].transform_context(context) + pipeline = Pipeline[:post_process] if context[:xhtml] pipeline.to_document(html, context).to_html(save_with: Nokogiri::XML::Node::SaveOptions::AS_XHTML) else @@ -66,6 +64,7 @@ module Gitlab def self.cacheless_render(text, context = {}) result = render_result(text, context) + output = result[:output] if output.respond_to?(:to_html) output.to_html @@ -76,48 +75,41 @@ module Gitlab def self.full_cache_key(cache_key, pipeline_name) return unless cache_key - pipeline_name ||= :full - ["markdown", *cache_key, pipeline_name] - end - - def self.pipeline_by_name(pipeline_name) - pipeline_name ||= :full - const_get("#{pipeline_name.to_s.camelize}Pipeline") + ["markdown", *cache_key, pipeline_name || :full] end # Provide autoload paths for filters to prevent a circular dependency error - autoload :AutolinkFilter, 'gitlab/markdown/autolink_filter' - autoload :CommitRangeReferenceFilter, 'gitlab/markdown/commit_range_reference_filter' - autoload :CommitReferenceFilter, 'gitlab/markdown/commit_reference_filter' - autoload :EmojiFilter, 'gitlab/markdown/emoji_filter' - autoload :ExternalIssueReferenceFilter, 'gitlab/markdown/external_issue_reference_filter' - autoload :ExternalLinkFilter, 'gitlab/markdown/external_link_filter' - autoload :IssueReferenceFilter, 'gitlab/markdown/issue_reference_filter' - autoload :LabelReferenceFilter, 'gitlab/markdown/label_reference_filter' - autoload :MarkdownFilter, 'gitlab/markdown/markdown_filter' - autoload :MergeRequestReferenceFilter, 'gitlab/markdown/merge_request_reference_filter' - autoload :RedactorFilter, 'gitlab/markdown/redactor_filter' - autoload :RelativeLinkFilter, 'gitlab/markdown/relative_link_filter' - autoload :SanitizationFilter, 'gitlab/markdown/sanitization_filter' - autoload :SnippetReferenceFilter, 'gitlab/markdown/snippet_reference_filter' - autoload :SyntaxHighlightFilter, 'gitlab/markdown/syntax_highlight_filter' - autoload :TableOfContentsFilter, 'gitlab/markdown/table_of_contents_filter' - autoload :TaskListFilter, 'gitlab/markdown/task_list_filter' - autoload :UserReferenceFilter, 'gitlab/markdown/user_reference_filter' - autoload :UploadLinkFilter, 'gitlab/markdown/upload_link_filter' + autoload :AutolinkFilter, 'gitlab/markdown/filter/autolink_filter' + autoload :CommitRangeReferenceFilter, 'gitlab/markdown/filter/commit_range_reference_filter' + autoload :CommitReferenceFilter, 'gitlab/markdown/filter/commit_reference_filter' + autoload :EmojiFilter, 'gitlab/markdown/filter/emoji_filter' + autoload :ExternalIssueReferenceFilter, 'gitlab/markdown/filter/external_issue_reference_filter' + autoload :ExternalLinkFilter, 'gitlab/markdown/filter/external_link_filter' + autoload :IssueReferenceFilter, 'gitlab/markdown/filter/issue_reference_filter' + autoload :LabelReferenceFilter, 'gitlab/markdown/filter/label_reference_filter' + autoload :MarkdownFilter, 'gitlab/markdown/filter/markdown_filter' + autoload :MergeRequestReferenceFilter, 'gitlab/markdown/filter/merge_request_reference_filter' + autoload :RedactorFilter, 'gitlab/markdown/filter/redactor_filter' + autoload :ReferenceGathererFilter, 'gitlab/markdown/filter/reference_gatherer_filter' + autoload :RelativeLinkFilter, 'gitlab/markdown/filter/relative_link_filter' + autoload :SanitizationFilter, 'gitlab/markdown/filter/sanitization_filter' + autoload :SnippetReferenceFilter, 'gitlab/markdown/filter/snippet_reference_filter' + autoload :SyntaxHighlightFilter, 'gitlab/markdown/filter/syntax_highlight_filter' + autoload :TableOfContentsFilter, 'gitlab/markdown/filter/table_of_contents_filter' + autoload :TaskListFilter, 'gitlab/markdown/filter/task_list_filter' + autoload :UserReferenceFilter, 'gitlab/markdown/filter/user_reference_filter' + autoload :UploadLinkFilter, 'gitlab/markdown/filter/upload_link_filter' - autoload :AsciidocPipeline, 'gitlab/markdown/asciidoc_pipeline' - autoload :AtomPipeline, 'gitlab/markdown/atom_pipeline' - autoload :CombinedPipeline, 'gitlab/markdown/combined_pipeline' - autoload :DescriptionPipeline, 'gitlab/markdown/description_pipeline' - autoload :EmailPipeline, 'gitlab/markdown/email_pipeline' - autoload :FullPipeline, 'gitlab/markdown/full_pipeline' - autoload :GfmPipeline, 'gitlab/markdown/gfm_pipeline' - autoload :NotePipeline, 'gitlab/markdown/note_pipeline' - autoload :Pipeline, 'gitlab/markdown/pipeline' - autoload :PlainMarkdownPipeline, 'gitlab/markdown/plain_markdown_pipeline' - autoload :PostProcessPipeline, 'gitlab/markdown/post_process_pipeline' - autoload :ReferenceExtractionPipeline, 'gitlab/markdown/reference_extraction_pipeline' - autoload :SingleLinePipeline, 'gitlab/markdown/single_line_pipeline' + autoload :AsciidocPipeline, 'gitlab/markdown/pipeline/asciidoc_pipeline' + autoload :AtomPipeline, 'gitlab/markdown/pipeline/atom_pipeline' + autoload :DescriptionPipeline, 'gitlab/markdown/pipeline/description_pipeline' + autoload :EmailPipeline, 'gitlab/markdown/pipeline/email_pipeline' + autoload :FullPipeline, 'gitlab/markdown/pipeline/full_pipeline' + autoload :GfmPipeline, 'gitlab/markdown/pipeline/gfm_pipeline' + autoload :NotePipeline, 'gitlab/markdown/pipeline/note_pipeline' + autoload :PlainMarkdownPipeline, 'gitlab/markdown/pipeline/plain_markdown_pipeline' + autoload :PostProcessPipeline, 'gitlab/markdown/pipeline/post_process_pipeline' + autoload :ReferenceExtractionPipeline, 'gitlab/markdown/pipeline/reference_extraction_pipeline' + autoload :SingleLinePipeline, 'gitlab/markdown/pipeline/single_line_pipeline' end end diff --git a/lib/gitlab/markdown/autolink_filter.rb b/lib/gitlab/markdown/filter/autolink_filter.rb index c37c3bc55bf..c37c3bc55bf 100644 --- a/lib/gitlab/markdown/autolink_filter.rb +++ b/lib/gitlab/markdown/filter/autolink_filter.rb diff --git a/lib/gitlab/markdown/commit_range_reference_filter.rb b/lib/gitlab/markdown/filter/commit_range_reference_filter.rb index e070edae0a4..e070edae0a4 100644 --- a/lib/gitlab/markdown/commit_range_reference_filter.rb +++ b/lib/gitlab/markdown/filter/commit_range_reference_filter.rb diff --git a/lib/gitlab/markdown/commit_reference_filter.rb b/lib/gitlab/markdown/filter/commit_reference_filter.rb index 8cdbeb1f9cf..8cdbeb1f9cf 100644 --- a/lib/gitlab/markdown/commit_reference_filter.rb +++ b/lib/gitlab/markdown/filter/commit_reference_filter.rb diff --git a/lib/gitlab/markdown/emoji_filter.rb b/lib/gitlab/markdown/filter/emoji_filter.rb index da10e4d3760..da10e4d3760 100644 --- a/lib/gitlab/markdown/emoji_filter.rb +++ b/lib/gitlab/markdown/filter/emoji_filter.rb diff --git a/lib/gitlab/markdown/external_issue_reference_filter.rb b/lib/gitlab/markdown/filter/external_issue_reference_filter.rb index 8f86f13976a..8f86f13976a 100644 --- a/lib/gitlab/markdown/external_issue_reference_filter.rb +++ b/lib/gitlab/markdown/filter/external_issue_reference_filter.rb diff --git a/lib/gitlab/markdown/external_link_filter.rb b/lib/gitlab/markdown/filter/external_link_filter.rb index 29e51b6ade6..29e51b6ade6 100644 --- a/lib/gitlab/markdown/external_link_filter.rb +++ b/lib/gitlab/markdown/filter/external_link_filter.rb diff --git a/lib/gitlab/markdown/issue_reference_filter.rb b/lib/gitlab/markdown/filter/issue_reference_filter.rb index 1ed69e2f431..1ed69e2f431 100644 --- a/lib/gitlab/markdown/issue_reference_filter.rb +++ b/lib/gitlab/markdown/filter/issue_reference_filter.rb diff --git a/lib/gitlab/markdown/label_reference_filter.rb b/lib/gitlab/markdown/filter/label_reference_filter.rb index 618acb7a578..618acb7a578 100644 --- a/lib/gitlab/markdown/label_reference_filter.rb +++ b/lib/gitlab/markdown/filter/label_reference_filter.rb diff --git a/lib/gitlab/markdown/markdown_filter.rb b/lib/gitlab/markdown/filter/markdown_filter.rb index 921e2a0794e..921e2a0794e 100644 --- a/lib/gitlab/markdown/markdown_filter.rb +++ b/lib/gitlab/markdown/filter/markdown_filter.rb diff --git a/lib/gitlab/markdown/merge_request_reference_filter.rb b/lib/gitlab/markdown/filter/merge_request_reference_filter.rb index 1f47f03c94e..1f47f03c94e 100644 --- a/lib/gitlab/markdown/merge_request_reference_filter.rb +++ b/lib/gitlab/markdown/filter/merge_request_reference_filter.rb diff --git a/lib/gitlab/markdown/redactor_filter.rb b/lib/gitlab/markdown/filter/redactor_filter.rb index a1f3a8a8ebf..a1f3a8a8ebf 100644 --- a/lib/gitlab/markdown/redactor_filter.rb +++ b/lib/gitlab/markdown/filter/redactor_filter.rb diff --git a/lib/gitlab/markdown/reference_gatherer_filter.rb b/lib/gitlab/markdown/filter/reference_gatherer_filter.rb index 00f983675e6..00f983675e6 100644 --- a/lib/gitlab/markdown/reference_gatherer_filter.rb +++ b/lib/gitlab/markdown/filter/reference_gatherer_filter.rb diff --git a/lib/gitlab/markdown/relative_link_filter.rb b/lib/gitlab/markdown/filter/relative_link_filter.rb index 81f60120fcd..81f60120fcd 100644 --- a/lib/gitlab/markdown/relative_link_filter.rb +++ b/lib/gitlab/markdown/filter/relative_link_filter.rb diff --git a/lib/gitlab/markdown/sanitization_filter.rb b/lib/gitlab/markdown/filter/sanitization_filter.rb index cf153f30622..cf153f30622 100644 --- a/lib/gitlab/markdown/sanitization_filter.rb +++ b/lib/gitlab/markdown/filter/sanitization_filter.rb diff --git a/lib/gitlab/markdown/snippet_reference_filter.rb b/lib/gitlab/markdown/filter/snippet_reference_filter.rb index f7bd07c2a34..f7bd07c2a34 100644 --- a/lib/gitlab/markdown/snippet_reference_filter.rb +++ b/lib/gitlab/markdown/filter/snippet_reference_filter.rb diff --git a/lib/gitlab/markdown/syntax_highlight_filter.rb b/lib/gitlab/markdown/filter/syntax_highlight_filter.rb index 8597e02f0de..8597e02f0de 100644 --- a/lib/gitlab/markdown/syntax_highlight_filter.rb +++ b/lib/gitlab/markdown/filter/syntax_highlight_filter.rb diff --git a/lib/gitlab/markdown/table_of_contents_filter.rb b/lib/gitlab/markdown/filter/table_of_contents_filter.rb index bbb3bf7fc8b..bbb3bf7fc8b 100644 --- a/lib/gitlab/markdown/table_of_contents_filter.rb +++ b/lib/gitlab/markdown/filter/table_of_contents_filter.rb diff --git a/lib/gitlab/markdown/task_list_filter.rb b/lib/gitlab/markdown/filter/task_list_filter.rb index 2f133ae8500..2f133ae8500 100644 --- a/lib/gitlab/markdown/task_list_filter.rb +++ b/lib/gitlab/markdown/filter/task_list_filter.rb diff --git a/lib/gitlab/markdown/upload_link_filter.rb b/lib/gitlab/markdown/filter/upload_link_filter.rb index fbada73ab86..fbada73ab86 100644 --- a/lib/gitlab/markdown/upload_link_filter.rb +++ b/lib/gitlab/markdown/filter/upload_link_filter.rb diff --git a/lib/gitlab/markdown/user_reference_filter.rb b/lib/gitlab/markdown/filter/user_reference_filter.rb index ab5e1f6fe9e..ab5e1f6fe9e 100644 --- a/lib/gitlab/markdown/user_reference_filter.rb +++ b/lib/gitlab/markdown/filter/user_reference_filter.rb diff --git a/lib/gitlab/markdown/pipeline.rb b/lib/gitlab/markdown/pipeline.rb index 3c0b676a073..d683756f95a 100644 --- a/lib/gitlab/markdown/pipeline.rb +++ b/lib/gitlab/markdown/pipeline.rb @@ -3,6 +3,11 @@ require 'gitlab/markdown' module Gitlab module Markdown class Pipeline + def self.[](name) + name ||= :full + Markdown.const_get("#{name.to_s.camelize}Pipeline") + end + def self.filters [] end diff --git a/lib/gitlab/markdown/asciidoc_pipeline.rb b/lib/gitlab/markdown/pipeline/asciidoc_pipeline.rb index 6829b4acb95..6829b4acb95 100644 --- a/lib/gitlab/markdown/asciidoc_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/asciidoc_pipeline.rb diff --git a/lib/gitlab/markdown/atom_pipeline.rb b/lib/gitlab/markdown/pipeline/atom_pipeline.rb index e151f8f5e5a..e151f8f5e5a 100644 --- a/lib/gitlab/markdown/atom_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/atom_pipeline.rb diff --git a/lib/gitlab/markdown/description_pipeline.rb b/lib/gitlab/markdown/pipeline/description_pipeline.rb index 76f6948af8f..76f6948af8f 100644 --- a/lib/gitlab/markdown/description_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/description_pipeline.rb diff --git a/lib/gitlab/markdown/email_pipeline.rb b/lib/gitlab/markdown/pipeline/email_pipeline.rb index b88cb790270..b88cb790270 100644 --- a/lib/gitlab/markdown/email_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/email_pipeline.rb diff --git a/lib/gitlab/markdown/full_pipeline.rb b/lib/gitlab/markdown/pipeline/full_pipeline.rb index 553e9367c1c..553e9367c1c 100644 --- a/lib/gitlab/markdown/full_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/full_pipeline.rb diff --git a/lib/gitlab/markdown/gfm_pipeline.rb b/lib/gitlab/markdown/pipeline/gfm_pipeline.rb index ca90bd75d77..ca90bd75d77 100644 --- a/lib/gitlab/markdown/gfm_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/gfm_pipeline.rb diff --git a/lib/gitlab/markdown/note_pipeline.rb b/lib/gitlab/markdown/pipeline/note_pipeline.rb index a8bf5f42d8e..a8bf5f42d8e 100644 --- a/lib/gitlab/markdown/note_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/note_pipeline.rb diff --git a/lib/gitlab/markdown/plain_markdown_pipeline.rb b/lib/gitlab/markdown/pipeline/plain_markdown_pipeline.rb index 0abb93f8a03..0abb93f8a03 100644 --- a/lib/gitlab/markdown/plain_markdown_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/plain_markdown_pipeline.rb diff --git a/lib/gitlab/markdown/post_process_pipeline.rb b/lib/gitlab/markdown/pipeline/post_process_pipeline.rb index 60cc32f490e..60cc32f490e 100644 --- a/lib/gitlab/markdown/post_process_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/post_process_pipeline.rb diff --git a/lib/gitlab/markdown/reference_extraction_pipeline.rb b/lib/gitlab/markdown/pipeline/reference_extraction_pipeline.rb index a89ab462bac..a89ab462bac 100644 --- a/lib/gitlab/markdown/reference_extraction_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/reference_extraction_pipeline.rb diff --git a/lib/gitlab/markdown/single_line_pipeline.rb b/lib/gitlab/markdown/pipeline/single_line_pipeline.rb index 2f24927b879..2f24927b879 100644 --- a/lib/gitlab/markdown/single_line_pipeline.rb +++ b/lib/gitlab/markdown/pipeline/single_line_pipeline.rb diff --git a/lib/gitlab/markdown/reference_filter.rb b/lib/gitlab/markdown/reference_filter.rb index a4c560f578c..22fe4440be3 100644 --- a/lib/gitlab/markdown/reference_filter.rb +++ b/lib/gitlab/markdown/reference_filter.rb @@ -29,6 +29,10 @@ module Gitlab end end + def self.[](name) + Markdown.const_get("#{name.to_s.camelize}ReferenceFilter") + end + def self.user_can_reference?(user, node, context) if node.has_attribute?('data-project') project_id = node.attr('data-project').to_i diff --git a/lib/gitlab/reference_extractor.rb b/lib/gitlab/reference_extractor.rb index e5cafebdbc0..e83167fa7d7 100644 --- a/lib/gitlab/reference_extractor.rb +++ b/lib/gitlab/reference_extractor.rb @@ -33,8 +33,7 @@ module Gitlab # # Returns the results Array for the requested filter type def pipeline_result(filter_type) - klass = "#{filter_type.to_s.camelize}ReferenceFilter" - filter = Gitlab::Markdown.const_get(klass) + filter = Gitlab::Markdown::ReferenceFilter[filter_type] context = { pipeline: :reference_extraction, |