Class: Rdm::Package
- Inherits:
-
Object
- Object
- Rdm::Package
- Defined in:
- lib/rdm/package.rb
Constant Summary collapse
- DEFAULT_GROUP =
'_default_'.freeze
Instance Attribute Summary collapse
-
#config_dependencies(group = nil) ⇒ Object
Returns the value of attribute config_dependencies.
-
#external_dependencies(group = nil) ⇒ Object
Returns the value of attribute external_dependencies.
-
#file_dependencies(group = nil) ⇒ Object
Returns the value of attribute file_dependencies.
-
#local_dependencies(group = nil) ⇒ Object
Returns the value of attribute local_dependencies.
-
#metadata ⇒ Object
Returns the value of attribute metadata.
-
#path ⇒ Object
Returns the value of attribute path.
Instance Method Summary collapse
- #==(other_package) ⇒ Object
- #dependency(group = nil) ⇒ Object
-
#import(dependency) ⇒ Object
Import local dependency, e.g another package.
-
#import_config(dependency) ⇒ Object
Import config dependency.
- #local_dependencies_with_groups ⇒ Object
- #name(value = nil) ⇒ Object
- #package ⇒ Object
-
#require(dependency) ⇒ Object
General ruby requires, e.g.
-
#require_file(file) ⇒ Object
Require file relative to package, e.g.
- #source(value = nil) ⇒ Object
- #version(value = nil) ⇒ Object
Instance Attribute Details
#config_dependencies(group = nil) ⇒ Object
Returns the value of attribute config_dependencies.
4 5 6 |
# File 'lib/rdm/package.rb', line 4 def config_dependencies @config_dependencies end |
#external_dependencies(group = nil) ⇒ Object
Returns the value of attribute external_dependencies.
4 5 6 |
# File 'lib/rdm/package.rb', line 4 def external_dependencies @external_dependencies end |
#file_dependencies(group = nil) ⇒ Object
Returns the value of attribute file_dependencies.
4 5 6 |
# File 'lib/rdm/package.rb', line 4 def file_dependencies @file_dependencies end |
#local_dependencies(group = nil) ⇒ Object
Returns the value of attribute local_dependencies.
4 5 6 |
# File 'lib/rdm/package.rb', line 4 def local_dependencies @local_dependencies end |
#metadata ⇒ Object
Returns the value of attribute metadata.
4 5 6 |
# File 'lib/rdm/package.rb', line 4 def @metadata end |
#path ⇒ Object
Returns the value of attribute path.
4 5 6 |
# File 'lib/rdm/package.rb', line 4 def path @path end |
Instance Method Details
#==(other_package) ⇒ Object
81 82 83 84 85 |
# File 'lib/rdm/package.rb', line 81 def ==(other_package) return false if other_package.class != self.class other_package.name == name end |
#dependency(group = nil) ⇒ Object
63 64 65 66 67 |
# File 'lib/rdm/package.rb', line 63 def dependency(group = nil) @current_group = group ? group.to_s : nil yield @current_group = nil end |
#import(dependency) ⇒ Object
Import local dependency, e.g another package
32 33 34 35 36 |
# File 'lib/rdm/package.rb', line 32 def import(dependency) @local_dependencies ||= {} @local_dependencies[current_group] ||= [] @local_dependencies[current_group] << dependency end |
#import_config(dependency) ⇒ Object
Import config dependency
53 54 55 56 57 |
# File 'lib/rdm/package.rb', line 53 def import_config(dependency) @config_dependencies ||= {} @config_dependencies[current_group] ||= [] @config_dependencies[current_group] << dependency end |
#local_dependencies_with_groups ⇒ Object
22 23 24 25 26 27 28 29 |
# File 'lib/rdm/package.rb', line 22 def local_dependencies_with_groups return {} if @local_dependencies.nil? @local_dependencies.each_with_object( Hash.new { |h,k| h[k]=[] } ) do|(k,v), h| v.map { |t| h[t] << k } end end |
#name(value = nil) ⇒ Object
73 74 75 |
# File 'lib/rdm/package.rb', line 73 def name(value = nil) :name, value end |
#package ⇒ Object
59 60 61 |
# File 'lib/rdm/package.rb', line 59 def package yield end |
#require(dependency) ⇒ Object
General ruby requires, e.g. require another gem
39 40 41 42 43 |
# File 'lib/rdm/package.rb', line 39 def require(dependency) @external_dependencies ||= {} @external_dependencies[current_group] ||= [] @external_dependencies[current_group] << dependency end |
#require_file(file) ⇒ Object
Require file relative to package, e.g. require root file
46 47 48 49 50 |
# File 'lib/rdm/package.rb', line 46 def require_file(file) @file_dependencies ||= {} @file_dependencies[current_group] ||= [] @file_dependencies[current_group] << file end |
#source(value = nil) ⇒ Object
69 70 71 |
# File 'lib/rdm/package.rb', line 69 def source(value = nil) :source, value end |
#version(value = nil) ⇒ Object
77 78 79 |
# File 'lib/rdm/package.rb', line 77 def version(value = nil) :version, value end |