Class: Avm::Data::Package
- Inherits:
-
Object
- Object
- Avm::Data::Package
- Includes:
- Callbacks
- Defined in:
- lib/avm/data/package.rb,
lib/avm/data/package/dump.rb,
lib/avm/data/package/load.rb
Direct Known Subclasses
Defined Under Namespace
Instance Method Summary collapse
- #add_unit(identifier, unit) ⇒ Object
- #dump(data_path, options = {}) ⇒ Object
- #dump_units_to_directory(directory) ⇒ Object
-
#initialize(options) ⇒ Package
constructor
A new instance of Package.
- #load(data_path) ⇒ Object
- #load_units_from_directory(directory) ⇒ Object
- #units ⇒ Object
Constructor Details
#initialize(options) ⇒ Package
Returns a new instance of Package.
12 13 14 15 16 17 18 19 |
# File 'lib/avm/data/package.rb', line 12 def initialize() = . units = .consume(:units) .validate units.if_present do |v| v.each { |identifier, unit| add_unit(identifier, unit) } end end |
Instance Method Details
#add_unit(identifier, unit) ⇒ Object
21 22 23 |
# File 'lib/avm/data/package.rb', line 21 def add_unit(identifier, unit) units[identifier.to_sym] = unit end |
#dump(data_path, options = {}) ⇒ Object
25 26 27 |
# File 'lib/avm/data/package.rb', line 25 def dump(data_path, = {}) ::Avm::Data::Package::Dump.new(self, data_path, ) end |
#dump_units_to_directory(directory) ⇒ Object
33 34 35 36 37 |
# File 'lib/avm/data/package.rb', line 33 def dump_units_to_directory(directory) run_callbacks :dump do units.each { |identifier, unit| unit.dump_to_directory(directory, identifier) } end end |
#load(data_path) ⇒ Object
29 30 31 |
# File 'lib/avm/data/package.rb', line 29 def load(data_path) ::Avm::Data::Package::Load.new(self, data_path) end |
#load_units_from_directory(directory) ⇒ Object
39 40 41 42 43 |
# File 'lib/avm/data/package.rb', line 39 def load_units_from_directory(directory) run_callbacks :load do units.each { |identifier, unit| unit.load_from_directory(directory, identifier) } end end |
#units ⇒ Object
45 46 47 |
# File 'lib/avm/data/package.rb', line 45 def units @units ||= {} end |