class Swarker::Serializers::ServiceSerializer
Attributes
schema[R]
service[R]
Public Class Methods
new(service)
click to toggle source
# File lib/swarker/serializers/service_serializer.rb, line 6 def initialize(service) @service = service @schema = build_hash end
Private Instance Methods
build_hash()
click to toggle source
# File lib/swarker/serializers/service_serializer.rb, line 15 def build_hash service.schema.merge(nested_objects) end
nested_objects()
click to toggle source
# File lib/swarker/serializers/service_serializer.rb, line 19 def nested_objects { definitions: objects_hash(service.definitions), paths: objects_hash(service.paths) } end
objects_hash(objects)
click to toggle source
# File lib/swarker/serializers/service_serializer.rb, line 26 def objects_hash(objects) objects.each_with_object({}) do |object, result| result[object.name] ||= HashWithIndifferentAccess.new result[object.name].merge!(object.schema) end end
to_json()
click to toggle source
# File lib/swarker/serializers/service_serializer.rb, line 33 def to_json schema.to_json end