class Zn::Cli

Cli composes a default search assembly and provides a CLI

Public Instance Methods

execute() click to toggle source
# File lib/zn/cli.rb, line 33
def execute
  search_assembly(config_file).search(dataset: dataset, key: key, value: value, exact: exact?) do |entity|
    puts entity.to_json
  end
end
search_assembly(config_file) click to toggle source
# File lib/zn/cli.rb, line 15
def search_assembly(config_file)
  assembly = Zn::SearchAssembly.new
  assembler = Zn::SearchAssembler.new(assembly)
  assembler.register_repo_class(:json, Zn::Repos::JsonRepo)
  assembler.register_associator_class(:has_many, Zn::Associators::HasMany)
  assembler.register_associator_class(:belongs_to, Zn::Associators::BelongsTo)
  assembler.assemble(config_file)
  assembly
end