summaryrefslogtreecommitdiff
path: root/lib/gitlab_access_status.rb
diff options
context:
space:
mode:
authorAsh McKenzie <amckenzie@gitlab.com>2018-08-20 14:45:31 +1000
committerAsh McKenzie <amckenzie@gitlab.com>2018-09-08 00:52:57 +1000
commit6fd4f6804125c0992296d064f3c074d39efeb091 (patch)
treecfdaf9a1f6ea83fb249a712c0f9704d6397ffb64 /lib/gitlab_access_status.rb
parent1ff3561895f361b79f46a059880ea122e3500d08 (diff)
downloadgitlab-shell-ash.mckenzie/custom-action-support.tar.gz
Diffstat (limited to 'lib/gitlab_access_status.rb')
-rw-r--r--lib/gitlab_access_status.rb17
1 files changed, 14 insertions, 3 deletions
diff --git a/lib/gitlab_access_status.rb b/lib/gitlab_access_status.rb
index 68fbba1..8483863 100644
--- a/lib/gitlab_access_status.rb
+++ b/lib/gitlab_access_status.rb
@@ -1,9 +1,14 @@
require 'json'
+require_relative 'http_codes'
class GitAccessStatus
- attr_reader :message, :gl_repository, :gl_id, :gl_username, :gitaly, :git_protocol, :git_config_options
+ include HTTPCodes
- def initialize(status, status_code, message, gl_repository: nil, gl_id: nil, gl_username: nil, gitaly: nil, git_protocol: nil, git_config_options: nil)
+ attr_reader :message, :gl_repository, :gl_id, :gl_username, :gitaly, :git_protocol, :git_config_options, :payload
+
+ def initialize(status, status_code, message, gl_repository: nil, gl_id: nil,
+ gl_username: nil, gitaly: nil, git_protocol: nil,
+ git_config_options: nil, payload: nil)
@status = status
@status_code = status_code
@message = message
@@ -13,6 +18,7 @@ class GitAccessStatus
@git_config_options = git_config_options
@gitaly = gitaly
@git_protocol = git_protocol
+ @payload = payload
end
def self.create_from_json(json, status_code)
@@ -25,10 +31,15 @@ class GitAccessStatus
gl_username: values["gl_username"],
git_config_options: values["git_config_options"],
gitaly: values["gitaly"],
- git_protocol: values["git_protocol"])
+ git_protocol: values["git_protocol"],
+ payload: values["payload"])
end
def allowed?
@status
end
+
+ def custom_action?
+ @status_code == HTTP_MULTIPLE_CHOICES
+ end
end