Class: EventEngine::SchemaCatalogBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/event_engine/schema_catalog_builder.rb

Class Method Summary collapse

Class Method Details

.build(sources:, catalog_path:) ⇒ Object



5
6
7
8
9
# File 'lib/event_engine/schema_catalog_builder.rb', line 5

def self.build(sources:, catalog_path:)
  entries = sources.flat_map { |source| read(source) }

  File.write(catalog_path, "#{JSON.pretty_generate(entries)}\n")
end

.read(source) ⇒ Object



11
12
13
14
15
16
# File 'lib/event_engine/schema_catalog_builder.rb', line 11

def self.read(source)
  contents = File.read(source.to_s)
  return [] if contents.strip.empty?

  JSON.parse(contents)
end