class Aws::Json::Builder

def build(params)

Returns:
  • (Hash) -

Parameters:
  • params (Hash) --
def build(params)
  structure(@rules, params)
end

def initialize(rules)

Parameters:
  • rules (Seahorse::Model::Shapes::Shape) --
def initialize(rules)
  @rules = rules
end

def list(shape, values)

def list(shape, values)
  values.map { |value| member(shape.members, value) }
end

def map(shape, values)

def map(shape, values)
  data = {}
  values.each do |key, value|
    data[key] = member(shape.members, value)
  end
  data
end

def member(shape, value)

def member(shape, value)
  case shape
  when StructureShape then structure(shape, value)
  when ListShape then list(shape, value)
  when MapShape then map(shape, value)
  when TimestampShape then timestamp(shape, value.utc)
  when BlobShape then Base64.strict_encode64(value)
  else value
  end
end

def structure(shape, values)

def structure(shape, values)
  data = {}
  values.each do |key, value|
    unless value.nil?
      if member_shape = shape.members[key]
        data[member_shape.serialized_name] = member(member_shape, value)
      end
    end
  end
  data
end

def to_json(params)

Returns:
  • (String) -

Parameters:
  • params (Hash) --
def to_json(params)
  MultiJson.dump(build(params))
end

def to_json(rules, params)

Returns:
  • (String) -

Parameters:
  • params (Hash) --
  • rules (Seahorse::Model::Shapes::Shape) --
def to_json(rules, params)
  new(rules).to_json(params)
end