Sha256: 929b929e5d73076045f3631949c4766c58642dbb8643103be388b94c77ccf34f

Contents?: true

Size: 1.28 KB

Versions: 2

Compression:

Stored size: 1.28 KB

Contents

# frozen_string_literal: true

require_relative "teuton-get/downloader"
require_relative "teuton-get/repo/local_info"
require_relative "teuton-get/repo/local_repo"
require_relative "teuton-get/repo/repo_config"
require_relative "teuton-get/repo/repo_data"
require_relative "teuton-get/searcher"
require_relative "teuton-get/show_info"

module TeutonGet
  def self.create_info(testpath)
    # Create metadata for local user teuton test
    LocalInfo.new.user_created(testpath)
  end

  def self.create_repo(dirpath)
    # Create metadata for local user teuton repository
    LocalRepo.default.create(dirpath)
  end

  def self.download(...)
    # Download teuton test from remote
    Downloader.new.run(...)
  end

  def self.init
    # Create Teuton Repo config file
    RepoConfig.default.create
    refresh # Auto repo refresh
  end

  def self.refresh
    # Refresh Teuton Repo Data
    RepoData.default.refresh
  end

  def self.show_repo_list(...)
    RepoConfig.default.show_list(...)
  end

  def self.show_info(...)
    ShowInfo.new.call(...)
  end

  def self.search(filter, options)
    searcher = Searcher.default
    search = searcher.get(filter)
    exit 1 if search.results.size.zero?

    if options["format"] == "json"
      search.show_json
    else
      search.show_screen
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
teuton-get-0.3.1 lib/teuton-get.rb
teuton-get-0.3.0 lib/teuton-get.rb