Ein Wrapper kapselt Funktionalität und Daten bestehender (nicht objektorientierter) Systeme in portablen und wartbaren Schnittstellen.

siehe: GitHub - ReadMe, GOF, PK

Klassendiagramm

Beispiel

Im Beispiel erwarten unsere modernen Clients CustomerInfo-Instanzen, mit denen das Altsystem nicht dienen kann.

Das Wrapper-Pattern ermöglicht hier, die nötigen Informationen aus dem Altsystem den Clients in passender Form (LegacyCustomerInfo) bereitzustellen.

Um das Zusammenspiel im Detail beobachten zu können, setzen Sie den log-level auf DEBUG in der logback.xml und führen den zugehörigen TestCase aus.

Ressourcen