topologyWriter.ts writes konfiguration.xml from Java's view of a project: the version line, the node items (label position, device with name, host label flags, interfaces or ports), the cable items and the documentation items. What a device's constructor makes is changed through getters, as XMLEncoder does, and more is added; fewer than it makes set the list anew. Cable ends name the port objects the getters return (the writer now names a getter's result, <void id="Port0" property="port"/>), and each cable carries the nodes the editor draws it between. Checked by Java against Java: every corpus file, read and written again, loads in Java FILIUS (the oracle's loading method, --sha256 ties its result to the written bytes) to the same devices, names, positions, interfaces, cables and documentation as the original; so does a synthetic topology with what the corpus never sets. The oracle and the reader now also report a cable's drawing ends (JCablePanel ziel1/ziel2): in the corpus the nodes it joins, for all 183 cables. Mutation probes rewrite the files and let Java load each mutant. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
17 lines
412 B
XML
17 lines
412 B
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<java version="17" class="java.beans.XMLDecoder">
|
|
<object class="java.util.LinkedList">
|
|
<void method="add">
|
|
<object class="filius.hardware.NetzwerkInterface">
|
|
<void property="ip">
|
|
<string>10.0.0.1</string>
|
|
</void>
|
|
<void id="Port0" property="port"/>
|
|
</object>
|
|
</void>
|
|
<void method="add">
|
|
<object idref="Port0"/>
|
|
</void>
|
|
</object>
|
|
</java>
|