Skip to content

Conversation

@gastonpereyra
Copy link
Contributor

JCN-151-OBTENER-DATABASE-DE-UN-CLIENTE
JCN 153 obtener database de un cliente

LINK AL TICKET
https://fizzmod.atlassian.net/browse/JCN-153

DESCRIPCIÓN DEL REQUERIMIENTO
1.1. Agregar método getDatabaseByClient() que reciba un object client, el boolean opcional useReadDB y prepare la config.

1.2. Eliminar la validación actual de la config (campos type, host, database)

1.3. Para poder definir qué Driver de DB utilizar, se deberán leer 2 nuevas settings del MS: databaseWriteType y databaseReadType, siendo databaseReadType opcional (utilizar databaseWriteType como databaseReadType)

1.4. Se deberá seguir leyendo y validando el campo type para las configs que existan en las settings database (caso de uso para las DB core, que definen su type), en caso de no encontrar ese type,. utilizar de default lo definido en el punto 1.3.

1.5. Eliminar Drivers hardcodeados y dejar libre a cualquier type futuro.

1.6. Se deberá realizar un nuevo mapeo de campos para obtener la configuración que cada db driver necesita.

1.6.1. Agregar settings clients.database.fields.write y clients.database.fields.read (opcional) como un objects que tengan los nombres de los campos que están en los clientes y que el driver necesita para configurarse. Esto se hace para continuar teniendo libertad de configuración.

1.6.2. clients.database.fields.write y clients.database.fields.read serán objects, en las keys estarán los campos que deben estar presentes en cada object client y en los values, el nombre del campo de configuración que necesita el DB Driver.

1.7. Eliminar posibilidad de configurar DB en variables de entorno.

DESCRIPCIÓN DE LA SOLUCIÓN
Se realizaron los requerimientos solicitados. Se eliminó la posibilidad de obtener los Drivers desde las variables de entorno, y los drivers hardcodeados, asi como las validaciones de database y host. Se agregó la posiblidad de obtener un Driver por Cliente, para escritura (siendo la posiblidad default) y lectura, y un mappeo de campos del cliente para armar las configuraciones. Se cambió la forma de cachear instancias pasando a usar MD5.

@Nataniel4 Nataniel4 requested a review from juanhapes September 11, 2019 16:27
@juanhapes juanhapes merged commit 1d31181 into master Sep 11, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants