Modify a design pattern "Adapter"