class Ripcord::JsonRPC::Request

Attributes

id[R]
method[RW]
params[RW]

Public Class Methods

new(method, params, id) click to toggle source
# File lib/ripcord/json_rpc/request.rb, line 9
def initialize(method, params, id)
  @method = method
  @params = params
  @id = id
end

Public Instance Methods

to_payload() click to toggle source
# File lib/ripcord/json_rpc/request.rb, line 15
def to_payload
  {
    jsonrpc: Ripcord::JSON_RPC_VERSION,
    method: method
  }.tap do |payload_hash|
    payload_hash[:params] = params if should_include_params?
    payload_hash[:id] = id unless id.nil?
  end
end

Private Instance Methods

should_include_params?() click to toggle source
# File lib/ripcord/json_rpc/request.rb, line 27
def should_include_params?
  (params.is_a?(Array) || params.is_a?(Hash)) && !params.empty?
end