Module: Hub::GitHubAPI::HttpMethods::ResponseMethods

Defined in:
lib/hub/github_api.rb

Overview

Decorator for Net::HTTPResponse

Instance Method Summary collapse

Instance Method Details

#dataObject



173
# File 'lib/hub/github_api.rb', line 173

def data() @data ||= JSON.parse(body) end

#data?Boolean

Returns:

  • (Boolean)


172
# File 'lib/hub/github_api.rb', line 172

def data?() content_type =~ /\bjson\b/ end

#error_messageObject



175
# File 'lib/hub/github_api.rb', line 175

def error_message() error_sentences || data['message'] end

#error_message?Boolean

Returns:

  • (Boolean)


174
# File 'lib/hub/github_api.rb', line 174

def error_message?() data? and data['errors'] || data['message'] end

#error_sentencesObject



177
178
179
180
181
182
183
184
185
186
187
188
189
# File 'lib/hub/github_api.rb', line 177

def error_sentences
  data['errors'].map do |err|
    case err['code']
    when 'custom'        then err['message']
    when 'missing_field'
      %(Missing field: "%s") % err['field']
    when 'invalid'
      %(Invalid value for "%s": "%s") % [ err['field'], err['value'] ]
    when 'unauthorized'
      %(Not allowed to change field "%s") % err['field']
    end
  end.compact if data['errors']
end

#statusObject



171
# File 'lib/hub/github_api.rb', line 171

def status() code.to_i end

#success?Boolean

Returns:

  • (Boolean)


176
# File 'lib/hub/github_api.rb', line 176

def success?() Net::HTTPSuccess === self end