Sha256: 53fd17957ee4d0ae36dae8e9dd34fdfcfb68fca12add47f8d97f6c44f70f2f7e

Contents?: true

Size: 1.17 KB

Versions: 5

Compression:

Stored size: 1.17 KB

Contents

# frozen_string_literal: true

module Workato
  module Connector
    module Sdk
      InvalidDefinitionError = Class.new(StandardError)

      InvalidSchemaError = Class.new(StandardError)

      CustomRequestError = Class.new(StandardError)

      RuntimeError = Class.new(StandardError)

      class RequestError < StandardError
        attr_reader :method,
                    :code,
                    :response

        def initialize(message:, method:, code:, response:)
          super(message)
          @method = method
          @code = code
          @response = response
        end
      end

      class NotImplementedError < StandardError
        def initialize(msg = 'This part of Connector SDK is not implemented in workato-connector-sdk yet')
          super
        end
      end

      class MissingRequiredInput < StandardError
        def initialize(label, toggle_label)
          message = if toggle_label && label != toggle_label
                      "Either '#{label}' or '#{toggle_label}' must be present"
                    else
                      "'#{label}' must be present"
                    end
          super(message)
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
workato-connector-sdk-1.0.1 lib/workato/connector/sdk/errors.rb
workato-connector-sdk-1.0.0 lib/workato/connector/sdk/errors.rb
workato-connector-sdk-0.5.0 lib/workato/connector/sdk/errors.rb
workato-connector-sdk-0.4.1 lib/workato/connector/sdk/errors.rb
workato-connector-sdk-0.4.0 lib/workato/connector/sdk/errors.rb