Sha256: 0d29696d23cd57adb5c44fecc5ed0ae724a5ca667528c0c47c33956b624a204f

Contents?: true

Size: 855 Bytes

Versions: 5

Compression:

Stored size: 855 Bytes

Contents

module Bixby

# Wraps a JSON Request
#
# @attr [String] operation  Name of operation
# @attr [Array] params  Array of paramters; must be valid JSON types
class JsonRequest

  include Jsonify
  include HttpClient

  attr_accessor :operation, :params

  # Create a new JsonRequest
  #
  # @param [String] operation  Name of operation
  # @param [Array] params  Array of parameters; must ve valid JSON types
  def initialize(operation, params)
    @operation = operation
    @params = params
  end

  # Convert object to String, useful for debugging
  #
  # @return [String]
  def to_s # :nocov:
    s = []
    s << "JsonRequest:#{self.object_id}"
    s << "  operation:  #{self.operation}"
    s << "  params:     " + MultiJson.dump(self.params)
    s.join("\n")
  end # :nocov:

  def to_wire
    MultiJson.dump(self)
  end

end # JsonRequest
end # Bixby

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
bixby-common-0.4.4 lib/bixby-common/api/json_request.rb
bixby-common-0.4.3 lib/bixby-common/api/json_request.rb
bixby-common-0.4.2 lib/bixby-common/api/json_request.rb
bixby-common-0.4.1 lib/bixby-common/api/json_request.rb
bixby-common-0.4.0 lib/bixby-common/api/json_request.rb