Compatibilidad de base de datos con DPS v1
DPS v2 es compatible hacia atrás con v1, permitiéndole manejar configuraciones creadas con DPS v1 sin ninguna migración de base de datos. El módulo de compatibilidad puede deserializar la estructura de datos de la DB v1 a v2. Es necesario configurar DPS v2 con información sobre cómo convertir la estructura de datos de v1 a v2 para cada definición de configuración.
Un ejemplo de la configuración de compatibilidad puede verse aquí:
ipf.dps.settings.dpssample {
type-mapping {
from-type = "com.iconsolutions.ipf.dynamicsettings.repository.DpsSampleSettings",
to-type = "com.iconsolutions.ipf.dynamicsettings.v2.repository.mongo.entity.SettingDocumentV1",
payload-type = "com.iconsolutions.ipf.dynamicsettings.domain.DpsSample",
}
}
En este ejemplo, se configura para mapear:
-
el modelo específico de repositorio de v1
com.iconsolutions.ipf.dynamicsettings.repository.DpsSampleSettings -
al modelo de repositorio de compatibilidad v1 (que ya no es específico de la configuración y se usa para todas las configuraciones de v1)
com.iconsolutions.ipf.dynamicsettings.v2.repository.mongo.entity.SettingDocumentV1 -
el payload de la configuración se mapea a la clase de definición de la configuración (que puede seguir siendo la misma que solía ser)
com.iconsolutions.ipf.dynamicsettings.domain.DpsSample