mirror of
https://github.com/alexhopeoconnor/bom-local-service.git
synced 2026-10-22 01:02:07 +10:00
Fix frame deduplication and chronological ordering in time series endpoint
- Fix scraping to wait for display label to change after step forward, preventing duplicate minutesAgo values within same folder - Add hashset-based deduplication by AbsoluteObservationTime across cache folders - Filter frames that are too close together (< 4 minutes apart) - Preserve original folder structure while pruning filtered frames - Sort folders by earliest frame time to maintain chronological order - Add validation to detect folder overlaps that could cause out-of-order frames
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
namespace BomLocalService.Models;
|
||||
|
||||
/// <summary>
|
||||
/// Base model representing a single cached frame image.
|
||||
/// Extended by type-specific frame models (RadarFrame, etc.).
|
||||
/// </summary>
|
||||
public class CachedFrame
|
||||
{
|
||||
/// <summary>
|
||||
/// Frame index within the frameset (0-based).
|
||||
/// </summary>
|
||||
public int FrameIndex { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Full file system path to the frame image file (server-side only).
|
||||
/// </summary>
|
||||
public string ImagePath { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// URL endpoint to retrieve this frame image.
|
||||
/// </summary>
|
||||
public string ImageUrl { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// The data type this frame belongs to.
|
||||
/// </summary>
|
||||
public CachedDataType DataType { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user