Files
inventorym/Api/uml/classdiagram.dot

79 lines
1.8 KiB
Plaintext
Raw Normal View History

2025-10-26 22:43:30 -04:00
digraph ClassDiagram {
// Graph attributes
graph [
rankdir="BT",
splines=ortho,
fontname="Arial"
];
node [
fontname="Arial",
fontsize=10,
shape=record,
style=filled,
fillcolor=lightyellow
];
edge [
fontname="Arial",
fontsize=9
];
// --- Clusters for Packages ---
subgraph cluster_edu_inventorym {
label="edu.inventorym";
style=filled;
color=lightgrey;
node [style=filled, color=white];
Api [
label="{class Api|+ main(String[]): void\l+ callerInterface(): void\l}"
];
App [
label="{class App|+ main(String[]): void\l- routing(HttpRouting.Builder): void\l}"
];
RpcDeserializer [
label="{class RpcDeserializer|+ main(String[]): void\l+ mapJsonToObjectList(String, Class<T>): List<T>\l}"
];
}
subgraph cluster_edu_inventorym_model {
label="edu.inventorym.model";
style=filled;
color=lightgrey;
node [style=filled, color=white];
InventoryPiece [
// Inferred from RpcDeserializer.java
label="{interface\n«InventoryPiece»|+ getId(): int\l}"
];
Drawing [
// Inferred from RpcDeserializer.java
label="{class Drawing|+ getId(): int\l}"
];
}
// --- Relationships ---
// Inheritance (Drawing implements InventoryPiece)
InventoryPiece -> Drawing [
arrowhead=empty,
style=dashed,
label="implements"
];
// Associations (Dependencies)
RpcDeserializer -> Drawing [
arrowhead=vee,
style=dashed,
label="uses"
];
RpcDeserializer -> InventoryPiece [
arrowhead=vee,
style=dashed,
label="uses"
];
}