Sha256: 5890afa1453235322b76ae10489e33b087d3fdb58a7f0941985b3aa27cba7301
Contents?: true
Size: 1 KB
Versions: 22
Compression:
Stored size: 1 KB
Contents
require 'miasma' module Miasma module Models class Storage # Abstract bucket class Bucket < Types::Model attribute :name, String, :required => true attribute :created, Time, :coerce => lambda{|t| Time.parse(t.to_s)} attribute :metadata, Smash, :coerce => lambda{|o| o.to_smash} # @return [Files] def files memoize(:files) do Files.new(self) end end # Filter buckets # # @param filter [Hash] # @return [Array<Bucket>] def filter(filter={}) raise NotImplementedError end protected # Proxy reload action up to the API def perform_reload api.bucket_reload(self) end # Proxy save action up to the API def perform_save api.bucket_save(self) end # Proxy destroy action up to the API def perform_destroy api.bucket_destroy(self) end end end end end
Version data entries
22 entries across 22 versions & 1 rubygems