Sha256: 2927542c8fee9b426e599b0eaf67325fa4091de0a87e212ed3b9ebc0c6dcb6da
Contents?: true
Size: 985 Bytes
Versions: 1
Compression:
Stored size: 985 Bytes
Contents
module OpenGeoDb class Database class UnknownActionError < ArgumentError end def initialize(config) @database = config["database"] @username = config["username"] @password = "-p#{config["password"]}" if config["password"] end def execute(action) case action when :create then create when :destroy then destroy else raise UnknownActionError, action end end private def create sh("mysqladmin -u#{@username} #{@password} create #{@database}") %w(opengeodb-begin DE DEhier AT AThier CH CHhier opengeodb-end).each do |basename| file = File.join(File.dirname(__FILE__), %w(.. .. vendor sql), "#{basename}.sql") sh("mysql -u#{@username} #{@password} #{@database} < #{file}") end end def destroy sh("mysqladmin -u#{@username} #{@password} drop -f #{@database}") end def sh(command) puts(command) %x{#{command}} end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
open_geo_db-0.0.4 | lib/open_geo_db/database.rb |