class Ray::PayloadFactory

Attributes

arg[R]

Public Class Methods

create_for_values(args) click to toggle source
# File lib/ray/payload_factory.rb, line 5
def self.create_for_values(args)
  args.map do |arg|
    new(arg).get_payload
  end
end
new(arg) click to toggle source
# File lib/ray/payload_factory.rb, line 11
def initialize(arg)
  @arg = arg
end

Public Instance Methods

get_payload() click to toggle source
# File lib/ray/payload_factory.rb, line 15
def get_payload
  case arg
  when Integer
    Payloads::IntPayload.new(arg)
  when NilClass
    Payloads::NullPayload.new(arg)
  when TrueClass, FalseClass
    Payloads::BoolPayload.new(arg)
  when String
    Payloads::StringPayload.new(arg)
  else
    Payloads::JsonStringPayload.new([arg])
  end
end