rest-terminal 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/lib/rest.rb +2 -1
- data/lib/rest/terminal.rb +4 -1
- data/lib/rest/terminal/persistent.rb +1 -0
- data/lib/rest/version.rb +1 -1
- data/lib/service_base.rb +25 -10
- metadata +2 -2
data/lib/rest.rb
CHANGED
data/lib/rest/terminal.rb
CHANGED
@@ -16,6 +16,7 @@ module Rest
|
|
16
16
|
@repl = ''
|
17
17
|
@type = 'earth'
|
18
18
|
@serv = 'localhost'
|
19
|
+
@service = ''
|
19
20
|
@services = { }
|
20
21
|
@response = { }
|
21
22
|
@spaces = [ ]
|
@@ -126,7 +127,9 @@ module Rest
|
|
126
127
|
pth = full_path(prm)
|
127
128
|
puts "Service: #{pth}".yellow
|
128
129
|
# puts @services.keys.inspect
|
129
|
-
|
130
|
+
svc = @services[pth]
|
131
|
+
svc.load_service
|
132
|
+
@_status = svc.send(cmd,prm)
|
130
133
|
end
|
131
134
|
end
|
132
135
|
|
data/lib/rest/version.rb
CHANGED
data/lib/service_base.rb
CHANGED
@@ -8,6 +8,11 @@ class ServiceBase
|
|
8
8
|
@response = {}
|
9
9
|
@parent = vc
|
10
10
|
reset(%w(headers body vars))
|
11
|
+
load_service
|
12
|
+
end
|
13
|
+
|
14
|
+
def load_service
|
15
|
+
# p "services#{path}service.rb"
|
11
16
|
if File.exists?("services#{path}service.rb")
|
12
17
|
instance_eval(IO.read("services#{path}service.rb"))
|
13
18
|
end
|
@@ -20,7 +25,6 @@ class ServiceBase
|
|
20
25
|
line = ('-'*65)
|
21
26
|
|
22
27
|
puts ('='*65).yellow
|
23
|
-
# puts "[#{varx[:conn]}] #{varx[:url]}".intense_blue
|
24
28
|
puts line.blue
|
25
29
|
puts "headers".intense_green
|
26
30
|
puts headerx.pj
|
@@ -59,7 +63,6 @@ class ServiceBase
|
|
59
63
|
end
|
60
64
|
|
61
65
|
def _send(prm)
|
62
|
-
#p Rest::Terminal.instance_variable_get("@response")
|
63
66
|
headerx = headers
|
64
67
|
bodyx = bodies
|
65
68
|
varx = vars
|
@@ -76,7 +79,8 @@ class ServiceBase
|
|
76
79
|
req.body = body_join
|
77
80
|
req.headers = headerx
|
78
81
|
end.env
|
79
|
-
|
82
|
+
ct = resp[:response_headers]["content-type"]
|
83
|
+
if ct && /application\/json/=~ct.downcase
|
80
84
|
body = JSON.parse(resp[:body])
|
81
85
|
else
|
82
86
|
body = resp[:body]
|
@@ -86,10 +90,11 @@ class ServiceBase
|
|
86
90
|
:headers => resp[:response_headers],
|
87
91
|
:body => body
|
88
92
|
}
|
93
|
+
Rest::Terminal.instance_variable_set("@service",@path)
|
89
94
|
Rest::Terminal.instance_variable_set("@response",@response)
|
90
95
|
puts line.red
|
91
96
|
puts "response".intense_green
|
92
|
-
puts @response.pj
|
97
|
+
puts @response.pj
|
93
98
|
save_vars
|
94
99
|
""
|
95
100
|
rescue Faraday::Error::ConnectionFailed => e
|
@@ -99,15 +104,15 @@ class ServiceBase
|
|
99
104
|
end
|
100
105
|
|
101
106
|
def headers(up=true)
|
102
|
-
inheritances(:headers,up).select{|k,v|v
|
107
|
+
inheritances(:headers,up).select{|k,v|v}
|
103
108
|
end
|
104
109
|
|
105
110
|
def bodies(up=true)
|
106
|
-
inheritances(:bodies,up).select{|k,v|v
|
111
|
+
inheritances(:bodies,up).select{|k,v|v}
|
107
112
|
end
|
108
113
|
|
109
114
|
def vars(up=true)
|
110
|
-
inheritances(:vars,up).select{|k,v|v
|
115
|
+
inheritances(:vars,up).select{|k,v|v}
|
111
116
|
end
|
112
117
|
|
113
118
|
def inheritances(key,up)
|
@@ -122,8 +127,17 @@ class ServiceBase
|
|
122
127
|
end
|
123
128
|
|
124
129
|
private
|
125
|
-
|
126
|
-
|
130
|
+
|
131
|
+
def last_service
|
132
|
+
t = Rest::Terminal
|
133
|
+
s = t.instance_variable_get("@service")
|
134
|
+
t.instance_variable_get("@services")[s]
|
135
|
+
end
|
136
|
+
|
137
|
+
def last_response
|
138
|
+
Rest::Terminal.instance_variable_get("@response")
|
139
|
+
end
|
140
|
+
|
127
141
|
def reset(prm)
|
128
142
|
params = prm - (prm - %w(headers body vars))
|
129
143
|
params.each do |x|
|
@@ -155,7 +169,8 @@ class ServiceBase
|
|
155
169
|
end
|
156
170
|
|
157
171
|
def body_join
|
158
|
-
|
172
|
+
ct = headers[:"content-type"]
|
173
|
+
if ct && /application\/json/=~ct.downcase
|
159
174
|
body = bodies.to_json
|
160
175
|
else
|
161
176
|
body = bodies.collect do |k,v|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rest-terminal
|
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: 2012-
|
12
|
+
date: 2012-11-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json
|