Для первой части вам необходимо изолировать взаимодействие API стороннего поставщика базы данных в своем собственном объекте, чтобы информация, относящаяся к стороннему API, не просачивалась где-либо еще в коде.Используйте DAO, чтобы убедиться в этом и убедиться, что все взаимодействия, связанные с базой данных, представлены на этом уровне как обычные методы, т. Е. Не зависят от поставщика.
Что касается второй части, что вы намереваетесь делать с возвращенным объектом;вероятно, перебрать их.Таким образом, вы должны обернуть их в объект, такой как объект Response, который вы упомянули.Объект, который оборачивает возвращаемый объект, должен обеспечивать стандартный / непротиворечивый способ выполнения операций (например, он может предоставлять итератор для обернутого объекта, чтобы пользователь мог выполнять итерации в независимом от возвращаемого типа порядке).