Class: Rdm::CLI::DependenciesController

Inherits:
Object
  • Object
show all
Defined in:
lib/rdm/cli/dependencies_controller.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(package_name, project_path, stdout) ⇒ DependenciesController

Returns a new instance of DependenciesController.



10
11
12
13
14
# File 'lib/rdm/cli/dependencies_controller.rb', line 10

def initialize(package_name, project_path, stdout)
  @package_name = package_name
  @project_path = project_path
  @stdout = stdout || $stdout
end

Class Method Details

.run(package_name:, project_path:, stdout: nil) ⇒ Object



5
6
7
# File 'lib/rdm/cli/dependencies_controller.rb', line 5

def run(package_name:, project_path:, stdout: nil)
  new(package_name, project_path, stdout).run
end

Instance Method Details

#runObject



16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/rdm/cli/dependencies_controller.rb', line 16

def run
  @stdout.puts Rdm::Handlers::DependenciesHandler.draw(
    package_name: @package_name,
    project_path: @project_path
  )
rescue Rdm::Errors::InvalidParams => e
  @stdout.puts e.message
rescue Rdm::Errors::SourceFileDoesNotExist => e
  @stdout.puts e.message
rescue Rdm::Errors::PackageHasNoDependencies => e
  @stdout.puts "Package `#{e.message}` has no dependencies"
rescue Rdm::Errors::PackageDoesNotExist => e
  @stdout.puts "Package `#{e.message}` is not defined"
end