Storage { { Format 1.33 } { GeneratedFrom TSCD-version-2.20 } { WrittenBy vanrein } { WrittenOn "" } } Document { { Type "Statechart Diagram" } { Name workflow-dns-queuedzone-states.scd } { Author vanrein } { CreatedOn "" } { Annotation "" } { Hierarchy True } } Page { { PageOrientation Landscape } { PageSize A4 } { ShowHeaders False } { ShowFooters False } { ShowNumbers False } } Scale { { ScaleValue 1 } } # GRAPH NODES SDCDefaultState 1 { { Name "" } { Annotation "" } { Parent 0 } { Index "" } } SCDOrState 2 { { Name "Putting" } { Annotation "" } { Parent 0 } { Index "" } } SCDOrState 3 { { Name "Getting" } { Annotation "" } { Parent 0 } { Index "" } } SCDFinalState 4 { { Name "" } { Annotation "" } { Parent 0 } { Index "" } } SCDOrState 5 { { Name "Ready" } { Annotation "" } { Parent 0 } { Index "" } } Comment 6 { { Name "QUEUEDZONE STATE DIAGRAM" } { Annotation "" } { Parent 0 } { Index "" } } Note 7 { { Name "\rThis represents a zone in a Queue.\r\rQueues can hold many of those,\rbut at most one per domain in state\r[putting] and the total number\rin state [getting] is also at most\rone.\r\rThis diagram expresses how locking\rrelates to the states (and that\rtranslates to their links to the\rQueue).\r\rNote that that locks are not always\rnecessary in practice; they can be\roptimised away in cases where there\ris never any competition.\r" } { Annotation "" } { Parent 0 } { Index "" } } # GRAPH EDGES SCDTransitionEdge 8 { { Name "put.lock(z)" } { Annotation "" } { Parent 0 } { Subject1 1 } { Subject2 2 } } SCDTransitionEdge 9 { { Name "get.unlock(z)" } { Annotation "" } { Parent 0 } { Subject1 3 } { Subject2 4 } } SCDTransitionEdge 10 { { Name "put(z,?work[i++])" } { Annotation "" } { Parent 0 } { Subject1 2 } { Subject2 2 } } SCDTransitionEdge 11 { { Name "get.lock(z)" } { Annotation "" } { Parent 0 } { Subject1 5 } { Subject2 3 } } SCDTransitionEdge 12 { { Name "put.unlock(z)" } { Annotation "" } { Parent 0 } { Subject1 2 } { Subject2 5 } } SCDTransitionEdge 13 { { Name "get(z,work[--i])" } { Annotation "" } { Parent 0 } { Subject1 3 } { Subject2 3 } } # VIEWS AND GRAPHICAL SHAPES View 14 { { Index "0" } { Parent 0 } } BlackDot 15 { { View 14 } { Subject 1 } { Position 190 60 } { Size 8 8 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FillStyle Unfilled } { FillColor "white" } { FixedName True } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } RoundedBox 16 { { View 14 } { Subject 2 } { Position 190 150 } { Size 80 40 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FillStyle Unfilled } { FillColor "white" } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } RoundedBox 17 { { View 14 } { Subject 3 } { Position 190 360 } { Size 80 40 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FillStyle Unfilled } { FillColor "white" } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } BullsEye 18 { { View 14 } { Subject 4 } { Position 190 450 } { Size 20 20 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FillStyle Unfilled } { FillColor "white" } { FixedName True } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } Line 19 { { View 14 } { Subject 8 } { FromShape 15 } { ToShape 16 } { Curved False } { End1 Empty } { End2 FilledArrow } { Points 2 } { Point 190 64 } { Point 190 130 } { NamePosition 132 98 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } Line 20 { { View 14 } { Subject 9 } { FromShape 17 } { ToShape 18 } { Curved False } { End1 Empty } { End2 FilledArrow } { Points 2 } { Point 190 380 } { Point 190 440 } { NamePosition 126 410 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } Line 21 { { View 14 } { Subject 10 } { FromShape 16 } { ToShape 16 } { Curved True } { End1 Empty } { End2 FilledArrow } { Points 4 } { Point 230 135 } { Point 270 120 } { Point 270 180 } { Point 230 165 } { NamePosition 347 153 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } RoundedBox 22 { { View 14 } { Subject 5 } { Position 190 250 } { Size 80 40 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FillStyle Unfilled } { FillColor "white" } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } Line 23 { { View 14 } { Subject 11 } { FromShape 22 } { ToShape 17 } { Curved False } { End1 Empty } { End2 FilledArrow } { Points 2 } { Point 190 270 } { Point 190 340 } { NamePosition 134 306 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } Line 24 { { View 14 } { Subject 12 } { FromShape 16 } { ToShape 22 } { Curved False } { End1 Empty } { End2 FilledArrow } { Points 2 } { Point 190 170 } { Point 190 230 } { NamePosition 126 200 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } Line 25 { { View 14 } { Subject 13 } { FromShape 17 } { ToShape 17 } { Curved True } { End1 Empty } { End2 FilledArrow } { Points 4 } { Point 230 345 } { Point 270 330 } { Point 270 390 } { Point 230 375 } { NamePosition 343 362 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } TextBox 26 { { View 14 } { Subject 6 } { Position 660 50 } { Size 20 20 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FillStyle Unfilled } { FillColor "white" } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } } NoteBox 27 { { View 14 } { Subject 7 } { Position 680 230 } { Size 338 289 } { Color "black" } { LineWidth 1 } { LineStyle Solid } { FillStyle Unfilled } { FillColor "white" } { FixedName False } { Font "-*-courier-medium-r-normal--10*" } { TextAlignment Center } { TextColor "black" } { NameUnderlined False } }