groonga-client 0.0.6 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/doc/text/news.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # NEWS
2
2
 
3
+ ## 0.0.7 - 2014-03-28
4
+
5
+ ### Improvements
6
+
7
+ * Supported error response.
8
+
3
9
  ## 0.0.6 - 2014-03-25
4
10
 
5
11
  ### Fixes
@@ -1,5 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
+ # Copyright (C) 2014 Kouhei Sutou <kou@clear-code.com>
3
4
  # Copyright (C) 2013 Haruka Yoshihara <yoshihara@clear-code.com>
4
5
  #
5
6
  # This library is free software; you can redistribute it and/or
@@ -26,6 +27,7 @@ require "groonga/client/response/column_rename"
26
27
  require "groonga/client/response/defrag"
27
28
  require "groonga/client/response/delete"
28
29
  require "groonga/client/response/dump"
30
+ require "groonga/client/response/error"
29
31
  require "groonga/client/response/load"
30
32
  require "groonga/client/response/log_level"
31
33
  require "groonga/client/response/log_put"
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
3
  # Copyright (C) 2013 Haruka Yoshihara <yoshihara@clear-code.com>
4
- # Copyright (C) 2013 Kouhei Sutou <kou@clear-code.com>
4
+ # Copyright (C) 2013-2014 Kouhei Sutou <kou@clear-code.com>
5
5
  #
6
6
  # This library is free software; you can redistribute it and/or
7
7
  # modify it under the terms of the GNU Lesser General Public
@@ -59,7 +59,11 @@ module Groonga
59
59
  header = nil
60
60
  body = raw_response
61
61
  end
62
- response = new(command, header, body)
62
+ if header.nil? or header[0].zero?
63
+ response = new(command, header, body)
64
+ else
65
+ response = Error.new(command, header, body)
66
+ end
63
67
  response.raw = raw_response
64
68
  response
65
69
  end
@@ -0,0 +1,27 @@
1
+ # Copyright (C) 2014 Kouhei Sutou <kou@clear-code.com>
2
+ #
3
+ # This library is free software; you can redistribute it and/or
4
+ # modify it under the terms of the GNU Lesser General Public
5
+ # License as published by the Free Software Foundation; either
6
+ # version 2.1 of the License, or (at your option) any later version.
7
+ #
8
+ # This library is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
+ # Lesser General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU Lesser General Public
14
+ # License along with this library; if not, write to the Free Software
15
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
+
17
+ require "groonga/client/response/base"
18
+
19
+ module Groonga
20
+ class Client
21
+ module Response
22
+ class Error < Base
23
+ end
24
+ end
25
+ end
26
+ end
27
+
@@ -18,6 +18,6 @@
18
18
 
19
19
  module Groonga
20
20
  class Client
21
- VERSION = "0.0.6"
21
+ VERSION = "0.0.7"
22
22
  end
23
23
  end
@@ -0,0 +1,39 @@
1
+ # Copyright (C) 2014 Kouhei Sutou <kou@clear-code.com>
2
+ #
3
+ # This library is free software; you can redistribute it and/or
4
+ # modify it under the terms of the GNU Lesser General Public
5
+ # License as published by the Free Software Foundation; either
6
+ # version 2.1 of the License, or (at your option) any later version.
7
+ #
8
+ # This library is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
+ # Lesser General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU Lesser General Public
14
+ # License along with this library; if not, write to the Free Software
15
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
+
17
+ require "response/helper"
18
+
19
+ class TestResponseError < Test::Unit::TestCase
20
+ class TestParse < self
21
+ include TestResponseHelper
22
+
23
+ def test_class
24
+ header = [
25
+ -22,
26
+ 1396012478.14975,
27
+ 0.00050806999206543,
28
+ "invalid table name: <Nonexistent>",
29
+ [
30
+ ["grn_select", "proc.c", 897],
31
+ ],
32
+ ]
33
+ raw_response = [header].to_json
34
+
35
+ response = parse_raw_response("select", raw_response)
36
+ assert_equal(Groonga::Client::Response::Error, response.class)
37
+ end
38
+ end
39
+ end
metadata CHANGED
@@ -1,7 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: groonga-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Haruka Yoshihara
@@ -10,139 +11,161 @@ authors:
10
11
  autorequire:
11
12
  bindir: bin
12
13
  cert_chain: []
13
- date: 2014-03-25 00:00:00.000000000 Z
14
+ date: 2014-03-28 00:00:00.000000000 Z
14
15
  dependencies:
15
16
  - !ruby/object:Gem::Dependency
16
17
  name: gqtp
17
18
  requirement: !ruby/object:Gem::Requirement
19
+ none: false
18
20
  requirements:
19
- - - '>='
21
+ - - ! '>='
20
22
  - !ruby/object:Gem::Version
21
23
  version: 1.0.4
22
24
  type: :runtime
23
25
  prerelease: false
24
26
  version_requirements: !ruby/object:Gem::Requirement
27
+ none: false
25
28
  requirements:
26
- - - '>='
29
+ - - ! '>='
27
30
  - !ruby/object:Gem::Version
28
31
  version: 1.0.4
29
32
  - !ruby/object:Gem::Dependency
30
33
  name: groonga-command
31
34
  requirement: !ruby/object:Gem::Requirement
35
+ none: false
32
36
  requirements:
33
- - - '>='
37
+ - - ! '>='
34
38
  - !ruby/object:Gem::Version
35
39
  version: 1.0.4
36
40
  type: :runtime
37
41
  prerelease: false
38
42
  version_requirements: !ruby/object:Gem::Requirement
43
+ none: false
39
44
  requirements:
40
- - - '>='
45
+ - - ! '>='
41
46
  - !ruby/object:Gem::Version
42
47
  version: 1.0.4
43
48
  - !ruby/object:Gem::Dependency
44
49
  name: bundler
45
50
  requirement: !ruby/object:Gem::Requirement
51
+ none: false
46
52
  requirements:
47
- - - '>='
53
+ - - ! '>='
48
54
  - !ruby/object:Gem::Version
49
55
  version: '0'
50
56
  type: :development
51
57
  prerelease: false
52
58
  version_requirements: !ruby/object:Gem::Requirement
59
+ none: false
53
60
  requirements:
54
- - - '>='
61
+ - - ! '>='
55
62
  - !ruby/object:Gem::Version
56
63
  version: '0'
57
64
  - !ruby/object:Gem::Dependency
58
65
  name: rake
59
66
  requirement: !ruby/object:Gem::Requirement
67
+ none: false
60
68
  requirements:
61
- - - '>='
69
+ - - ! '>='
62
70
  - !ruby/object:Gem::Version
63
71
  version: '0'
64
72
  type: :development
65
73
  prerelease: false
66
74
  version_requirements: !ruby/object:Gem::Requirement
75
+ none: false
67
76
  requirements:
68
- - - '>='
77
+ - - ! '>='
69
78
  - !ruby/object:Gem::Version
70
79
  version: '0'
71
80
  - !ruby/object:Gem::Dependency
72
81
  name: test-unit
73
82
  requirement: !ruby/object:Gem::Requirement
83
+ none: false
74
84
  requirements:
75
- - - '>='
85
+ - - ! '>='
76
86
  - !ruby/object:Gem::Version
77
87
  version: '0'
78
88
  type: :development
79
89
  prerelease: false
80
90
  version_requirements: !ruby/object:Gem::Requirement
91
+ none: false
81
92
  requirements:
82
- - - '>='
93
+ - - ! '>='
83
94
  - !ruby/object:Gem::Version
84
95
  version: '0'
85
96
  - !ruby/object:Gem::Dependency
86
97
  name: test-unit-notify
87
98
  requirement: !ruby/object:Gem::Requirement
99
+ none: false
88
100
  requirements:
89
- - - '>='
101
+ - - ! '>='
90
102
  - !ruby/object:Gem::Version
91
103
  version: '0'
92
104
  type: :development
93
105
  prerelease: false
94
106
  version_requirements: !ruby/object:Gem::Requirement
107
+ none: false
95
108
  requirements:
96
- - - '>='
109
+ - - ! '>='
97
110
  - !ruby/object:Gem::Version
98
111
  version: '0'
99
112
  - !ruby/object:Gem::Dependency
100
113
  name: test-unit-rr
101
114
  requirement: !ruby/object:Gem::Requirement
115
+ none: false
102
116
  requirements:
103
- - - '>='
117
+ - - ! '>='
104
118
  - !ruby/object:Gem::Version
105
119
  version: '0'
106
120
  type: :development
107
121
  prerelease: false
108
122
  version_requirements: !ruby/object:Gem::Requirement
123
+ none: false
109
124
  requirements:
110
- - - '>='
125
+ - - ! '>='
111
126
  - !ruby/object:Gem::Version
112
127
  version: '0'
113
128
  - !ruby/object:Gem::Dependency
114
129
  name: packnga
115
130
  requirement: !ruby/object:Gem::Requirement
131
+ none: false
116
132
  requirements:
117
- - - '>='
133
+ - - ! '>='
118
134
  - !ruby/object:Gem::Version
119
135
  version: '0'
120
136
  type: :development
121
137
  prerelease: false
122
138
  version_requirements: !ruby/object:Gem::Requirement
139
+ none: false
123
140
  requirements:
124
- - - '>='
141
+ - - ! '>='
125
142
  - !ruby/object:Gem::Version
126
143
  version: '0'
127
144
  - !ruby/object:Gem::Dependency
128
145
  name: redcarpet
129
146
  requirement: !ruby/object:Gem::Requirement
147
+ none: false
130
148
  requirements:
131
- - - '>='
149
+ - - ! '>='
132
150
  - !ruby/object:Gem::Version
133
151
  version: '0'
134
152
  type: :development
135
153
  prerelease: false
136
154
  version_requirements: !ruby/object:Gem::Requirement
155
+ none: false
137
156
  requirements:
138
- - - '>='
157
+ - - ! '>='
139
158
  - !ruby/object:Gem::Version
140
159
  version: '0'
141
- description: |
142
- Groonga-client gem supports HTTP or
160
+ description: ! 'Groonga-client gem supports HTTP or
161
+
143
162
  [GQTP (Groonga Query Transfer Protocol)](http://groonga.org/docs/spec/gqtp.html)
163
+
144
164
  as the protocol using a client. You can use it without groonga
165
+
145
166
  package.
167
+
168
+ '
146
169
  email:
147
170
  - yshr04hrk@gmail.com
148
171
  - kou@clear-code.com
@@ -156,87 +179,90 @@ files:
156
179
  - Gemfile
157
180
  - groonga-client.gemspec
158
181
  - .yardopts
159
- - lib/groonga/client/response.rb
182
+ - lib/groonga/client.rb
183
+ - lib/groonga/client/empty-request.rb
184
+ - lib/groonga/client/protocol/http/thread.rb
185
+ - lib/groonga/client/protocol/http/coolio.rb
186
+ - lib/groonga/client/protocol/gqtp.rb
187
+ - lib/groonga/client/protocol/error.rb
188
+ - lib/groonga/client/protocol/http.rb
189
+ - lib/groonga/client/command.rb
160
190
  - lib/groonga/client/error.rb
161
- - lib/groonga/client/response/clearlock.rb
162
- - lib/groonga/client/response/column_remove.rb
191
+ - lib/groonga/client/response.rb
192
+ - lib/groonga/client/response/log_reopen.rb
163
193
  - lib/groonga/client/response/quit.rb
164
- - lib/groonga/client/response/log_put.rb
165
- - lib/groonga/client/response/load.rb
166
- - lib/groonga/client/response/delete.rb
167
- - lib/groonga/client/response/base.rb
168
- - lib/groonga/client/response/status.rb
169
- - lib/groonga/client/response/table_create.rb
170
- - lib/groonga/client/response/register.rb
171
- - lib/groonga/client/response/column_create.rb
172
- - lib/groonga/client/response/check.rb
173
- - lib/groonga/client/response/cache_limit.rb
174
194
  - lib/groonga/client/response/column_rename.rb
195
+ - lib/groonga/client/response/cache_limit.rb
175
196
  - lib/groonga/client/response/defrag.rb
176
- - lib/groonga/client/response/table_list.rb
177
- - lib/groonga/client/response/log_level.rb
178
- - lib/groonga/client/response/log_reopen.rb
197
+ - lib/groonga/client/response/base.rb
198
+ - lib/groonga/client/response/clearlock.rb
199
+ - lib/groonga/client/response/register.rb
179
200
  - lib/groonga/client/response/dump.rb
201
+ - lib/groonga/client/response/table_create.rb
202
+ - lib/groonga/client/response/delete.rb
203
+ - lib/groonga/client/response/load.rb
204
+ - lib/groonga/client/response/log_level.rb
180
205
  - lib/groonga/client/response/select.rb
206
+ - lib/groonga/client/response/error.rb
207
+ - lib/groonga/client/response/column_remove.rb
208
+ - lib/groonga/client/response/log_put.rb
209
+ - lib/groonga/client/response/table_list.rb
181
210
  - lib/groonga/client/response/column_list.rb
211
+ - lib/groonga/client/response/check.rb
212
+ - lib/groonga/client/response/column_create.rb
213
+ - lib/groonga/client/response/status.rb
182
214
  - lib/groonga/client/version.rb
183
- - lib/groonga/client/command.rb
184
- - lib/groonga/client/protocol/error.rb
185
- - lib/groonga/client/protocol/http/coolio.rb
186
- - lib/groonga/client/protocol/http/thread.rb
187
- - lib/groonga/client/protocol/gqtp.rb
188
- - lib/groonga/client/protocol/http.rb
189
- - lib/groonga/client/empty-request.rb
190
- - lib/groonga/client.rb
191
215
  - doc/text/news.md
216
+ - test/results/test-table-list.rb
217
+ - test/results/test-column-list.rb
218
+ - test/test-command.rb
192
219
  - test/run-test.rb
193
220
  - test/test-client.rb
194
- - test/response/helper.rb
221
+ - test/protocol/test-gqtp.rb
222
+ - test/protocol/test-http.rb
223
+ - test/response/test-table-list.rb
224
+ - test/response/test-error.rb
195
225
  - test/response/test-status.rb
196
226
  - test/response/test-select.rb
197
- - test/response/test-table-list.rb
227
+ - test/response/helper.rb
198
228
  - test/response/test-column-list.rb
199
- - test/test-command.rb
200
- - test/results/test-table-list.rb
201
- - test/results/test-column-list.rb
202
- - test/protocol/test-gqtp.rb
203
- - test/protocol/test-http.rb
204
229
  homepage: https://github.com/ranguba/groonga-client
205
230
  licenses:
206
231
  - LGPLv2.1 or later
207
- metadata: {}
208
232
  post_install_message:
209
233
  rdoc_options: []
210
234
  require_paths:
211
235
  - lib
212
236
  required_ruby_version: !ruby/object:Gem::Requirement
237
+ none: false
213
238
  requirements:
214
- - - '>='
239
+ - - ! '>='
215
240
  - !ruby/object:Gem::Version
216
241
  version: '0'
217
242
  required_rubygems_version: !ruby/object:Gem::Requirement
243
+ none: false
218
244
  requirements:
219
- - - '>='
245
+ - - ! '>='
220
246
  - !ruby/object:Gem::Version
221
247
  version: '0'
222
248
  requirements: []
223
249
  rubyforge_project:
224
- rubygems_version: 2.0.14
250
+ rubygems_version: 1.8.23
225
251
  signing_key:
226
- specification_version: 4
252
+ specification_version: 3
227
253
  summary: Groonga-client is a client for groonga (http://groonga.org/) implemented
228
254
  with pure ruby.
229
255
  test_files:
256
+ - test/results/test-table-list.rb
257
+ - test/results/test-column-list.rb
258
+ - test/test-command.rb
230
259
  - test/run-test.rb
231
260
  - test/test-client.rb
232
- - test/response/helper.rb
261
+ - test/protocol/test-gqtp.rb
262
+ - test/protocol/test-http.rb
263
+ - test/response/test-table-list.rb
264
+ - test/response/test-error.rb
233
265
  - test/response/test-status.rb
234
266
  - test/response/test-select.rb
235
- - test/response/test-table-list.rb
267
+ - test/response/helper.rb
236
268
  - test/response/test-column-list.rb
237
- - test/test-command.rb
238
- - test/results/test-table-list.rb
239
- - test/results/test-column-list.rb
240
- - test/protocol/test-gqtp.rb
241
- - test/protocol/test-http.rb
242
- has_rdoc:
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 3c50b276ffa5a1f9020c6414018c089ac76943b9
4
- data.tar.gz: 0e9f0189f9f19e1b94e27f1e1fce4363783c7753
5
- SHA512:
6
- metadata.gz: 38b205d2086d409e3c604f7db19d8327f8cfa585481996f7c4cabbe4f52f5b53dfe6a4502032d2eb1180e117e7b93d6de40bbf81806b85efbd8d95a409ce1c93
7
- data.tar.gz: ddd34bc40409ea4fe7d2ef3684f760c6ac5b01e23b51990bfc1d88fbb4671a2cb9c3626e7017694bbcaf382e07a586bb9bdd0a96fc786660c7feed2815e6d82e