Module: Eipiai::SingularResource

Defined in:
lib/eipiai/webmachine/resources/singular.rb

Overview

SingularResource

The singular resource is the basis for a resource representing a single object.

It provides basic GET, PUT and DELETE support.

It is the singular version of the ‘CollectionResource` resource.

Instance Method Summary collapse

Instance Method Details

#allowed_methodsObject



18
19
20
# File 'lib/eipiai/webmachine/resources/singular.rb', line 18

def allowed_methods
  %w(GET PUT DELETE)
end

#delete_resourceObject



26
27
28
29
# File 'lib/eipiai/webmachine/resources/singular.rb', line 26

def delete_resource
  object.destroy
  true
end

#from_jsonObject



31
32
33
34
35
36
37
# File 'lib/eipiai/webmachine/resources/singular.rb', line 31

def from_json
  delete_resource if (exists = object.present?)
  new_object.save

  response.headers['Location'] = request.uri.to_s
  exists ? 204 : 201
end

#resource_exists?Boolean

Returns:

  • (Boolean)


22
23
24
# File 'lib/eipiai/webmachine/resources/singular.rb', line 22

def resource_exists?
  object.present?
end