mailru-api 0.5.0 → 0.5.2
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/mailru-api.rb +5 -5
- data/lib/mailru-api/dsl.rb +4 -4
- data/lib/mailru-api/error.rb +1 -1
- data/lib/mailru-api/request.rb +23 -2
- metadata +5 -5
data/lib/mailru-api.rb
CHANGED
@@ -81,7 +81,7 @@ module MailRU
|
|
81
81
|
end
|
82
82
|
|
83
83
|
def audio
|
84
|
-
DSL.new(self
|
84
|
+
DSL.new(self, 'audio') do
|
85
85
|
api 'get'
|
86
86
|
api 'link'
|
87
87
|
api 'search'
|
@@ -89,13 +89,13 @@ module MailRU
|
|
89
89
|
end
|
90
90
|
|
91
91
|
def events
|
92
|
-
DSL.new(self
|
92
|
+
DSL.new(self, 'events') do
|
93
93
|
api 'getNewCount'
|
94
94
|
end
|
95
95
|
end
|
96
96
|
|
97
97
|
def friends
|
98
|
-
DSL.new(self
|
98
|
+
DSL.new(self, 'friends') do
|
99
99
|
api 'get'
|
100
100
|
api 'getAppUsers'
|
101
101
|
api 'getInvitationsCount'
|
@@ -127,13 +127,13 @@ module MailRU
|
|
127
127
|
|
128
128
|
def mobile
|
129
129
|
DSL.new(self, 'mobile') do
|
130
|
-
api 'getCanvas'
|
130
|
+
api 'getCanvas', :get, Request::Secure::No
|
131
131
|
end
|
132
132
|
end
|
133
133
|
|
134
134
|
def notifications
|
135
135
|
DSL.new(self, 'notifications') do
|
136
|
-
api 'send'
|
136
|
+
api 'send', :get, Request::Secure::Yes
|
137
137
|
end
|
138
138
|
end
|
139
139
|
|
data/lib/mailru-api/dsl.rb
CHANGED
@@ -11,11 +11,11 @@ module MailRU
|
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
14
|
-
def api name, method = :get
|
14
|
+
def api name, method = :get, secure = Request::Secure::Any
|
15
15
|
self.class.send(:define_method, underscore(name)) do |params = {}|
|
16
|
-
return GetRequest.new(@api, "#{@group}.#{name}", params).get if method == :get
|
17
|
-
return PostRequest.new(@api, "#{@group}.#{name}", params).post if method == :post
|
18
|
-
raise Error.create(0, '
|
16
|
+
return GetRequest.new(@api, "#{@group}.#{name}", params, secure).get if method == :get
|
17
|
+
return PostRequest.new(@api, "#{@group}.#{name}", params, secure).post if method == :post
|
18
|
+
raise Error.create(0, 'HTTP method must be GET or POST!')
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
data/lib/mailru-api/error.rb
CHANGED
@@ -25,7 +25,7 @@ module MailRU
|
|
25
25
|
when 200 then PermissionDeniedError.new(code, description)
|
26
26
|
when 202 then AccessToObjectDeniedError.new(code, description)
|
27
27
|
when 501 then IncorrectImageError.new(code, description)
|
28
|
-
else Error.new(code, description)
|
28
|
+
else Error.new(code, "Internal Error: #{description}")
|
29
29
|
end
|
30
30
|
end
|
31
31
|
end
|
data/lib/mailru-api/request.rb
CHANGED
@@ -30,13 +30,34 @@ module MailRU
|
|
30
30
|
end
|
31
31
|
|
32
32
|
def use_c2s?
|
33
|
-
@api.private_key and (@secure == Secure::No or @secure == Secure::Any)
|
33
|
+
@api.private_key and (@secure == Secure::No or @secure == Secure::Any) and @api.uid
|
34
34
|
end
|
35
35
|
|
36
36
|
def signature
|
37
37
|
return s2s_signature if use_s2s?
|
38
38
|
return c2s_signature if use_c2s?
|
39
|
-
|
39
|
+
|
40
|
+
if @secure == Secure::Yes and @api.secret_key.nil?
|
41
|
+
raise Error.create(0, 'secret_key must be specified for secure requests.')
|
42
|
+
end
|
43
|
+
|
44
|
+
if @secure == Secure::No and @api.private_key.nil?
|
45
|
+
raise Error.create(0, 'private_key must be specified for non secure requests.')
|
46
|
+
end
|
47
|
+
|
48
|
+
if @secure == Secure::Any and @api.secret_key.nil? and @api.private_key.nil?
|
49
|
+
raise Error.create(0, 'secret_key or private_key must be specified.')
|
50
|
+
end
|
51
|
+
|
52
|
+
if @secure == Secure::No and @api.uid.nil?
|
53
|
+
raise Error.create(0, 'uid must be specified for non secure requests.')
|
54
|
+
end
|
55
|
+
|
56
|
+
if @secure == Secure::Any and @api.secret_key.nil? and @api.uid.nil?
|
57
|
+
raise Error.create(0, 'uid must be specified for non secure requests.')
|
58
|
+
end
|
59
|
+
|
60
|
+
raise Error.create(0, 'unknown error.')
|
40
61
|
end
|
41
62
|
|
42
63
|
def c2s_signature
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mailru-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,9 +9,9 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-09-
|
12
|
+
date: 2013-09-22 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
|
-
description:
|
14
|
+
description: Ruby @Mail.RU API
|
15
15
|
email: demin.alexey@inbox.ru
|
16
16
|
executables: []
|
17
17
|
extensions: []
|
@@ -21,7 +21,7 @@ files:
|
|
21
21
|
- lib/mailru-api/error.rb
|
22
22
|
- lib/mailru-api/request.rb
|
23
23
|
- lib/mailru-api/dsl.rb
|
24
|
-
homepage:
|
24
|
+
homepage: https://github.com/ademin/mailru-api
|
25
25
|
licenses:
|
26
26
|
- MIT
|
27
27
|
post_install_message:
|
@@ -45,6 +45,6 @@ rubyforge_project:
|
|
45
45
|
rubygems_version: 1.8.24
|
46
46
|
signing_key:
|
47
47
|
specification_version: 3
|
48
|
-
summary:
|
48
|
+
summary: Ruby @Mail.RU API
|
49
49
|
test_files: []
|
50
50
|
has_rdoc:
|