class DeepStore::Repository
Attributes
adapter[RW]
bucket[R]
codec[R]
dao[R]
resource_class[R]
Public Class Methods
new(data = {})
click to toggle source
# File lib/deep_store/repository.rb, line 10 def initialize(data = {}) @data = data @adapter = data.fetch(:adapter, DeepStore.adapter) @bucket = data.fetch(:bucket, DeepStore.settings.bucket) @codec = data.fetch(:codec) @resource_class = data.fetch(:resource_class) @dao = DAO.new(adapter: @adapter, bucket: @bucket, codec: @codec) end
Public Instance Methods
destroy(key)
click to toggle source
# File lib/deep_store/repository.rb, line 31 def destroy(key) Operations::DestroyOperation.new(dao, resource_class, key: key).result end
find(key)
click to toggle source
# File lib/deep_store/repository.rb, line 19 def find(key) Operations::FindQuery.new(dao, resource_class, key: key).result end
save(resource)
click to toggle source
# File lib/deep_store/repository.rb, line 27 def save(resource) Operations::SaveOperation.new(dao, resource_class, resource: resource).result end
where(query = {})
click to toggle source
# File lib/deep_store/repository.rb, line 23 def where(query = {}) Operations::WhereQuery.new(dao, resource_class, query: query).result end