hbase-stargate 1.5.2 → 1.5.3

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.5.2
1
+ 1.5.3
@@ -18,9 +18,17 @@ module Stargate
18
18
  options[:version] ||= 1
19
19
 
20
20
  request = Request::RowRequest.new(table_name, name, timestamp)
21
- row = Response::RowResponse.new(get(request.show(columns, options)), :show_row).parse.first
22
- row.table_name = table_name
23
- row
21
+ rows = Response::RowResponse.new(get(request.show(columns, options)), :show_row).parse
22
+ if rows.size == 1
23
+ row = rows.first
24
+ row.table_name = table_name
25
+ row
26
+ else
27
+ rows.each do |row|
28
+ row.table_name = table_name
29
+ end
30
+ rows
31
+ end
24
32
  rescue Net::ProtocolError => e
25
33
  # TODO: Use better handling instead of this.
26
34
  if e.to_s.include?("Table")
@@ -44,6 +44,22 @@ describe Stargate::Operation::RowOperation do
44
44
  end
45
45
  end
46
46
 
47
+ it "should support globbing of the row key by showing rows 'row', 'row1' and 'row2' but not 'pow1'" do
48
+ lambda {
49
+ @client.create_row("test-hbase-stargate", "pow1", nil, { :name => "col1:", :value => "pow1-col1" }).should be_true
50
+ @client.create_row("test-hbase-stargate", "row", nil, { :name => "col1:", :value => "row-col1" }).should be_true
51
+ }.should_not raise_error
52
+ rows = @client.show_row("test-hbase-stargate", "row*")
53
+ rows.size.should == 3
54
+ rows.each do |row|
55
+ row.should.is_a? Stargate::Model::Row
56
+ row.table_name.should == "test-hbase-stargate"
57
+ row.columns.each do |col|
58
+ col.should.is_a? Stargate::Model::Column
59
+ end
60
+ end
61
+ end
62
+
47
63
  it "should delete rows when timestamps are defined" do
48
64
  row1 = @client.show_row("test-hbase-stargate", "row1")
49
65
  timestamp = row1.columns.map(&:timestamp).uniq.first
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hbase-stargate
3
3
  version: !ruby/object:Gem::Version
4
- hash: 7
5
- prerelease: false
4
+ hash: 5
5
+ prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 5
9
- - 2
10
- version: 1.5.2
9
+ - 3
10
+ version: 1.5.3
11
11
  platform: ruby
12
12
  authors:
13
13
  - Openplaces
@@ -15,12 +15,12 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-12-26 00:00:00 -05:00
18
+ date: 2011-02-26 00:00:00 -05:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: rspec
23
22
  prerelease: false
23
+ type: :runtime
24
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
@@ -30,8 +30,92 @@ dependencies:
30
30
  segments:
31
31
  - 0
32
32
  version: "0"
33
- type: :development
33
+ name: hbase-stargate
34
34
  version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ prerelease: false
37
+ type: :development
38
+ requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ hash: 3
44
+ segments:
45
+ - 0
46
+ version: "0"
47
+ name: rspec
48
+ version_requirements: *id002
49
+ - !ruby/object:Gem::Dependency
50
+ prerelease: false
51
+ type: :development
52
+ requirement: &id003 !ruby/object:Gem::Requirement
53
+ none: false
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ hash: 3
58
+ segments:
59
+ - 0
60
+ version: "0"
61
+ name: json
62
+ version_requirements: *id003
63
+ - !ruby/object:Gem::Dependency
64
+ prerelease: false
65
+ type: :development
66
+ requirement: &id004 !ruby/object:Gem::Requirement
67
+ none: false
68
+ requirements:
69
+ - - ">="
70
+ - !ruby/object:Gem::Version
71
+ hash: 3
72
+ segments:
73
+ - 0
74
+ version: "0"
75
+ name: jeweler
76
+ version_requirements: *id004
77
+ - !ruby/object:Gem::Dependency
78
+ prerelease: false
79
+ type: :development
80
+ requirement: &id005 !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ hash: 3
86
+ segments:
87
+ - 0
88
+ version: "0"
89
+ name: rspec
90
+ version_requirements: *id005
91
+ - !ruby/object:Gem::Dependency
92
+ prerelease: false
93
+ type: :development
94
+ requirement: &id006 !ruby/object:Gem::Requirement
95
+ none: false
96
+ requirements:
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ hash: 3
100
+ segments:
101
+ - 0
102
+ version: "0"
103
+ name: rspec
104
+ version_requirements: *id006
105
+ - !ruby/object:Gem::Dependency
106
+ prerelease: false
107
+ type: :development
108
+ requirement: &id007 !ruby/object:Gem::Requirement
109
+ none: false
110
+ requirements:
111
+ - - ">="
112
+ - !ruby/object:Gem::Version
113
+ hash: 3
114
+ segments:
115
+ - 0
116
+ version: "0"
117
+ name: rspec
118
+ version_requirements: *id007
35
119
  description: A Ruby client used to interact with HBase through its Stargate web service front-end
36
120
  email: greg.lu@gmail.com
37
121
  executables: []
@@ -98,8 +182,8 @@ homepage: http://github.com/greglu/hbase-stargate
98
182
  licenses: []
99
183
 
100
184
  post_install_message:
101
- rdoc_options:
102
- - --charset=UTF-8
185
+ rdoc_options: []
186
+
103
187
  require_paths:
104
188
  - lib
105
189
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -123,7 +207,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
123
207
  requirements: []
124
208
 
125
209
  rubyforge_project:
126
- rubygems_version: 1.3.7
210
+ rubygems_version: 1.5.2
127
211
  signing_key:
128
212
  specification_version: 3
129
213
  summary: Ruby client for HBase's Stargate web service