Class: MyTargetApi::Resource
- Inherits:
-
Object
- Object
- MyTargetApi::Resource
- Defined in:
- lib/my_target_api/resource.rb
Overview
Reflects api resource
Instance Method Summary collapse
- #create(params = {}) ⇒ Object
- #delete(params = {}) ⇒ Object
-
#initialize(api, path) ⇒ Resource
constructor
A new instance of Resource.
- #read(params = {}) ⇒ Object
- #resource(relative_path) ⇒ Object
- #update(params = {}) ⇒ Object
- #upload(content, params = {}) ⇒ Object
Constructor Details
#initialize(api, path) ⇒ Resource
Returns a new instance of Resource.
7 8 9 10 |
# File 'lib/my_target_api/resource.rb', line 7 def initialize(api, path) @api = api @path = path end |
Instance Method Details
#create(params = {}) ⇒ Object
12 13 14 15 16 |
# File 'lib/my_target_api/resource.rb', line 12 def create(params = {}) with_prepared_params(params) do |prepared| api.post_request("#{path}.json", prepared) end end |
#delete(params = {}) ⇒ Object
34 35 36 37 38 |
# File 'lib/my_target_api/resource.rb', line 34 def delete(params = {}) with_id_and_prepared_params(params, assert_id_existence: true) do |id, prepared| api.delete_request("#{path}/#{id}.json", prepared) end end |
#read(params = {}) ⇒ Object
18 19 20 21 22 23 24 25 26 |
# File 'lib/my_target_api/resource.rb', line 18 def read(params = {}) with_id_and_prepared_params(params) do |id, prepared| if id api.get_request("#{path}/#{id}.json", prepared) else api.get_request("#{path}.json", prepared) end end end |
#resource(relative_path) ⇒ Object
46 47 48 |
# File 'lib/my_target_api/resource.rb', line 46 def resource(relative_path) MyTargetApi::Resource.new(api, "#{path}/#{relative_path}") end |
#update(params = {}) ⇒ Object
28 29 30 31 32 |
# File 'lib/my_target_api/resource.rb', line 28 def update(params = {}) with_id_and_prepared_params(params, assert_id_existence: true) do |id, prepared| api.post_request("#{path}/#{id}.json", prepared) end end |
#upload(content, params = {}) ⇒ Object
40 41 42 43 44 |
# File 'lib/my_target_api/resource.rb', line 40 def upload(content, params = {}) with_prepared_params(params) do |prepared| api.upload_request("#{path}.json", content, prepared) end end |