Реализована в виде фабрики провайдеров. Каждый провайдер оснащен своей моделью. При обращении к стороннему сервису при помощи его провайдера сохраняем параметры запроса моделью в базу, после сохраняем параметры ответа.
Методами провайдера обеспечивается доступ к этим данным, извне экстеншена с ними никто не работает.
В Yii первом это было проще реализовать: фабрика подключала нужный файл провайдера и генерила его класс, в котором подключали его модель, и компановка файлов была следующей
Код: Выделить всё
\extensions
\pvrovext
\providers
interface.php
abstract.php
provider1.php
......
......
\models
prov1model.php
......
......
Provext.php
Очень путает то что в основном файле нужно объявлять через неймспейсы сразу все провайдеры, может просто что-то пропустил?