Module: HBase::Operation::RowOperation
- Included in:
- Client
- Defined in:
- lib/hbase/operation/row_operation.rb
Instance Method Summary collapse
- #create_row(table_name, name, timestamp = nil, *args) ⇒ Object
- #delete_row(table_name, name, timestamp = nil, columns = nil) ⇒ Object
- #row_timestamps(table_name, name) ⇒ Object
- #show_row(table_name, name, timestamp = nil, columns = nil, version = nil) ⇒ Object
Instance Method Details
#create_row(table_name, name, timestamp = nil, *args) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/hbase/operation/row_operation.rb', line 17 def create_row(table_name, name, = nil, *args) request = Request::RowRequest.new(table_name, name, ) data = [] if args.instance_of? Array data = args elsif args.instance_of? Hash data = [args] else raise StandardError, "Only Array or Hash data accepted" end xml_data ="<?xml version='1.0' encoding='UTF-8'?><columns>" data.each do |d| xml_data << "<column><name>#{d[:name]}</name>" xml_data << "<value>#{[d[:value]].pack("m") rescue ''}</value></column>" end xml_data << "</columns>" Response::RowResponse.new(post(request.create, xml_data)) end |
#delete_row(table_name, name, timestamp = nil, columns = nil) ⇒ Object
37 38 39 40 |
# File 'lib/hbase/operation/row_operation.rb', line 37 def delete_row(table_name, name, = nil, columns = nil) request = Request::RowRequest.new(table_name, name, ) Response::RowResponse.new(delete(request.delete(columns))) end |
#row_timestamps(table_name, name) ⇒ Object
4 5 6 |
# File 'lib/hbase/operation/row_operation.rb', line 4 def (table_name, name) raise NotImplementedError, "Currently not supported in native hbase client" end |
#show_row(table_name, name, timestamp = nil, columns = nil, version = nil) ⇒ Object
8 9 10 11 12 13 14 15 |
# File 'lib/hbase/operation/row_operation.rb', line 8 def show_row(table_name, name, = nil, columns = nil, version = nil) request = Request::RowRequest.new(table_name, name, ) row = Response::RowResponse.new(get(request.show(columns, version))).parse row.table_name = table_name row.name = name row. = row end |