Sha256: 7aff8ee0b594500f4d249b2642189bb79b2f2d96f56b6ba06b3d58d1beee567d
Contents?: true
Size: 988 Bytes
Versions: 2
Compression:
Stored size: 988 Bytes
Contents
module Vedeu # Repository for storing and retrieving defined menus. # # @api private module Menus include Repository extend self # Stores the menu attributes defined by the API. # # @param attributes [Hash] # @return [Hash|MissingRequired] def add(attributes) validate_attributes!(attributes) Vedeu.log("Registering menu: '#{attributes[:name]}'") attributes.merge!({ items: model.new(attributes[:items]) }) storage.store(attributes[:name], attributes) end # Access a menu by name. # # @param name [String] # @return [Vedeu::Menu] def use(name) find(name).fetch(:items) end private # @return [Class] The model class for this repository. def model Vedeu::Menu end # Returns an empty collection ready for the storing of menus by name with # associated menu instance. # # @return [Hash] def in_memory {} end end # Menus end # Vedeu
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
vedeu-0.2.12 | lib/vedeu/repositories/menus.rb |
vedeu-0.2.11 | lib/vedeu/repositories/menus.rb |