Class: RDBr::Metadata::Namespace
- Inherits:
-
Data
- Object
- Data
- RDBr::Metadata::Namespace
- Defined in:
- lib/rdbr/metadata/namespace.rb
Instance Attribute Summary collapse
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#relations ⇒ Object
readonly
Returns the value of attribute relations.
Instance Method Summary collapse
-
#initialize(name:, relations: []) ⇒ Namespace
constructor
A new instance of Namespace.
- #relation(name) ⇒ Object
- #tables ⇒ Object
- #views ⇒ Object
Constructor Details
#initialize(name:, relations: []) ⇒ Namespace
Returns a new instance of Namespace.
4 5 6 7 8 9 10 11 |
# File 'lib/rdbr/metadata/namespace.rb', line 4 def initialize(name:, relations: []) namespace_relations = Values.collection(relations, member: Relation, field: 'relations') Values.unique_names!(namespace_relations, field: 'relations') super( name: Values.name(name, field: 'namespace name'), relations: namespace_relations ) end |
Instance Attribute Details
#name ⇒ Object (readonly)
Returns the value of attribute name
3 4 5 |
# File 'lib/rdbr/metadata/namespace.rb', line 3 def name @name end |
#relations ⇒ Object (readonly)
Returns the value of attribute relations
3 4 5 |
# File 'lib/rdbr/metadata/namespace.rb', line 3 def relations @relations end |
Instance Method Details
#relation(name) ⇒ Object
13 14 15 |
# File 'lib/rdbr/metadata/namespace.rb', line 13 def relation(name) relations.find{|relation| relation.name == name.to_s } end |
#tables ⇒ Object
17 18 19 |
# File 'lib/rdbr/metadata/namespace.rb', line 17 def tables relations.select(&:table?).freeze end |
#views ⇒ Object
21 22 23 |
# File 'lib/rdbr/metadata/namespace.rb', line 21 def views relations.select(&:view?).freeze end |