class Base

Attributes

petra_object[R]

Public Class Methods

new(petra_object=nil) click to toggle source

method to initialize this class

# File lib/petra_sdk/modules/base.rb, line 12
def initialize(petra_object=nil)
  unless !petra_object.nil?
    raise ArgumentError, "PetraSdk Africa Object is required!!!"
  end
  @petra_object = petra_object
end

Public Instance Methods

check_passed_parameters(required_params, passed_params) click to toggle source

method to check if the passed parameters is equal to the expected parameters

# File lib/petra_sdk/modules/base.rb, line 98
def check_passed_parameters(required_params, passed_params)

  # This is used to check if the passed authorization parameters matches the required parameters
  required_params.each do |k, v|
    if !passed_params.key?(k)
      raise IncompleteParameterError, "Parameters Incomplete, Missing Parameter: #{k}, Please pass in the complete parameter."
    end
  end
end
delete_request(endpoint, data) click to toggle source

method to make a delete request

# File lib/petra_sdk/modules/base.rb, line 80
def delete_request(endpoint, data)
  begin
    response = HTTParty.delete(endpoint, {
      body: data,
      headers: {
        "Content-Type" => "application/json",
        "Authorization" =>  "Bearer #{petra_object.secret_key}"
      }
    })

    unless (response.code == 200 || response.code == 201)
      raise PetraServerError.new(response), "HTTP Code #{response.code}: #{response.body}"
    end
    return response
  end
end
get_request(endpoint) click to toggle source
# File lib/petra_sdk/modules/base.rb, line 20
def get_request(endpoint)
  # headers = {
  #     "Authorization" => "Bearer #{petra_object.secret_key}"
  # }
  begin
    response = HTTParty.get(endpoint, :headers => { "Authorization" => "Bearer #{petra_object.secret_key}" })
    unless (response.code == 200 || response.code == 201)
      raise PetraServerError.new(response), "HTTP Code #{response.code}: #{response.body}"
    end

    return response

    unless(response.code != 0 )
      raise PetraServerError.new(response), "Server Message: #{response.message}"
    end

  rescue JSON::ParserError => jsonerr
    raise PetraServerError.new(response) , "Invalid result data. Could not parse JSON response body \n #{jsonerr.message}"
    return response
  end
end
post_request(endpoint, data) click to toggle source

method to make a post request

# File lib/petra_sdk/modules/base.rb, line 44
def post_request(endpoint, data)
  begin
    response = HTTParty.post(endpoint, {
      body: data,
      headers: {
        "Content-Type" => "application/json",
        "Authorization" =>  "Bearer #{petra_object.secret_key}"
      }
    })

    unless (response.code == 200 || response.code == 201)
      raise PetraServerError.new(response), "HTTP Code #{response.code}: #{response.body}"
    end
    return response
  end

end
put_request(endpoint, data) click to toggle source

method to make a put request

# File lib/petra_sdk/modules/base.rb, line 62
def put_request(endpoint, data)
  begin
    response = HTTParty.put(endpoint, {
      body: data,
      headers: {
        "Content-Type" => "application/json",
        "Authorization" =>  "Bearer #{petra_object.secret_key}"
      }
    })

    unless (response.code == 200 || response.code == 201)
      raise PetraServerError.new(response), "HTTP Code #{response.code}: #{response.body}"
    end
    return response
  end
end