// JGraLab - The Java graph laboratory
//   Version : unknown
//   Revision: unknown

TGraph 2;
Schema de.uni_koblenz.statemachine.StateMachineSchema;
GraphClass StateMachine;
VertexClass State { name: String };
EdgeClass Transition from State (0,*) role src to State (0,*) role dst { action: String,  trigger: String };
Graph "c1ff8fb0-a298bd03-8a335d70-73206f60" 85 StateMachine (500 500 11 21);
Package ;
1 State <-4 7 -11 -15> "TimeWait";
2 State <-2 12> "CloseWait";
3 State <-3 5 6 -7 -8 -16> "Closed";
4 State <1 2 -10 -20> "Established";
5 State <-5 16 17 18 -21> "Listen";
6 State <11 -14> "Closing";
7 State <3 -12> "LastAck";
8 State <-1 13 14 15 -19> "FinWait1";
9 State <4 -13> "FinWait2";
10 State <-9 -18 19 20 21> "SynReceived";
11 State <-6 8 9 10 -17> "SynSent";
1 Transition "FIN" "close";
2 Transition "ACK" "FIN";
3 Transition "--" "ACK";
4 Transition "ACK" "FIN";
5 Transition "--" "listen";
6 Transition "SYN" "connect";
7 Transition "--" "TimeoutException";
8 Transition "--" "close";
9 Transition "SYN_ACK" "SYN";
10 Transition "ACK" "SYN_ACK";
11 Transition "--" "ACK";
12 Transition "FIN" "close";
13 Transition "--" "ACK";
14 Transition "ACK" "FIN";
15 Transition "ACK" "FIN_ACK";
16 Transition "--" "close";
17 Transition "SYN" "send";
18 Transition "SYN_ACK" "SYN";
19 Transition "FIN" "close";
20 Transition "--" "ACK";
21 Transition "--" "RST";
