routengn 0.2.10 → 0.3.1
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/lib/routengn.rb +21 -8
- data/routengn.gemspec +5 -2
- metadata +12 -2
data/lib/routengn.rb
CHANGED
@@ -67,15 +67,10 @@ module RouteNGN
|
|
67
67
|
uri, params = args
|
68
68
|
params ||= {}
|
69
69
|
#TODO remove the trailing '&' from url
|
70
|
-
|
71
|
-
|
72
|
-
_ << v.collect { |nested_k, nested_v| "#{k}[#{nested_k}]=#{nested_v}&" }.join
|
73
|
-
else
|
74
|
-
_ << "#{k}=#{v}&"
|
75
|
-
end
|
76
|
-
end
|
70
|
+
url_pieces = ["#{uri}?"]
|
71
|
+
params.each {|k,v| url_pieces += nested_hash_url_builder(k, v, 0)}
|
77
72
|
check_connection!
|
78
|
-
raw = @connection.access_token.send http_method,
|
73
|
+
raw = @connection.access_token.send http_method, url_pieces.join
|
79
74
|
Response.new raw
|
80
75
|
end
|
81
76
|
end
|
@@ -110,6 +105,24 @@ module RouteNGN
|
|
110
105
|
raise ConnectionException.new unless @connection
|
111
106
|
raise OAuthException.new unless @connection.access_token
|
112
107
|
end
|
108
|
+
|
109
|
+
def nested_hash_url_builder(k, v, depth = 0)
|
110
|
+
if depth == 0 and !v.is_a? Hash
|
111
|
+
["#{k}=#{v}&"]
|
112
|
+
elsif depth != 0 and !v.is_a? Hash
|
113
|
+
["=#{v}&"]
|
114
|
+
elsif depth == 0
|
115
|
+
v.collect do |nk, nv|
|
116
|
+
"#{k}[#{nk}]#{nested_hash_url_builder(nk,nv,depth+1)}"
|
117
|
+
end
|
118
|
+
else
|
119
|
+
v.collect do |nk, nv|
|
120
|
+
"[#{nk}]#{nested_hash_url_builder(nk,nv,depth+1)}"
|
121
|
+
end
|
122
|
+
end
|
123
|
+
end
|
124
|
+
|
125
|
+
|
113
126
|
end
|
114
127
|
|
115
128
|
# TODO: validation errors are now stored in failure message's data... we should figure out what to do with it
|
data/routengn.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{routengn}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.3.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Keith Larrimore", "Quin Hoxie"]
|
12
|
-
s.date = %q{
|
12
|
+
s.date = %q{2010-02-02}
|
13
13
|
s.default_executable = %q{ngncmd}
|
14
14
|
s.description = %q{RouteNGN is an Advanced SIP Redirect Routing Platform.}
|
15
15
|
s.email = %q{keithlarrimore+github@gmail.com}
|
@@ -59,16 +59,19 @@ Gem::Specification.new do |s|
|
|
59
59
|
s.add_runtime_dependency(%q<mime-types>, [">= 0"])
|
60
60
|
s.add_runtime_dependency(%q<json>, [">= 0"])
|
61
61
|
s.add_runtime_dependency(%q<oauth>, [">= 0"])
|
62
|
+
s.add_runtime_dependency(%q<thor>, [">= 0"])
|
62
63
|
else
|
63
64
|
s.add_dependency(%q<activesupport>, [">= 0"])
|
64
65
|
s.add_dependency(%q<mime-types>, [">= 0"])
|
65
66
|
s.add_dependency(%q<json>, [">= 0"])
|
66
67
|
s.add_dependency(%q<oauth>, [">= 0"])
|
68
|
+
s.add_dependency(%q<thor>, [">= 0"])
|
67
69
|
end
|
68
70
|
else
|
69
71
|
s.add_dependency(%q<activesupport>, [">= 0"])
|
70
72
|
s.add_dependency(%q<mime-types>, [">= 0"])
|
71
73
|
s.add_dependency(%q<json>, [">= 0"])
|
72
74
|
s.add_dependency(%q<oauth>, [">= 0"])
|
75
|
+
s.add_dependency(%q<thor>, [">= 0"])
|
73
76
|
end
|
74
77
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: routengn
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Keith Larrimore
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date:
|
13
|
+
date: 2010-02-02 00:00:00 -05:00
|
14
14
|
default_executable: ngncmd
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
@@ -53,6 +53,16 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: "0"
|
55
55
|
version:
|
56
|
+
- !ruby/object:Gem::Dependency
|
57
|
+
name: thor
|
58
|
+
type: :runtime
|
59
|
+
version_requirement:
|
60
|
+
version_requirements: !ruby/object:Gem::Requirement
|
61
|
+
requirements:
|
62
|
+
- - ">="
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: "0"
|
65
|
+
version:
|
56
66
|
description: RouteNGN is an Advanced SIP Redirect Routing Platform.
|
57
67
|
email: keithlarrimore+github@gmail.com
|
58
68
|
executables:
|