diff options
author | Sebastian Ziebell <sebastian.ziebell@asquera.de> | 2013-02-05 18:36:36 +0100 |
---|---|---|
committer | Sebastian Ziebell <sebastian.ziebell@asquera.de> | 2013-02-06 17:02:30 +0100 |
commit | 3f4e215c804f13def585dea995efa29b2af266ec (patch) | |
tree | 8af586b112586e91a562a0e8f8d215c64556fe80 /lib/api | |
parent | 413952ff944d10164d9d08a8a48e7725fe44b1b3 (diff) | |
download | gitlab-ce-3f4e215c804f13def585dea995efa29b2af266ec.tar.gz |
Extracted helper method to avoid code duplication
Diffstat (limited to 'lib/api')
-rw-r--r-- | lib/api/merge_requests.rb | 33 |
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 |