-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathcapability-negotiation-light.dot
More file actions
74 lines (66 loc) · 2.05 KB
/
capability-negotiation-light.dot
File metadata and controls
74 lines (66 loc) · 2.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
// Capability negotiation sequence (light variant). §6.2 intersection rule.
digraph CapabilityNegotiation {
rankdir=LR;
bgcolor="transparent";
compound=true;
fontname="TT Commons Pro Trial";
splines=spline;
nodesep=0.40;
ranksep=0.70;
pad="0.35,0.25";
node [
shape=box,
style="rounded,filled",
fillcolor="white",
color="#CBD5E1",
fontname="TT Commons Pro Trial",
fontsize=11,
fontcolor="#1F2937",
margin="0.22,0.11",
penwidth=1.0
];
edge [
fontname="TT Commons Pro Trial",
fontsize=9,
fontcolor="#64748B",
color="#94A3B8",
penwidth=1.1,
arrowsize=0.75,
arrowhead=vee
];
Client [
label=<<FONT POINT-SIZE="12"><B>ArcpClient</B></FONT>>,
fillcolor="#3B82F6", color="#2563EB",
fontcolor="white", penwidth=1.4
];
subgraph cluster_runtime {
label=<<TABLE BORDER="0" CELLBORDER="0" CELLPADDING="0" CELLSPACING="0"><TR><TD COLSPAN="3" HEIGHT="8"></TD></TR><TR><TD WIDTH="8"></TD><TD><FONT POINT-SIZE="12"><B>ArcpRuntime</B></FONT></TD><TD WIDTH="8"></TD></TR></TABLE>>;
style="rounded,filled";
fillcolor="#F1F5F9";
color="#E2E8F0";
fontname="TT Commons Pro Trial";
fontcolor="#475569";
margin=14;
labeljust=l;
penwidth=1.0;
Verifier [label="BearerVerifier"];
Negotiator [
label=<<FONT POINT-SIZE="12"><B>Capabilities.intersect</B></FONT>>,
fillcolor="#F59E0B", color="#D97706",
fontcolor="white", penwidth=1.4
];
}
Outcome [
label=<<FONT POINT-SIZE="10">Session</FONT><BR/><FONT POINT-SIZE="8" COLOR="#94A3B8">negotiatedFeatures</FONT>>,
shape=cylinder, fillcolor="#FAFBFC"
];
edge [color="#64748B", penwidth=1.2];
Client -> Verifier [label="session.hello\nauth + features[]\n§6.1 / §6.2"];
Verifier -> Negotiator [label="Principal accepted"];
Negotiator -> Client [label="session.welcome\nfeatures[] + agents[]\n§6.2"];
edge [style=dashed, color="#F472B6", penwidth=1.1, constraint=false];
Negotiator -> Outcome [
label=<<FONT COLOR="#DB2777">Set<Feature></FONT>>,
fontsize=9
];
}