LucaFalasca / Bus4You

1 stars 0 forks source link

Create a service with the role of mediator between other services and the mysql container #71

Closed matteo-conti-97 closed 1 year ago

matteo-conti-97 commented 1 year ago

US: #27

Descrizione: Creare un servizio che si occupa di mediare la comunicazione tra il container che contiene il database mysql e gli altri servizi che di loro non hanno la responsabilità di interagire molto con il db, come ad esempio il gateway api, altri servizi come il login service comunicano direttamente con il db perchè rientra nel loro scope di base

matteo-conti-97 commented 1 year ago

Creato il servizio che si occupa della comunicazione con il db, creato il dockerfile per il build di tale servizio, modificato il docker-compose.yml per aggiungere tale servizio. Il servizio attualmente ha una dao che esegue due store procedures su db, una per prendere la lista delle fermate ed una per prendere dati sugli itinerari richiesti assuciati all'utente, al percorso a cui appartengono tali itinerari e le fermate associati a tali itinerari, in particolare vengono presi costo itinerario, orario partenza proposto, orario arrivo proposto, stato itinerario proposto, flag percorso passato, stato percorso, scadenza, nome fermata partenza, nome fermata arrivo. Le funzionalità di tale servizio sono esposte tramite rpc python, per aggiungere nuove funzionalità occorre definire una nuova stored procedure sul database (opzionale se si sceglie di utilizzare un prepared statement), definire una funzione nella dao per fare la richiesta su db, definire una funzione che viene esportata tramite rpc che invoca la nuova funzione definita nella dao.