Sha256: eb0c7583972c0f51a0b4ffbfbfbce8da5305c92340eee423ce88c7006178ecf2

Contents?: true

Size: 597 Bytes

Versions: 1

Compression:

Stored size: 597 Bytes

Contents

# frozen_string_literal: true

module TableSaw
  class Configuration
    attr_writer :variables
    attr_accessor :dbname, :host, :port, :user, :password, :manifest, :output, :format

    def connection
      { adapter: 'postgresql', database: dbname, host:, port:, username: user, password: }
    end

    def url=(value)
      URI.parse(value).tap do |uri|
        self.dbname = uri.path[1..]
        self.host = uri.host
        self.port = uri.port
        self.user = uri.user
        self.password = uri.password
      end
    end

    def variables
      @variables || {}
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
table_saw-3.2.0 lib/table_saw/configuration.rb