Module: Archimate::FileFormats::Serializer::Archi::Connection

Included in:
ArchiFileWriter
Defined in:
lib/archimate/file_formats/serializer/archi/connection.rb

Instance Method Summary collapse

Instance Method Details

#serialize_connection(xml, connection) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/archimate/file_formats/serializer/archi/connection.rb', line 8

def serialize_connection(xml, connection)
  xml.sourceConnection(
    remove_nil_values(
      {
        "xsi:type" => connection.type,
        "id" => connection.id,
        "name" => connection.name
      }.merge(
        archi_style_hash(connection.style).merge(
          "source" => connection.source&.id,
          "target" => connection.target&.id,
          "relationship" => connection.relationship&.id
        )
      )
    )
  ) do
    serialize(xml, connection.bendpoints)
    serialize_documentation(xml, connection.documentation)
    serialize(xml, connection.properties)
  end
end