class Diesel::DataModel

Attributes

definition[R]

Public Class Methods

new(definition) click to toggle source
# File lib/diesel/data_model.rb, line 7
def initialize(definition)
  @definition = definition
end

Public Instance Methods

build(parameter_name, env) click to toggle source
# File lib/diesel/data_model.rb, line 11
def build(parameter_name, env)
  context = env[:context]
  h = context.get_attribute(parameter_name)
  return nil unless h

  json = definition.properties.reduce({}) do |m, (name, property)|
    name = name.to_sym
    m[name] = h[name] if h[name]; m
  end

  MultiJson.dump(json)
end