The ADAPTER Pattern
Context
- You want to use an existing class (adaptee) without modifying it.
- The context in which you want to use the class requires target
interface that is different from that of the adaptee.
- The target interface and the adaptee interface are conceptually
related.