Skip to content

ADR. Gestión de los puntos compartidos [POD]

Marcos Valín Fernández edited this page May 1, 2023 · 1 revision

Título

Gestión de los puntos compartidos con amigos del usuario en sesión de la aplicación.

Estado

Aceptado

Contexto

Para cumplir uno de los requisitos obligatorios, surge la necesidad de implementar funcionalidad que permita a los usuarios de la aplicación compartir puntos. Además, tenemos que cumplir con la exclusividad, es decir, un punto que sólo se ha compartido con un amigo no lo deben ver el resto de amigos del usuario en sesión.

Decisión

Teniendo como objetivo satisfacer este requisito, hemos decidido generar a la hora de compartir un punto una carpeta "sharedpoints" dentro de la carpeta "private" del pod del usuario. De esta forma, cuando el usuario añada un punto y seleccione los amigos con los que lo quiere compartir (en caso de quererlo compartir), se generarán tantas subcarpetas dentro de "sharedpoints" (con nombre el del amigo) como amigos con los que se vaya a compartir dicho punto. Al crear el punto y compartirlo con algún amigo, se añade simultáneamente al fichero "points.json" de la carpeta "private" del pod del usuario y al fichero "sharedPoints.json" de la subcarpeta correspondiente. Además, al añadirse a esta última se le conceden al amigo correspondiente permisos de lectura sobre dicho fichero. De esta forma, el correspondiente amigo del usuario en sesión podrá leer dicho punto y representarlo en su mapa.

Consecuencias

Tomando estas decisiones, conseguimos la exclusividad de la que hablábamos anteriormente. El ser amigo de un usuario no es condición suficiente para acceder a todos sus puntos compartidos. Se debe pertenecer a la lista de amigos seleccionada por el creador del punto en su momento.

Reuniones

Reuniones extraordinarias

Decisiones Arquitectónicas (ADR)

Clone this wiki locally