Class: PolyglotFlutter::ErrorHandler

Inherits:
Object
  • Object
show all
Extended by:
Helper::Terminal
Defined in:
lib/flutter_polyglot_cli/error_handler.rb

Class Method Summary collapse

Methods included from Helper::Terminal

prompt, success

Class Method Details

.handle(e) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/flutter_polyglot_cli/error_handler.rb', line 12

def handle(e)
  prompt.error(
    case e
    when JsonApiClient::Errors::NotAuthorized
      "You are not authorized. Please call `polyflut login` and provide correct credentials."
    when JsonApiClient::Errors::AccessDenied
      "You don't have the permission to access requested project."
    when Errno::ENOENT
      "We could not find a file that we need:\n\n#{e.message}"
    else
      "An error happened. This might help:\n\n#{e.message}"
    end
  )
end

.rescuableObject



6
7
8
9
10
# File 'lib/flutter_polyglot_cli/error_handler.rb', line 6

def rescuable
  yield
rescue StandardError => e
  handle(e)
end