Ho un'app che raccoglie punti dati per tutto il giorno.
Ogni punto dati è memorizzato in una tabella DataPoint
(che è persistente nella tabella DATA_POINTS
).
Ho anche un DataPointRepository
con operazioni CRUD di base, ma anche metodi per ottenere valori medi, min e amp; max datapoint.
Alla fine di ogni giornata voglio comprimere i dati in DATA_POINTS
in un'entità DataPointsDay
che contenga solo i valori medio, massimo e minimo, quindi la persistono nella tabella DATA_POINTS_DAYS
.
(Ma per il giorno corrente voglio anche essere in grado di recuperare l'oggetto DataPointsDay
in qualsiasi momento senza persisterlo ancora)
Quale è un buon modo per farlo? Inizialmente volevo passare DataPointsRepository
al costruttore DataPointsDay
, ma presumo che viola l'architettura pulita in quanto l'entità non dovrebbe conoscere il repository?
Avrebbe senso creare un DataPointsDayFactory
in modo che io possa ottenere l'oggetto in qualsiasi momento, e anche un CreateDataPointsDayInteractor
che crea l'oggetto DataPointsDay
e poi lo persiste nel database?