Class Statistics

java.lang.Object
epidemic.statistics.Statistics
All Implemented Interfaces:
Observer

public class Statistics extends Object implements Observer
Główny, stanowy agregator logów telemetrycznych i statystycznych. Implementuje interfejs Observer, dzięki czemu automatycznie subskrybuje i archiwizuje migawki środowiska (EpochData) po zakończeniu każdego kroku symulacji. Udostępnia również wbudowane mechanizmy eksportu zebranych danych do formatów analitycznych.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private List<EpochData>
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    Inicjalizuje pusty agregator gotowy do zbierania danych telemetrycznych.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    exportToCSV(String filename)
    Eksportuje zebraną dotychczas historię symulacji do płaskiego pliku w formacie CSV.
    Pobiera całą wewnętrzną kolekcję zebranych danych analitycznych.
    void
    Odbiera zjawisko (event) z silnika i odkłada nową paczkę danych na koniec wewnętrznej listy historycznej.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • Statistics

      public Statistics()
      Inicjalizuje pusty agregator gotowy do zbierania danych telemetrycznych.
  • Method Details

    • update

      public void update(EpochData data)
      Odbiera zjawisko (event) z silnika i odkłada nową paczkę danych na koniec wewnętrznej listy historycznej.
      Specified by:
      update in interface Observer
      Parameters:
      data - Struktura danych reprezentująca podsumowanie właśnie zakończonej epoki.
    • exportToCSV

      public void exportToCSV(String filename)
      Eksportuje zebraną dotychczas historię symulacji do płaskiego pliku w formacie CSV. Używa bezpiecznych bloków try-with-resources do zarządzania strumieniem wejścia/wyjścia (I/O), a ewentualne wyjątki związane z brakiem uprawnień do zapisu są logowane do strumienia błędów.
      Parameters:
      filename - Ścieżka (np. wygenerowana przez FileExportService) do pliku docelowego.
    • getHistory

      public List<EpochData> getHistory()
      Pobiera całą wewnętrzną kolekcję zebranych danych analitycznych.
      Returns:
      Uporządkowana chronologicznie lista zarchiwizowanych epok.