jsonrpc2.0 0.1.7 → 0.1.8
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/jsonrpc2.0.gemspec +1 -1
- data/lib/jsonrpc2.0/Errors.rb +9 -5
- data/lib/jsonrpc2.0/Server.rb +4 -8
- metadata +2 -2
data/jsonrpc2.0.gemspec
CHANGED
data/lib/jsonrpc2.0/Errors.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'json'
|
2
2
|
|
3
3
|
module JsonRpcErrors
|
4
|
-
ERRORS = {'ParseError' => -32700, 'InvalidRequest' => -32600, 'MethodNotFound' => -32601, 'InvalidParams' => -32602, 'InternalError' => -32603
|
4
|
+
ERRORS = {'ParseError' => -32700, 'InvalidRequest' => -32600, 'MethodNotFound' => -32601, 'InvalidParams' => -32602, 'InternalError' => -32603}
|
5
5
|
|
6
6
|
class Error < StandardError
|
7
7
|
CODE = nil
|
@@ -31,10 +31,14 @@ module JsonRpcErrors
|
|
31
31
|
c.new(inHash['message'], inHash['data'])
|
32
32
|
end
|
33
33
|
|
34
|
-
|
35
|
-
|
36
|
-
|
34
|
+
def self.addErrors(errors)
|
35
|
+
errors.each do |className, errorCode|
|
36
|
+
c = Class::new(Error) do
|
37
|
+
const_set('CODE', errorCode)
|
38
|
+
end
|
39
|
+
const_set(className, c)
|
37
40
|
end
|
38
|
-
const_set(className, c)
|
39
41
|
end
|
42
|
+
|
43
|
+
addErrors(ERRORS)
|
40
44
|
end
|
data/lib/jsonrpc2.0/Server.rb
CHANGED
@@ -6,7 +6,7 @@ class JsonRpcServer
|
|
6
6
|
include JsonRpcConstants
|
7
7
|
include JsonRpcErrors
|
8
8
|
|
9
|
-
def handle_message(inMessage
|
9
|
+
def handle_message(inMessage)
|
10
10
|
begin
|
11
11
|
begin
|
12
12
|
message = JSON.parse inMessage
|
@@ -14,7 +14,7 @@ class JsonRpcServer
|
|
14
14
|
raise(ParseError, e.message)
|
15
15
|
end
|
16
16
|
|
17
|
-
response = handle_request(message
|
17
|
+
response = handle_request(message).to_json
|
18
18
|
rescue Error => e
|
19
19
|
id = nil
|
20
20
|
id = message['id'] if (message.class == Hash)
|
@@ -29,17 +29,13 @@ class JsonRpcServer
|
|
29
29
|
|
30
30
|
private
|
31
31
|
|
32
|
-
def handle_request(inRequest
|
32
|
+
def handle_request(inRequest)
|
33
33
|
raise InvalidRequest if (inRequest.class != Hash)
|
34
34
|
raise InvalidRequest if (inRequest['jsonrpc'] != VERSION)
|
35
35
|
raise InvalidRequest if (!inRequest.key?('method'))
|
36
36
|
|
37
37
|
begin
|
38
|
-
|
39
|
-
|
40
|
-
unless restrictMethod == nil or restrictMethod == methodName
|
41
|
-
raise(MethodNotAllowed, "Method not allowed!")
|
42
|
-
end
|
38
|
+
methodName = 'r_' + inRequest['method']
|
43
39
|
|
44
40
|
method = method(methodName)
|
45
41
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jsonrpc2.0
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-06-
|
12
|
+
date: 2011-06-28 00:00:00.000000000Z
|
13
13
|
dependencies: []
|
14
14
|
description:
|
15
15
|
email: dev@coldsun.org
|