class Tikkie::Api::Resources::Base
Base
class for all resources.
Attributes
config[R]
options[R]
Public Class Methods
new(config, options = {})
click to toggle source
# File lib/tikkie/api/resources/base.rb, line 10 def initialize(config, options = {}) @config = config @options = options @body = options.delete(:body) if options.key?(:body) end
Public Instance Methods
delete()
click to toggle source
# File lib/tikkie/api/resources/base.rb, line 28 def delete delete_resource nil end
load()
click to toggle source
# File lib/tikkie/api/resources/base.rb, line 16 def load @response ||= load_resource self end
loaded?()
click to toggle source
# File lib/tikkie/api/resources/base.rb, line 34 def loaded? !@response.nil? end
save(attributes = {})
click to toggle source
# File lib/tikkie/api/resources/base.rb, line 22 def save(attributes = {}) @response = create_resource(attributes) self end
Private Instance Methods
body()
click to toggle source
# File lib/tikkie/api/resources/base.rb, line 52 def body @body ||= begin load unless loaded? @response.body end end
create_resource()
click to toggle source
# File lib/tikkie/api/resources/base.rb, line 44 def create_resource raise NotImplementedError end
delete_resource()
click to toggle source
# File lib/tikkie/api/resources/base.rb, line 48 def delete_resource raise NotImplementedError end
load_resource()
click to toggle source
# File lib/tikkie/api/resources/base.rb, line 40 def load_resource raise NotImplementedError end
request()
click to toggle source
# File lib/tikkie/api/resources/base.rb, line 60 def request @request ||= Tikkie::Api::Request.new(config) end