Module: CyberCoach::PostCreateable::InstanceMethods

Defined in:
lib/cybercoach/post_createable.rb

Overview

The instance methods to install.

Instance Method Summary collapse

Instance Method Details

#create(options = {}, invalidate = true) ⇒ Object

:category: CRUD

Creates it. Gets the URI from the response and reads itself again. Raises HttpError if the request is unsuccessful.

options

A hash of options to send with the request.

invalidate

Invalidates it when true, skips invalidation when false.



34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/cybercoach/post_createable.rb', line 34

def create(options = {}, invalidate = true)
  if invalidate
    self.invalidate
  end
  options = @options.merge(options).merge(
    body: serialize
  )
  response = self.class.post(resource_base_uri, options)
  if response.success?
    @uri = response.headers['location']
    read(options)
  else
    fail HttpError, response.response
  end
end