Sha256: 839682f1017a8f89989ad46af3ff4153b7a19c490e68104ba47c7320289fc86c
Contents?: true
Size: 1 KB
Versions: 1
Compression:
Stored size: 1 KB
Contents
module CassandraObject class Schema module Tasks def dump(io) table_names.each do |column_family| io.puts run_command("DESCRIBE COLUMNFAMILY #{column_family}") io.puts end end def load(io) current_cql = '' io.each_line do |line| next if line.blank? current_cql << line.rstrip if current_cql =~ /;$/ keyspace_execute current_cql current_cql = '' end end end def table_names run_command('DESCRIBE COLUMNFAMILIES').split.sort end private def run_command(command) `echo "#{command};" | #{cqlsh} -2 -k #{keyspace} #{server}`.sub(/^(.*)$/, '').strip end def cqlsh ENV['CQLSH'] || 'cqlsh' end def keyspace CassandraObject::Base.config[:keyspace] end def server CassandraObject::Base.adapter.servers.first.gsub(/:.*/, '') end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
gotime-cassandra_object-4.12.2 | lib/cassandra_object/schema/tasks.rb |