lib/rbhive/connection.rb in rbhive-0.1.4 vs lib/rbhive/connection.rb in rbhive-0.1.5

- old
+ new

@@ -22,10 +22,11 @@ end end class Connection attr_reader :client + def initialize(server, port=10_000, logger=StdOutLogger.new) @socket = Thrift::Socket.new(server, port) @transport = Thrift::BufferedTransport.new(@socket) @protocol = Thrift::BinaryProtocol.new(@transport) @client = ThriftHive::Client.new(@protocol) @@ -55,9 +56,22 @@ end def first(query) execute(query) ResultSet.new([client.fetchOne]) + end + + def create_table(schema) + execute(schema.create_table_statement) + end + + def drop_table(name) + name = name.name if name.is_a?(TableSchema) + execute("DROP TABLE `#{name}`") + end + + def replace_columns(schema) + execute(schema.replace_columns_statement) end def method_missing(meth, *args) client.send(meth, *args) end