module Hyperender

Constants

HATEOAS_MSG
VERSION

Public Class Methods

generated_data(data, errors) click to toggle source
# File lib/hyperender.rb, line 69
def self.generated_data data, errors
  data[:errors] = errors unless errors.blank?
  data
end
generated_headers(request) click to toggle source
# File lib/hyperender.rb, line 74
def self.generated_headers request
  enviroment = [
    #Server specific variables
    # "SERVER_SOFTWARE", "SERVER_NAME", "GATEWAY_INTERFACE",
    #Request specific variables
   "SERVER_PROTOCOL", "SERVER_PORT", "REQUEST_METHOD", "PATH_INFO", "PATH_TRANSLATED", "SCRIPT_NAME", "QUERY_STRING", "REMOTE_HOST", "REMOTE_ADDR", "AUTH_TYPE", "REMOTE_USER", "REMOTE_IDENT", "CONTENT_TYPE", "CONTENT_LENGTH", "HTTP_USER_AGENT", "X_CUSTOM_HEADER"
  ]
  headers = {}
  enviroment.each do |env|
    attribute = request.headers[env]
    headers[env.downcase] = attribute unless attribute.blank?
  end
  headers
end
render(data, errors, parameters, message, status, request) click to toggle source
# File lib/hyperender.rb, line 53
def self.render data, errors, parameters, message, status, request
  {
    data:               (Hyperender.generated_data data, errors),
    query_parameters:   parameters,
    response: {
      message:          message,
      status:           status
    },
    request: {
      url:              request.original_url,
      method:           request.request_method,
      headers:          (Hyperender.generated_headers request),
    }
  }
end