635 lines
20 KiB
XML
635 lines
20 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<java version="1.6.0" class="java.beans.XMLDecoder">
|
|
<object class="com.horstmann.violet.ClassDiagramGraph">
|
|
<void method="addNode">
|
|
<object class="com.horstmann.violet.PackageNode">
|
|
<void method="addChild">
|
|
<object id="InterfaceNode0" class="com.horstmann.violet.InterfaceNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>«interface»
|
|
BurnSource</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void property="name">
|
|
<string>libburn</string>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>600.0</double>
|
|
<double>50.0</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object idref="InterfaceNode0"/>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>612.4370214406964</double>
|
|
<double>81.3237865499184</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode0" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>Ecma119Source</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>604.1172144213822</double>
|
|
<double>242.59825146055505</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode1" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>WriterState</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>861.1034292438676</double>
|
|
<double>244.31119796826698</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode2" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>FilesWriterSt</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>984.2531292100068</double>
|
|
<double>359.95094883087904</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode3" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>VolDescWriterSt</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>717.2457054234224</double>
|
|
<double>357.4185959653686</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode4" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>DirInfoWriterSt</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>854.6043620021998</double>
|
|
<double>355.85097462036043</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode5" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>Ecma119Image</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>392.3294860655768</double>
|
|
<double>240.39714472372754</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="NoteNode0" class="com.horstmann.violet.NoteNode">
|
|
<void property="text">
|
|
<void property="text">
|
|
<string>The context data for image burn sources, contains
|
|
references to the tree, creation options...</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>261.45257180386454</double>
|
|
<double>85.80450046553075</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode6" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>Ecma119Node</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>291.8219414851778</double>
|
|
<double>612.806815288254</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="InterfaceNode1" class="com.horstmann.violet.InterfaceNode">
|
|
<void property="methods">
|
|
<void property="text">
|
|
<string>init()
|
|
write_voldesc()
|
|
write_dir_info()</string>
|
|
</void>
|
|
</void>
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>«interface»
|
|
ImageWriter</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>401.9520048709197</double>
|
|
<double>344.8700633507891</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode7" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>JolietNode</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>409.0872475609359</double>
|
|
<double>614.8200784564067</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode8" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>FileRegistry</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>718.2810974616434</double>
|
|
<double>459.0339463910502</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode9" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>Ecma119Writer</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>273.51763645062584</double>
|
|
<double>489.95333138112096</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode10" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>JolietWriter</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>404.3304191009253</double>
|
|
<double>485.1965029211101</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode11" class="com.horstmann.violet.ClassNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>ElToritoWriter</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>512.5482665661723</double>
|
|
<double>485.19650292111</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="ClassNode12" class="com.horstmann.violet.ClassNode">
|
|
<void property="attributes">
|
|
<void property="text">
|
|
<string>size : off_t
|
|
block : uint32_t</string>
|
|
</void>
|
|
</void>
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>IsoFile</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>720.659511691649</double>
|
|
<double>568.4410009713001</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="InterfaceNode2" class="com.horstmann.violet.InterfaceNode">
|
|
<void property="name">
|
|
<void property="text">
|
|
<string>«interface»
|
|
Stream</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>909.7434429770816</double>
|
|
<double>580.3330721213274</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="NoteNode1" class="com.horstmann.violet.NoteNode">
|
|
<void property="text">
|
|
<void property="text">
|
|
<string>ImageWriter goal is to encapsulate the output
|
|
of image blocks related to one "specification",
|
|
i.e. we will have an implementation for ECMA-119/RR,
|
|
other for Joliet...
|
|
|
|
Note that having different implementations for things that
|
|
need to be written in the same block has no utility, i.e. RR
|
|
and ECMA-119 must share its Writer implementation.
|
|
|
|
Note also that while this provides considerable encapsulation
|
|
the provided abstraction is really partial: In the relation
|
|
with WriterState the encapsulation is quite good, each
|
|
concrete state know what method to call here (notice that
|
|
this interface is also quite coupled with state). However,
|
|
with respect to Ecma119Image the abstration only refers
|
|
to implementation, as the Ecma119Image needs to know
|
|
about the ImageWriter implementations. This can't be
|
|
avoided, as Ecma119Image has to be responsible of the
|
|
instantation in the correct order and following the user
|
|
needs.
|
|
|
|
</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>2.3784142300054896</double>
|
|
<double>160.54296052536733</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="NoteNode2" class="com.horstmann.violet.NoteNode">
|
|
<void property="text">
|
|
<void property="text">
|
|
<string>The files are registered into the file registry, that will take care
|
|
about the written of content.</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>286.59891471565567</double>
|
|
<double>708.7674405416217</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="addNode">
|
|
<object id="NoteNode3" class="com.horstmann.violet.NoteNode">
|
|
<void property="text">
|
|
<void property="text">
|
|
<string>Each state will invoque property method in each of
|
|
the ImageWriters. Some writers can return without
|
|
outputting anything. It is possible that when dealing
|
|
with UDF or other specification we would need new
|
|
states and methods in ImageWriter</string>
|
|
</void>
|
|
</void>
|
|
</object>
|
|
<object class="java.awt.geom.Point2D$Double">
|
|
<void method="setLocation">
|
|
<double>765.8493820617523</double>
|
|
<double>132.001989765302</double>
|
|
</void>
|
|
</object>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="VHV"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="TRIANGLE"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode0"/>
|
|
<object idref="InterfaceNode0"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="VHV"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="TRIANGLE"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode3"/>
|
|
<object idref="ClassNode1"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="VHV"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="TRIANGLE"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode4"/>
|
|
<object idref="ClassNode1"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="VHV"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="TRIANGLE"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode2"/>
|
|
<object idref="ClassNode1"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="HVH"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="V"/>
|
|
</void>
|
|
<void property="startArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="DIAMOND"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode0"/>
|
|
<object idref="ClassNode1"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.NoteEdge"/>
|
|
<object idref="ClassNode5"/>
|
|
<object idref="NoteNode0"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="V"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode0"/>
|
|
<object idref="ClassNode5"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="VHV"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="TRIANGLE"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode10"/>
|
|
<object idref="InterfaceNode1"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="VHV"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="TRIANGLE"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode9"/>
|
|
<object idref="InterfaceNode1"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="VHV"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="TRIANGLE"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode11"/>
|
|
<object idref="InterfaceNode1"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="HVH"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="V"/>
|
|
</void>
|
|
<void property="endLabel">
|
|
<string>*</string>
|
|
</void>
|
|
<void property="startArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="BLACK_DIAMOND"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode5"/>
|
|
<object idref="InterfaceNode1"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="HVH"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="V"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode9"/>
|
|
<object idref="ClassNode6"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="HVH"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="V"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode10"/>
|
|
<object idref="ClassNode7"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="HVH"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="V"/>
|
|
</void>
|
|
<void property="endLabel">
|
|
<string>*</string>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode8"/>
|
|
<object idref="ClassNode12"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="HVH"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="V"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode12"/>
|
|
<object idref="InterfaceNode2"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="V"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode5"/>
|
|
<object idref="ClassNode8"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="bentStyle">
|
|
<object class="com.horstmann.violet.BentStyle" field="VH"/>
|
|
</void>
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="V"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="ClassNode2"/>
|
|
<object idref="ClassNode8"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.ClassRelationshipEdge">
|
|
<void property="endArrowHead">
|
|
<object class="com.horstmann.violet.ArrowHead" field="V"/>
|
|
</void>
|
|
<void property="lineStyle">
|
|
<object class="com.horstmann.violet.LineStyle" field="DOTTED"/>
|
|
</void>
|
|
</object>
|
|
<object idref="InterfaceNode1"/>
|
|
<object idref="ClassNode8"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.NoteEdge"/>
|
|
<object idref="InterfaceNode1"/>
|
|
<object idref="NoteNode1"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.NoteEdge"/>
|
|
<object idref="ClassNode6"/>
|
|
<object idref="NoteNode2"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.NoteEdge"/>
|
|
<object idref="ClassNode7"/>
|
|
<object idref="NoteNode2"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.NoteEdge"/>
|
|
<object idref="ClassNode8"/>
|
|
<object idref="NoteNode2"/>
|
|
</void>
|
|
<void method="connect">
|
|
<object class="com.horstmann.violet.NoteEdge"/>
|
|
<object idref="ClassNode1"/>
|
|
<object idref="NoteNode3"/>
|
|
</void>
|
|
</object>
|
|
</java>
|