Class: Archimate::DataModel::Diagram
Instance Attribute Summary collapse
Instance Method Summary
collapse
#add_reference, #destroy, #model, #references, #remove_reference, #replace_item_with, #replace_with
Methods included from Comparison
#==, #[], #dig, #each, #hash, included, #initialize, #inspect, #pretty_print, #to_h
Instance Attribute Details
#background ⇒ Int, NilClass
value of 0 on Archi Sketch Model
42
|
# File 'lib/archimate/data_model/diagram.rb', line 42
model_attr :background, default: nil
|
#connection_router_type ⇒ Int, NilClass
TODO:
Archi formats only fill this in, should be an enum
38
|
# File 'lib/archimate/data_model/diagram.rb', line 38
model_attr :connection_router_type, default: nil
|
#connections ⇒ Array<Connection>
45
|
# File 'lib/archimate/data_model/diagram.rb', line 45
model_attr :connections, writable: true, default: [], referenceable_list: true
|
17
|
# File 'lib/archimate/data_model/diagram.rb', line 17
model_attr :documentation, writable: true, default: nil
|
#id ⇒ String
11
|
# File 'lib/archimate/data_model/diagram.rb', line 11
model_attr :id
|
14
|
# File 'lib/archimate/data_model/diagram.rb', line 14
model_attr :name, writable: true, default: nil
|
34
|
# File 'lib/archimate/data_model/diagram.rb', line 34
model_attr :nodes, writable: true, default: [], referenceable_list: true
|
#properties ⇒ Array<Property>
28
|
# File 'lib/archimate/data_model/diagram.rb', line 28
model_attr :properties, writable: true, default: []
|
#type ⇒ String, NilClass
Note:
type here was used for the Element/Relationship/Diagram type
25
|
# File 'lib/archimate/data_model/diagram.rb', line 25
model_attr :type, default: nil
|
#viewpoint ⇒ Viewpoint, NilClass
31
|
# File 'lib/archimate/data_model/diagram.rb', line 31
model_attr :viewpoint, default: nil
|
Instance Method Details
#all_nodes ⇒ Object
47
48
49
|
# File 'lib/archimate/data_model/diagram.rb', line 47
def all_nodes
nodes.inject(Array.new(nodes)) { |child_ary, child| child_ary.concat(child.all_nodes) }
end
|
#element_ids ⇒ Object
55
56
57
|
# File 'lib/archimate/data_model/diagram.rb', line 55
def element_ids
@element_ids ||= elements.map(&:id)
end
|
#elements ⇒ Object
51
52
53
|
# File 'lib/archimate/data_model/diagram.rb', line 51
def elements
@elements ||= all_nodes.map(&:element).compact
end
|
#other_attributes ⇒ Array<AnyAttribute>
21
|
# File 'lib/archimate/data_model/diagram.rb', line 21
model_attr :other_attributes, default: []
|
#other_elements ⇒ Array<AnyElement>
19
|
# File 'lib/archimate/data_model/diagram.rb', line 19
model_attr :other_elements, default: []
|
#relationship_ids ⇒ Object
63
64
65
|
# File 'lib/archimate/data_model/diagram.rb', line 63
def relationship_ids
@relationship_ids ||= relationships.map(&:id)
end
|
#relationships ⇒ Object
59
60
61
|
# File 'lib/archimate/data_model/diagram.rb', line 59
def relationships
@relationships ||= connections.map(&:relationship).compact
end
|
#to_s ⇒ Object
67
68
69
|
# File 'lib/archimate/data_model/diagram.rb', line 67
def to_s
"#{Archimate::Color.data_model('Diagram')}<#{id}>[#{Archimate::Color.color(name, %i[white underline])}]"
end
|
#total_viewpoint? ⇒ Boolean
71
72
73
|
# File 'lib/archimate/data_model/diagram.rb', line 71
def total_viewpoint?
viewpoint.nil?
end
|
#viewpoint_description ⇒ Object
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
# File 'lib/archimate/data_model/diagram.rb', line 75
def viewpoint_description
case viewpoint
when Symbol
viewpoint.to_s
when Viewpoint
viewpoint.name.to_s
else
case type
when "canvas:CanvasModel"
"Canvas"
when "archimate:SketchModel"
"Sketch"
else
"Total"
end
end
end
|