summaryrefslogtreecommitdiff
path: root/lib/api
diff options
context:
space:
mode:
authorSebastian Ziebell <sebastian.ziebell@asquera.de>2013-02-05 18:36:36 +0100
committerSebastian Ziebell <sebastian.ziebell@asquera.de>2013-02-06 17:02:30 +0100
commit3f4e215c804f13def585dea995efa29b2af266ec (patch)
tree8af586b112586e91a562a0e8f8d215c64556fe80 /lib/api
parent413952ff944d10164d9d08a8a48e7725fe44b1b3 (diff)
downloadgitlab-ce-3f4e215c804f13def585dea995efa29b2af266ec.tar.gz
Extracted helper method to avoid code duplication
Diffstat (limited to 'lib/api')
-rw-r--r--lib/api/merge_requests.rb33
1 files changed, 19 insertions, 14 deletions
diff --git a/lib/api/merge_requests.rb b/lib/api/merge_requests.rb
index 25ee8f05ba0..ec63b352474 100644
--- a/lib/api/merge_requests.rb
+++ b/lib/api/merge_requests.rb
@@ -5,6 +5,23 @@ module Gitlab
resource :projects do
+ helpers do
+ # If an error occurred this helper method provides an appropriate status code
+ #
+ # Parameters:
+ # merge_request_errors (required) - The errors collection of MR
+ #
+ def handle_merge_request_error(merge_request_errors)
+ if merge_request_errors[:target_branch].any?
+ error!(merge_request_errors[:target_branch], 400)
+ elsif merge_request_errors[:source_branch].any?
+ error!(merge_request_errors[:source_branch], 400)
+ elsif merge_request_errors[:base].any?
+ error!(merge_request_errors[:base], 422)
+ end
+ end
+ end
+
# List merge requests
#
# Parameters:
@@ -60,13 +77,7 @@ module Gitlab
merge_request.reload_code
present merge_request, with: Entities::MergeRequest
else
- if merge_request.errors[:target_branch].any?
- error!(merge_request.errors[:target_branch], 400)
- elsif merge_request.errors[:source_branch].any?
- error!(merge_request.errors[:source_branch], 400)
- elsif merge_request.errors[:base].any?
- error!(merge_request.errors[:base], 422)
- end
+ handle_merge_request_error(merge_request.errors)
not_found!
end
end
@@ -95,13 +106,7 @@ module Gitlab
merge_request.mark_as_unchecked
present merge_request, with: Entities::MergeRequest
else
- if merge_request.errors[:target_branch].any?
- error!(merge_request.errors[:target_branch], 400)
- elsif merge_request.errors[:source_branch].any?
- error!(merge_request.errors[:source_branch], 400)
- elsif merge_request.errors[:base].any?
- error!(merge_request.errors[:base], 422)
- end
+ handle_merge_request_error(merge_request.errors)
not_found!
end
end