• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

java/H03-May-2022-635461

lib/H11-Sep-2007-3,1651,745

samples/H03-May-2022-654577

t/H03-May-2022-1,029866

ChangesH A D11-Sep-20073.6 KiB8570

MANIFESTH A D24-Jan-20061.5 KiB7877

META.ymlH A D11-Sep-2007425 1412

Makefile.PLH A D22-Jan-20062.8 KiB9883

READMEH A D24-Jan-20062.6 KiB9365

genericseq.sourceH A D22-Jan-20061.3 KiB6040

seq2rast.sourceH A D22-Jan-2006235 179

seq2svg.sourceH A D22-Jan-2006210 179

README

1UML::Sequence and its helpers produce UML sequence diagrams (they are probably
2not compliant with any of the UML specifications, but I find them useful).
3
4INSTALL
5
6Do the standard things:
7    perl Makefile.PL
8    make
9    make test
10    make install
11    make clean
12
13COPYRIGHT and LICENSE
14
15Copyright 2003-6, Philip Crow.  All rights reserved.  You may distribute
16and/or modify these programs under the same terms as Perl 5.8 itself.
17
18DESCRIPTION
19
20There are samples in the samples directory in the distribution.  The
21samples have the code and pictures (in svg and png formats).
22
23Simple Sequences
24
25You can create a sequence from an outline.  Type something like this:
26
27At Home.Wash Car
28    Garage.retrieve bucket
29    Kitchen.prepare bucket
30        Kitchen.pour soap in bucket
31        Kitchen.fill bucket
32    Garage.get sponge
33    Garage.open door
34    Driveway.apply soapy water
35    Driveway.rinse
36    Driveway.empty bucket
37    Garage.close door
38    Garage.replace sponge
39    Garage.replace bucket
40
41Then do this (to generate SVG output):
42
43    genericseq.pl UML::Sequence::SimpleSeq inputfile | seq2svg.pl > output.svg
44
45or this (to generate raster image output, e.g., PNG):
46
47    genericseq.pl UML::Sequence::SimpleSeq inputfile | seq2rast.pl > output.png
48
49Perl Sequences
50
51To produce sequences of Perl programs, first make a list of the methods
52you care about like this:
53
54    DiePair::new
55    Die::new
56    DiePair::roll
57    Die::roll
58    DiePair::total
59    DiePair::doubles
60    DiePair::to_string
61
62Then do this:
63
64    genericseq.pl UML::Sequence::PerlSeq method_file program args | seq2svg.pl > output.svg
65
66Java Sequences
67
68You must have tools.jar in your classpath.  It must contain the Java Platform
69Debugger Architecture.  The stars must properly align.  Then make a file
70of classes (or methods) you want to hear about, like this:
71
72    ALL
73    Hello
74    HelloHelper
75
76The ALL means all methods.  The other lines are classes.  All the methods from
77those classes will appear in the diagram.  To restrict the list of methods,
78include full signatures.
79
80After you make the methods file, do this:
81
82    genericseq.pl UML::Sequence::JavaSeq method_file program args | seq2svg.pl > output.svg
83
84For this to work, you must have Seq.class from the distribution and tools.jar
85from sdk 1.3 or later in your java_home/lib directory.  I also found that
86when my Linux system is not on the network, the Java Platform Debugger
87Architecture (jpda) didn't want to run.
88
89To build your own outliner, implement the same methods as
90UML::Sequence::SimpleSeq.pm.  Then use genericseq.pl and seq2svg.pl.
91
92Please send questions or comments to Phil Crow at philcrow2000@yahoo.com.
93