Sha256: 40d9af6b06784a890c418fb1b45f656cc81e6e64ee9665333783248bfffeadcf

Contents?: true

Size: 518 Bytes

Versions: 6

Compression:

Stored size: 518 Bytes

Contents

module Bolt
  class Error < RuntimeError
    attr_reader :kind, :details, :issue_code

    def initialize(msg, kind, details = nil, issue_code = nil)
      super(msg)
      @kind = kind
      @issue_code = issue_code
      @details = details || {}
    end

    def msg
      message
    end

    def to_h
      h = { 'kind' =>  kind,
            'msg' => message,
            'details' => details }
      h['issue_code'] = issue_code if issue_code
      h
    end

    def to_json
      to_h.to_json
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
bolt-0.14.0 lib/bolt/error.rb
bolt-0.13.0 lib/bolt/error.rb
bolt-0.12.0 lib/bolt/error.rb
bolt-0.11.0 lib/bolt/error.rb
bolt-0.10.0 lib/bolt/error.rb
bolt-0.9.0 lib/bolt/error.rb