class OpenAPIParser::SchemaLoader
load data to target_object
by schema definition in core
Attributes
children[R]
@!attribute [r] children
@return [Array<OpenAPIParser::Schemas::Base>]
core[R]
target_object[R]
Public Class Methods
new(target_object, core)
click to toggle source
@param [OpenAPIParser::Schemas::Base] target_object
@param [OpenAPIParser::Parser::Core] core
# File lib/openapi_parser/concerns/schema_loader.rb, line 16 def initialize(target_object, core) @target_object = target_object @core = core @children = {} end
Public Instance Methods
load_data()
click to toggle source
execute load data return data is equal to :children @return [Array<OpenAPIParser::Schemas::Base>]
# File lib/openapi_parser/concerns/schema_loader.rb, line 29 def load_data all_loader.each { |l| load_data_by_schema_loader(l) } children end
Private Instance Methods
all_loader()
click to toggle source
# File lib/openapi_parser/concerns/schema_loader.rb, line 51 def all_loader core._openapi_attr_values.values + core._openapi_attr_objects.values + core._openapi_attr_list_objects.values + core._openapi_attr_hash_objects.values + core._openapi_attr_hash_body_objects.values end
load_data_by_schema_loader(schema_loader)
click to toggle source
@param [OpenAPIParser::SchemaLoader::Base] schema_loader
# File lib/openapi_parser/concerns/schema_loader.rb, line 39 def load_data_by_schema_loader(schema_loader) children = schema_loader.load_data(target_object, target_object.raw_schema) children.each { |c| register_child(c) } if children end
register_child(object)
click to toggle source
# File lib/openapi_parser/concerns/schema_loader.rb, line 45 def register_child(object) return unless object.kind_of?(OpenAPIParser::Parser) @children[object.object_reference] = object end