From 374cb4c0df7d65dcf1ab29326ae1256858fda855 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ilkka=20Sepp=C3=A4l=C3=A4?= Date: Fri, 24 May 2024 12:20:18 +0300 Subject: [PATCH] docs: update acl --- anti-corruption-layer/README.md | 4 ++++ .../etc/anti-corruption-layer.urm.png | Bin 0 -> 32606 bytes 2 files changed, 4 insertions(+) create mode 100644 anti-corruption-layer/etc/anti-corruption-layer.urm.png diff --git a/anti-corruption-layer/README.md b/anti-corruption-layer/README.md index 19eefd980..2a436a6ef 100644 --- a/anti-corruption-layer/README.md +++ b/anti-corruption-layer/README.md @@ -129,6 +129,10 @@ public class LegacyShop { } ``` +## Class diagram + +![Anti-Corruption Layer](./etc/anti-corruption-layer.urm.png "Anti-Corruption Layer class diagram") + ## Applicability Use this pattern when: diff --git a/anti-corruption-layer/etc/anti-corruption-layer.urm.png b/anti-corruption-layer/etc/anti-corruption-layer.urm.png new file mode 100644 index 0000000000000000000000000000000000000000..96e432121e7e2ae0ffa4ccd26a491e12efca1f58 GIT binary patch literal 32606 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