Sha256: dab20b46f43a6e17a0230f532a40857dc235c7713ce21302170401f992581065

Contents?: true

Size: 742 Bytes

Versions: 1

Compression:

Stored size: 742 Bytes

Contents

# frozen_string_literal: true

require 'atol'
require 'atol/errors'
require 'net/http'

module Atol
  module Request
    class GetDocumentState
      def initialize(uuid:, token:, config: nil)
        @config = config || Atol.config
        raise(Atol::ConfigExpectedError) unless @config.is_a?(Atol::Config)
        raise(Atol::MissingConfigError, 'group_code missing') if @config.group_code.nil?
        @token = token
        @uuid = uuid
      end

      def call
        http_client = @config.http_client
        uri = URI("#{Atol::URL}/#{@config.group_code}/report/#{@uuid}")
        http = http_client.new(uri.host, uri.port)
        http.use_ssl = true
        http.get(uri.request_uri, 'Token' => @token)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
atol-0.5.1 lib/atol/request/get_document_state.rb