Class: Moku6::Generators::JsonSchemaGenerator

Inherits:
BaseGenerator show all
Defined in:
lib/moku6/generators/json_schema_generator.rb

Overview

Emits a runtime event (envelope) validation JSON Schema per action. write(dir) takes a directory and writes multiple files.

Constant Summary

Constants inherited from BaseGenerator

BaseGenerator::AUTOGEN_NOTE

Instance Method Summary collapse

Methods inherited from BaseGenerator

#initialize, #render

Constructor Details

This class inherits a constructor from Moku6::Generators::BaseGenerator

Instance Method Details

#write(dir) ⇒ Object

: (String dir) -> String



13
14
15
16
17
18
19
20
# File 'lib/moku6/generators/json_schema_generator.rb', line 13

def write(dir)
  FileUtils.mkdir_p(dir)
  @catalog.sorted.each do |e|
    File.write(File.join(dir, "#{e.action}.json"),
      JSON.pretty_generate(EnvelopeSchema.for(e)) + "\n")
  end
  dir
end