diff options
author | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2016-03-29 13:21:57 +0200 |
---|---|---|
committer | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2016-03-30 10:44:18 +0200 |
commit | f2674c7b98c69668093583e4590223b7040b5b33 (patch) | |
tree | 5a967b8893ab4e73b3d0adea001e364848e65489 /app/services/issues/move_service.rb | |
parent | 0b8cefd3b2385a21cfed779bd659978c0402766d (diff) | |
download | gitlab-ce-f2674c7b98c69668093583e4590223b7040b5b33.tar.gz |
Refactor uploads rewriter used when moving issue
Diffstat (limited to 'app/services/issues/move_service.rb')
-rw-r--r-- | app/services/issues/move_service.rb | 23 |
1 files changed, 6 insertions, 17 deletions
diff --git a/app/services/issues/move_service.rb b/app/services/issues/move_service.rb index e15e25ee536..096a3643968 100644 --- a/app/services/issues/move_service.rb +++ b/app/services/issues/move_service.rb @@ -62,26 +62,15 @@ module Issues end def rewrite_content(content) - rewrite_uploads( - unfold_references(content) - ) - end - - def unfold_references(content) return unless content - rewriter = Gitlab::Gfm::ReferenceRewriter.new(content, @old_project, - @current_user) - rewriter.rewrite(@new_project) - end - - def rewrite_uploads(content) - return unless content + rewriters = [Gitlab::Gfm::ReferenceRewriter, + Gitlab::Gfm::UploadsRewriter] - rewriter = Gitlab::Gfm::UploadsRewriter.new(content, @old_project, - @current_user) - return content unless rewriter.has_uploads? - rewriter.rewrite(@new_project) + rewriters.inject(content) do |text, klass| + rewriter = klass.new(text, @old_project, @current_user) + rewriter.needs_rewrite? ? rewriter.rewrite(@new_project) : text + end end def close_issue |