riddl 0.99.221 → 0.99.222
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.
- checksums.yaml +4 -4
- data/lib/ruby/riddl/utils/oauth2-helper.rb +102 -54
- data/riddl.gemspec +2 -1
- metadata +21 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6fdd056e0a403a454efa540aa0e2f91ba9834815
|
4
|
+
data.tar.gz: 4eaa8a23993e306590b543faf586ceaa85f9682a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f4337b2e3dc0a9d59ef6b2d9ce2c75422ca7216c9c8227ce8beace6f8718d6aee3c29c3347a1d649ae8da4cbb4565c59c9970f8800b1a3cb5dadcf01696c80db
|
7
|
+
data.tar.gz: 48b10d06c02623fb6ea3e901aaab727ad16a975527fb5893a5362e97dd829462d30809aa504aa0d98089d436c63676a967520ddd557cd7cd177f9a3285f78a51
|
@@ -8,62 +8,110 @@ module Riddl
|
|
8
8
|
module OAuth2
|
9
9
|
|
10
10
|
module Helper
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
11
|
+
module Tokens #{{{
|
12
|
+
|
13
|
+
class Redis #{{{
|
14
|
+
def initialize(url)
|
15
|
+
@redis = Redis.new(:url => url)
|
16
|
+
end
|
17
|
+
|
18
|
+
def get(key)
|
19
|
+
@redis.get key
|
20
|
+
end
|
21
|
+
|
22
|
+
def key?(key)
|
23
|
+
@redis.exists(key)
|
24
|
+
end
|
25
|
+
|
26
|
+
def set(key,value,dur)
|
27
|
+
@redis.multi do
|
28
|
+
@redis.set key, value
|
29
|
+
@redis.set value, key
|
30
|
+
@redis.expire key, dur
|
31
|
+
@redis.expire value, dur
|
32
|
+
end
|
33
|
+
nil
|
34
|
+
end
|
35
|
+
|
36
|
+
def delete(key)
|
37
|
+
value = nil
|
38
|
+
@redis.multi do
|
39
|
+
value = @redis.get key
|
40
|
+
@redis.del key
|
41
|
+
@redis.del value
|
42
|
+
end
|
43
|
+
value
|
44
|
+
end
|
45
|
+
|
46
|
+
def delete_by_value(value)
|
47
|
+
key = nil
|
48
|
+
@redis.multi do
|
49
|
+
key = @redis.get value
|
50
|
+
@redis.del key
|
51
|
+
@redis.del value
|
52
|
+
end
|
53
|
+
key
|
54
|
+
end
|
55
|
+
end #}}}
|
56
|
+
|
57
|
+
class File #{{{
|
58
|
+
def initialize(tfile)
|
59
|
+
@tfile = tfile
|
60
|
+
@changed = changed
|
61
|
+
read
|
62
|
+
end
|
63
|
+
|
64
|
+
def get(name)
|
65
|
+
read if changed != @changed
|
66
|
+
@tokens[name]
|
67
|
+
end
|
68
|
+
|
69
|
+
def key?(key)
|
70
|
+
@tokens.key?(key)
|
71
|
+
end
|
72
|
+
|
73
|
+
def set(name,value,dur)
|
74
|
+
@tokens[name] = value
|
75
|
+
write
|
76
|
+
nil
|
77
|
+
end
|
78
|
+
|
79
|
+
def changed
|
80
|
+
if File.exists?(@tfile)
|
81
|
+
File.stat(@tfile).mtime
|
82
|
+
else
|
83
|
+
@tokens = {}
|
84
|
+
write
|
85
|
+
end
|
86
|
+
end
|
87
|
+
private :changed
|
88
|
+
|
89
|
+
def write
|
90
|
+
EM.defer {
|
91
|
+
File.write(@tfile, JSON::pretty_generate(@tokens)) rescue {}
|
92
|
+
}
|
93
|
+
@changed = changed
|
94
|
+
end
|
95
|
+
private :write
|
96
|
+
|
97
|
+
def read
|
98
|
+
@tokens = JSON::parse(File.read(@tfile)) rescue {}
|
99
|
+
end
|
100
|
+
private :read
|
101
|
+
|
102
|
+
def delete(token)
|
103
|
+
deleted = @tokens.delete(token)
|
104
|
+
write
|
105
|
+
deleted
|
106
|
+
end
|
107
|
+
|
108
|
+
def delete_by_user(user_id)
|
109
|
+
deleted = @tokens.delete_if { |_, v| v == user_id }
|
38
110
|
write
|
111
|
+
deleted
|
39
112
|
end
|
40
|
-
end
|
41
|
-
|
42
|
-
|
43
|
-
def write
|
44
|
-
EM.defer {
|
45
|
-
File.write(@tfile, JSON::pretty_generate(@tokens)) rescue {}
|
46
|
-
}
|
47
|
-
@changed = changed
|
48
|
-
end
|
49
|
-
private :write
|
50
|
-
|
51
|
-
def read
|
52
|
-
@tokens = JSON::parse(File.read(@tfile)) rescue {}
|
53
|
-
end
|
54
|
-
private :read
|
55
|
-
|
56
|
-
def delete(token)
|
57
|
-
deleted = @tokens.delete(token)
|
58
|
-
write
|
59
|
-
deleted
|
60
|
-
end
|
61
|
-
|
62
|
-
def delete_by_user(user_id)
|
63
|
-
deleted = @tokens.delete_if { |_, v| v == user_id }
|
64
|
-
write
|
65
|
-
deleted
|
66
|
-
end
|
113
|
+
end #}}}
|
114
|
+
|
67
115
|
end #}}}
|
68
116
|
|
69
117
|
def self::header #{{{
|
data/riddl.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = "riddl"
|
3
|
-
s.version = "0.99.
|
3
|
+
s.version = "0.99.222"
|
4
4
|
s.platform = Gem::Platform::RUBY
|
5
5
|
s.license = "LGPL-3"
|
6
6
|
s.summary = "restful interface description and declaration language: tools and client/server libs"
|
@@ -34,4 +34,5 @@ Gem::Specification.new do |s|
|
|
34
34
|
s.add_runtime_dependency 'minitest', '>= 5.0.0', '~>5'
|
35
35
|
s.add_runtime_dependency 'blather', '~>1'
|
36
36
|
s.add_runtime_dependency 'charlock_holmes', '>= 0.7', '~>0'
|
37
|
+
s.add_runtime_dependency 'redis', '>= 3.3.0', '~>3.3'
|
37
38
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: riddl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.99.
|
4
|
+
version: 0.99.222
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Juergen 'eTM' Mangler
|
@@ -214,6 +214,26 @@ dependencies:
|
|
214
214
|
- - "~>"
|
215
215
|
- !ruby/object:Gem::Version
|
216
216
|
version: '0'
|
217
|
+
- !ruby/object:Gem::Dependency
|
218
|
+
name: redis
|
219
|
+
requirement: !ruby/object:Gem::Requirement
|
220
|
+
requirements:
|
221
|
+
- - ">="
|
222
|
+
- !ruby/object:Gem::Version
|
223
|
+
version: 3.3.0
|
224
|
+
- - "~>"
|
225
|
+
- !ruby/object:Gem::Version
|
226
|
+
version: '3.3'
|
227
|
+
type: :runtime
|
228
|
+
prerelease: false
|
229
|
+
version_requirements: !ruby/object:Gem::Requirement
|
230
|
+
requirements:
|
231
|
+
- - ">="
|
232
|
+
- !ruby/object:Gem::Version
|
233
|
+
version: 3.3.0
|
234
|
+
- - "~>"
|
235
|
+
- !ruby/object:Gem::Version
|
236
|
+
version: '3.3'
|
217
237
|
description: rest service interface definition, mixing, and evolution. supports mixed
|
218
238
|
http and xmpp servers.
|
219
239
|
email: juergen.mangler@gmail.com
|