Adapter pattern example