Sha256: 4dd3f4acc7f7e6865dde5367cf646793be9c907435c4d24894c8240ea897664a

Contents?: true

Size: 1.17 KB

Versions: 8

Compression:

Stored size: 1.17 KB

Contents

# frozen_string_literal: true

require 'webrick'

require_relative 'github/cache'
require_relative 'sqlui_config'
require_relative 'server'
require_relative 'version'

# Main entry point.
class Sqlui
  MAX_ROWS = 100_000
  MAX_BYTES = 10 * 1_024 * 1_024 # 10 MB

  def self.logger
    @logger ||= WEBrick::Log.new
  end

  def initialize(config_file)
    raise 'you must specify a configuration file' unless config_file
    raise 'configuration file does not exist' unless File.exist?(config_file)

    @config = SqluiConfig.new(config_file)
    @resources_dir = File.join(File.expand_path('..', File.dirname(__FILE__)), 'client', 'resources')

    # Connect to each database to verify each can be connected to.
    @config.database_configs.each { |database| database.with_client { |client| client } }
  end

  def run
    Server.init_and_run(@config, @resources_dir)
  end

  def self.from_command_line(args)
    if args.include?('-v') || args.include?('--version')
      puts Version::SQLUI
      exit
    end

    raise 'you must specify a configuration file' unless args.size == 1
    raise 'configuration file does not exist' unless File.exist?(args[0])

    Sqlui.new(args[0])
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
sqlui-0.1.84 app/sqlui.rb
sqlui-0.1.83 app/sqlui.rb
sqlui-0.1.82 app/sqlui.rb
sqlui-0.1.81 app/sqlui.rb
sqlui-0.1.80 app/sqlui.rb
sqlui-0.1.79 app/sqlui.rb
sqlui-0.1.78 app/sqlui.rb
sqlui-0.1.77 app/sqlui.rb