Module: Sem

Defined in:
lib/sem.rb,
lib/sem/api.rb,
lib/sem/cli.rb,
lib/sem/views.rb,
lib/sem/version.rb,
lib/sem/pagination.rb,
lib/sem/configuration.rb

Defined Under Namespace

Modules: API, Errors Classes: CLI, Configuration, Pagination, SRN, Views

Constant Summary collapse

LOG_LEVEL_TRACE =
:trace
LOG_LEVEL_ERROR =
:error
VERSION =
"0.3.1".freeze

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.log_levelObject



22
23
24
# File 'lib/sem.rb', line 22

def log_level
  @log_level || LOG_LEVEL_ERROR
end

Class Method Details

.start(args) ⇒ Object

Returns exit status as a number.



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'lib/sem.rb', line 27

def start(args)
  if args.include?("--trace")
    @log_level = LOG_LEVEL_TRACE

    args.delete("--trace")
  end

  Sem::CLI.start(args)

  0
rescue Sem::Errors::ResourceNotFound => e
  puts e.message

  1
rescue Sem::Errors::ResourceException => e
  puts e.message

  1
rescue Sem::Errors::InvalidSRN => e
  on_invalid_srn(e)

  1
rescue Sem::Errors::Auth::NoCredentials
  on_no_credentials

  1
rescue Sem::Errors::Auth::InvalidCredentials
  on_invalid_credentials

  1
rescue StandardError => e
  on_unhandled_error(e)

  1
end