Class: Belt::RequestModelBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/belt/route_dsl.rb

Constant Summary collapse

SUPPORTED_TYPES =
%i[string text number integer boolean date datetime array object map list].freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name) ⇒ RequestModelBuilder

Returns a new instance of RequestModelBuilder.



565
566
567
568
# File 'lib/belt/route_dsl.rb', line 565

def initialize(name)
  @name = name
  @fields = []
end

Instance Attribute Details

#fieldsObject (readonly)

Returns the value of attribute fields.



563
564
565
# File 'lib/belt/route_dsl.rb', line 563

def fields
  @fields
end

#nameObject (readonly)

Returns the value of attribute name.



563
564
565
# File 'lib/belt/route_dsl.rb', line 563

def name
  @name
end

Instance Method Details

#to_hObject



576
577
578
579
580
581
582
# File 'lib/belt/route_dsl.rb', line 576

def to_h
  {
    name: @name.to_s,
    properties: fields_to_properties,
    required: @fields.select { |f| f[:required] }.map { |f| f[:name].to_s }
  }
end