class R2OAS::Schema::V3::Analyzer
Public Class Methods
new(before_schema_data, after_schema_data, options = {})
click to toggle source
Calls superclass method
# File lib/r2-oas/schema/v3/analyzer.rb, line 13 def initialize(before_schema_data, after_schema_data, options = {}) super @path_analyzer = PathAnalyzer.new(@before_schema_data, @after_schema_data, options) @tag_analyzer = TagAnalyzer.new(@after_schema_data, options) @components_analyzer = ComponentsAnalyzer.new(@before_schema_data, @after_schema_data, options) end
Public Instance Methods
analyze_docs()
click to toggle source
# File lib/r2-oas/schema/v3/analyzer.rb, line 20 def analyze_docs logger.info '[Analyze OAS file] start' @after_schema_data.keys.each do |schema_name| case schema_name when 'paths' logger.info '[Analyze OAS file (paths)] start' @path_analyzer.analyze_docs logger.info '[Analyze OAS file (paths)] end' when 'tags' logger.info '[Analyze OAS file (tags)] start' @tag_analyzer.analyze_docs logger.info '[Analyze OAS file (tags)] end' when 'components' logger.info '[Analyze OAS file (components)] start' @components_analyzer.analyze_docs logger.info '[Analyze OAS file (components)] end' else save_schema_when(schema_name) end end logger.info '[Analyze OAS file] end' end
Private Instance Methods
save_schema_when(schema_name)
click to toggle source
# File lib/r2-oas/schema/v3/analyzer.rb, line 45 def save_schema_when(schema_name) file_manager = FileManager.new(schema_name, :relative) data = @after_schema_data.slice(schema_name) case @type when :edited file_manager.save_after_deep_merge(data) when :existing file_manager.save(data.to_yaml) end end