From 21914f9c88090a2d64885e12024d70dca179b09b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ilkka=20Sepp=C3=A4l=C3=A4?= Date: Sat, 12 Apr 2025 09:23:46 +0300 Subject: [PATCH] docs: updated diagrams for tolerant reader and trampoline --- tolerant-reader/README.md | 4 ++++ .../etc/tolerant-reader-sequence-diagram.png | Bin 0 -> 60131 bytes trampoline/README.md | 4 ++++ trampoline/etc/trampoline-flowchart.png | Bin 0 -> 52667 bytes 4 files changed, 8 insertions(+) create mode 100644 tolerant-reader/etc/tolerant-reader-sequence-diagram.png create mode 100644 trampoline/etc/trampoline-flowchart.png diff --git a/tolerant-reader/README.md b/tolerant-reader/README.md index 720764214..a6c21a64a 100644 --- a/tolerant-reader/README.md +++ b/tolerant-reader/README.md @@ -33,6 +33,10 @@ In plain words > Be conservative in what you do, be liberal in what you accept from others. +Sequence diagram + +![Tolerant Reader sequence diagrams](./etc/tolerant-reader-sequence-diagram.png) + ## Programmatic Example of Tolerant Reader Pattern in Java We are persisting `RainbowFish` objects to file. Later on they need to be restored. What makes it problematic is that `RainbowFish` data structure is versioned and evolves over time. New version of `RainbowFish` needs to be able to restore old versions as well. diff --git a/tolerant-reader/etc/tolerant-reader-sequence-diagram.png b/tolerant-reader/etc/tolerant-reader-sequence-diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..26e68ccffcaf20dc977eae0a7a70b98ed9576a30 GIT binary patch literal 60131 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≪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 r@`eLeg20sk)l0!SuySS)s{c_R`me=ey literal 0 HcmV?d00001 diff --git a/trampoline/README.md b/trampoline/README.md index cb4162baf..706b58d24 100644 --- a/trampoline/README.md +++ b/trampoline/README.md @@ -36,6 +36,10 @@ Wikipedia says > In Java, trampoline refers to using reflection to avoid using inner classes, for example in event listeners. The time overhead of a reflection call is traded for the space overhead of an inner class. Trampolines in Java usually involve the creation of a GenericListener to pass events to an outer class. +Flowchart + +![Trampoline Pattern Flowchart](./etc/trampoline-flowchart.png) + ## Programmatic Example of Trampoline Pattern in Java Here's the `Trampoline` implementation in Java. diff --git a/trampoline/etc/trampoline-flowchart.png b/trampoline/etc/trampoline-flowchart.png new file mode 100644 index 0000000000000000000000000000000000000000..99387567ba1648f10f1ba8038d3590d8ef75195e GIT binary patch literal 52667 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 h%%@%7{~oCXzB>o0YJC|S9)$t^6l7GSD