refectoring (Adapter Class)