class ProjectFifo::Resource
Attributes
fifo[R]
namespace[R]
Public Class Methods
new(fifo, namespace)
click to toggle source
# File lib/project-fifo/resource.rb, line 8 def initialize(fifo, namespace) @namespace = namespace @fifo = fifo end
Public Instance Methods
[](uuid)
click to toggle source
alias didn’t work. research it
# File lib/project-fifo/resource.rb, line 18 def [](uuid) get(uuid) end
create(data)
click to toggle source
# File lib/project-fifo/resource.rb, line 34 def create(data) validate!(data) fifo.post(namespace, data) end
delete(uuid)
click to toggle source
# File lib/project-fifo/resource.rb, line 39 def delete(uuid) fifo.delete(namespace + '/' + uuid) end
get(uuid)
click to toggle source
# File lib/project-fifo/resource.rb, line 22 def get(uuid) fifo.get(namespace + '/' + uuid) end
get_by_name(name)
click to toggle source
# File lib/project-fifo/resource.rb, line 26 def get_by_name(name) list.map{|i| get(i) }.select{|i| i['name'] == name} end
list()
click to toggle source
# File lib/project-fifo/resource.rb, line 13 def list fifo.get(namespace) end
metadata(uuid, key, value)
click to toggle source
# File lib/project-fifo/resource.rb, line 30 def metadata(uuid, key, value) fifo.put([ namespace, uuid, 'metadata'].join('/'), { key => value }) end
post(uuid, payload)
click to toggle source
# File lib/project-fifo/resource.rb, line 43 def post(uuid, payload) fifo.post(namespace + '/' + uuid, payload) end
put(uuid, payload)
click to toggle source
# File lib/project-fifo/resource.rb, line 47 def put(uuid, payload) fifo.put(namespace + '/' + uuid, payload) end
Protected Instance Methods
validate!(data)
click to toggle source
# File lib/project-fifo/resource.rb, line 52 def validate!(data) validator = HashValidator.validate(data, validations) raise(ArgumentError, validator.errors) unless validator.valid? end
validations()
click to toggle source
# File lib/project-fifo/resource.rb, line 57 def validations() return {} end