zendesk_api 1.12.0 → 1.12.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.
- checksums.yaml +4 -4
- data/.gitignore +2 -2
- data/README.md +2 -1
- data/lib/zendesk_api/actions.rb +25 -3
- data/lib/zendesk_api/collection.rb +2 -2
- data/lib/zendesk_api/resources.rb +4 -0
- data/lib/zendesk_api/version.rb +1 -1
- data/util/resource_handler.rb +8 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 73febfb24dc4a39b5b386d4476aa71718ca59a13
|
4
|
+
data.tar.gz: ba8cfa1f3bccf225f73c5ab33088bba61d9d7167
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fa55aa31b991933dc87c9956d0dc280c84bc32325f43d65ac95f4abea42b98ca366c169bbfad2274a62901016ea5aa9f2c31c59f3533ea8e576d19bd6be77aba
|
7
|
+
data.tar.gz: dbfe25ff93a95353da721dca9771e8c6561e65f323e2cc6440fb583c1e4f0281f9b27444c2c65839ad65a95080cfaf98d55ac0d06e2c165aca309841bdbf81ab
|
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -6,7 +6,7 @@ This client **only** supports Zendesk's v2 API. Please see our [API documentati
|
|
6
6
|
|
7
7
|
## Documentation
|
8
8
|
|
9
|
-
Please check out the [wiki](https://github.com/zendesk/zendesk_api_client_rb/wiki), [class documentation](
|
9
|
+
Please check out the [wiki](https://github.com/zendesk/zendesk_api_client_rb/wiki), [class documentation](http://zendesk.github.io/zendesk_api_client_rb), and [issues](https://github.com/zendesk/zendesk_api_client_rb/issues) before reporting a bug or asking for help.
|
10
10
|
|
11
11
|
## Important Notices
|
12
12
|
|
@@ -306,6 +306,7 @@ client.apps.create!(:name => "test", :upload => "app.zip")
|
|
306
306
|
```
|
307
307
|
|
308
308
|
*Note: job statuses are currently not supported, so you must manually poll the job status API for app creation.*
|
309
|
+
|
309
310
|
```ruby
|
310
311
|
body = {}
|
311
312
|
until %w{failed completed}.include?(body["status"])
|
data/lib/zendesk_api/actions.rb
CHANGED
@@ -90,6 +90,7 @@ module ZendeskAPI
|
|
90
90
|
base.extend(ClassMethods)
|
91
91
|
end
|
92
92
|
|
93
|
+
# Reloads a resource.
|
93
94
|
def reload!
|
94
95
|
response = @client.connection.get(path) do |req|
|
95
96
|
yield req if block_given?
|
@@ -124,6 +125,8 @@ module ZendeskAPI
|
|
124
125
|
end
|
125
126
|
|
126
127
|
# Finds, returning nil if it fails
|
128
|
+
# @param [Client] client The {Client} object to be used
|
129
|
+
# @param [Hash] options Any additional GET parameters to be added
|
127
130
|
def find(client, options = {}, &block)
|
128
131
|
find!(client, options, &block)
|
129
132
|
rescue ZendeskAPI::Error::ClientError => e
|
@@ -151,6 +154,9 @@ module ZendeskAPI
|
|
151
154
|
end
|
152
155
|
end
|
153
156
|
|
157
|
+
# Creates, returning nil if it fails
|
158
|
+
# @param [Client] client The {Client} object to be used
|
159
|
+
# @param [Hash] options Any additional GET parameters to be added
|
154
160
|
def create(client, attributes = {}, &block)
|
155
161
|
create!(client, attributes, &block)
|
156
162
|
rescue ZendeskAPI::Error::ClientError
|
@@ -160,6 +166,10 @@ module ZendeskAPI
|
|
160
166
|
end
|
161
167
|
|
162
168
|
module CreateMany
|
169
|
+
# Creates multiple resources using the create_many endpoint.
|
170
|
+
# @param [Client] client The {Client} object to be used
|
171
|
+
# @param [Array] attributes_array An array of resources to be created.
|
172
|
+
# @return [JobStatus] the {JobStatus} instance for this create job
|
163
173
|
def create_many!(client, attributes_array, association = Association.new(:class => self))
|
164
174
|
response = client.connection.post("#{association.generate_path}/create_many") do |req|
|
165
175
|
req.body = { resource_name => attributes_array }
|
@@ -193,6 +203,7 @@ module ZendeskAPI
|
|
193
203
|
@destroyed = true
|
194
204
|
end
|
195
205
|
|
206
|
+
# Destroys, returning false on error.
|
196
207
|
def destroy(&block)
|
197
208
|
destroy!(&block)
|
198
209
|
rescue ZendeskAPI::Error::ClientError
|
@@ -209,6 +220,7 @@ module ZendeskAPI
|
|
209
220
|
true
|
210
221
|
end
|
211
222
|
|
223
|
+
# Destroys, returning false on error.
|
212
224
|
def destroy(client, attributes = {}, &block)
|
213
225
|
destroy!(client, attributes, &block)
|
214
226
|
rescue ZendeskAPI::Error::ClientError
|
@@ -218,6 +230,10 @@ module ZendeskAPI
|
|
218
230
|
end
|
219
231
|
|
220
232
|
module DestroyMany
|
233
|
+
# Destroys multiple resources using the destroy_many endpoint.
|
234
|
+
# @param [Client] client The {Client} object to be used
|
235
|
+
# @param [Array] ids An array of ids to destroy
|
236
|
+
# @return [JobStatus] the {JobStatus} instance for this destroy job
|
221
237
|
def destroy_many!(client, ids, association = Association.new(:class => self))
|
222
238
|
response = client.connection.delete("#{association.generate_path}/destroy_many") do |req|
|
223
239
|
req.params = { :ids => ids.join(',') }
|
@@ -237,15 +253,16 @@ module ZendeskAPI
|
|
237
253
|
end
|
238
254
|
|
239
255
|
module ClassMethod
|
240
|
-
# Updates
|
241
|
-
# @param [Client] client The {Client} object to be used
|
242
|
-
# @param [Hash] attributes The attributes to update. Default to {}
|
256
|
+
# Updates, returning false on error.
|
243
257
|
def update(client, attributes = {}, &block)
|
244
258
|
update!(client, attributes, &block)
|
245
259
|
rescue ZendeskAPI::Error::ClientError
|
246
260
|
false
|
247
261
|
end
|
248
262
|
|
263
|
+
# Updates a resource given the id passed in.
|
264
|
+
# @param [Client] client The {Client} object to be used
|
265
|
+
# @param [Hash] attributes The attributes to update. Default to {
|
249
266
|
def update!(client, attributes = {}, &block)
|
250
267
|
ZendeskAPI::Client.check_deprecated_namespace_usage attributes, singular_resource_name
|
251
268
|
resource = new(client, :id => attributes.delete(:id), :global => attributes.delete(:global), :association => attributes.delete(:association))
|
@@ -257,6 +274,11 @@ module ZendeskAPI
|
|
257
274
|
end
|
258
275
|
|
259
276
|
module UpdateMany
|
277
|
+
# Updates multiple resources using the update_many endpoint.
|
278
|
+
# @param [Client] client The {Client} object to be used
|
279
|
+
# @param [Array] ids An array of ids to update
|
280
|
+
# @param [Hash] attributes The attributes to update resources with
|
281
|
+
# @return [JobStatus] the {JobStatus} instance for this destroy job
|
260
282
|
def update_many!(client, ids, attributes)
|
261
283
|
association = attributes.delete(:association) || Association.new(:class => self)
|
262
284
|
|
@@ -82,7 +82,7 @@ module ZendeskAPI
|
|
82
82
|
|
83
83
|
# Convenience method to build a new resource and
|
84
84
|
# add it to the collection. Fetches the collection as well.
|
85
|
-
# @param [Hash]
|
85
|
+
# @param [Hash] opts Options or attributes to pass
|
86
86
|
def build(opts = {})
|
87
87
|
wrap_resource(opts, true).tap do |res|
|
88
88
|
self << res
|
@@ -91,7 +91,7 @@ module ZendeskAPI
|
|
91
91
|
|
92
92
|
# Convenience method to build a new resource and
|
93
93
|
# add it to the collection. Fetches the collection as well.
|
94
|
-
# @param [Hash]
|
94
|
+
# @param [Hash] opts Options or attributes to pass
|
95
95
|
def build!(opts = {})
|
96
96
|
wrap_resource(opts, true).tap do |res|
|
97
97
|
fetch!
|
data/lib/zendesk_api/version.rb
CHANGED
data/util/resource_handler.rb
CHANGED
@@ -14,7 +14,7 @@ class ResourceHandler < YARD::Handlers::Ruby::Base
|
|
14
14
|
p.const_get(k)
|
15
15
|
end
|
16
16
|
rescue NameError
|
17
|
-
parent =
|
17
|
+
parent = walk_namespace(namespace)
|
18
18
|
klass = parent.const_get(klass)
|
19
19
|
end
|
20
20
|
|
@@ -25,7 +25,7 @@ class ResourceHandler < YARD::Handlers::Ruby::Base
|
|
25
25
|
begin
|
26
26
|
klass = ZendeskAPI.const_get(klass)
|
27
27
|
rescue NameError
|
28
|
-
parent =
|
28
|
+
parent = walk_namespace(namespace)
|
29
29
|
klass = parent.const_get(klass)
|
30
30
|
end
|
31
31
|
|
@@ -52,6 +52,12 @@ class ResourceHandler < YARD::Handlers::Ruby::Base
|
|
52
52
|
writer.docstring.add_tag(YARD::Tags::Tag.new(:param, "The associated object or its attributes", "Hash or #{klass.name}", "value"))
|
53
53
|
end
|
54
54
|
|
55
|
+
def walk_namespace(namespace)
|
56
|
+
namespace.to_s.split('::').inject(ZendeskAPI) do |klass, namespace|
|
57
|
+
klass.const_get(namespace)
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
55
61
|
def get_klass(statement)
|
56
62
|
statement.traverse do |node|
|
57
63
|
if node.type == :assoc && node.jump(:kw).source == "class"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zendesk_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.12.
|
4
|
+
version: 1.12.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Steven Davidovitz
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-
|
12
|
+
date: 2015-10-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bump
|