Sha256: 8048b74176d1b035354a4c428bd0b66ce8db307a6a26b19eda32ec765e72517a

Contents?: true

Size: 976 Bytes

Versions: 12

Compression:

Stored size: 976 Bytes

Contents

require "sshkit"

module EveApp
  module SDE
    class DataImporter < SSHKit::Backend::Local
      include Downloader
      include Normalizer

      def initialize
        super
        execute :mkdir, '-p', SDE.config.tmp_path
      end

      private

      def db_config
        ActiveRecord::Base.connection_config
      end

      def sql(sql)
        log "[SQL] #{sql}"
        db.execute(sql)
      end

      def db
        ActiveRecord::Base.connection
      end

      def table_list
        @_table_list ||= begin
          whitelist = Array[SDE.config.table_whitelist].flatten.compact.map(&:to_s)
          tables = SDE.table_list
          tables = whitelist.any? ? tables & whitelist : tables
          Hash[tables.map { |name| [name, normalize_table_name(name)] }]
        end
      end

      def normalize_table_name(name)
        (SDE.config.table_prefix.to_s + name.gsub(/^#{SDE::PREFIXES.join('|')}/, '')).pluralize.underscore
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
eve_app-0.1.11 lib/eve_app/sde/data_importer.rb
eve_app-0.1.10 lib/eve_app/sde/data_importer.rb
eve_app-0.1.9 lib/eve_app/sde/data_importer.rb
eve_app-0.1.8 lib/eve_app/sde/data_importer.rb
eve_app-0.1.7 lib/eve_app/sde/data_importer.rb
eve_app-0.1.6 lib/eve_app/sde/data_importer.rb
eve_app-0.1.5 lib/eve_app/sde/data_importer.rb
eve_app-0.1.4 lib/eve_app/sde/data_importer.rb
eve_app-0.1.3 lib/eve_app/sde/data_importer.rb
eve_app-0.1.2 lib/eve_app/sde/data_importer.rb
eve_app-0.1.1 lib/eve_app/sde/data_importer.rb
eve_app-0.1.0 lib/eve_app/sde/data_importer.rb