Interface TrackerSource

All Known Implementing Classes:
ApiContractTrackerSource, GherkinScenarioTrackerSource, ResponseCoverageTrackerSource

public interface TrackerSource
Reads a producing plugin's NDJSON lifecycle-history file into LifecycleRecords.

Each implementation hand-parses the known, fixed NDJSON shape of one specific producing plugin directly - this module has no code dependency on any producing plugin, so nothing here shares a class with, say, gherkin-to-asciidoc's own history record. A third implementation can be added later (for a new kind of tracked history) purely by implementing this interface and, if it should be selectable from the trackerLens DSL, adding a corresponding constant to TrackerSourceKind - nothing else in this module needs to change, since GenerateTrackerLensTask and the dashboard renderer only ever operate on this interface and on LifecycleRecord.

  • Method Details

    • read

      List<LifecycleRecord> read(File historyFile)
      Reads historyFile and returns the LifecycleRecords it contains.
      Parameters:
      historyFile - the NDJSON history file; guaranteed by the caller to exist
      Returns:
      the parsed records; a line that fails to parse is skipped rather than failing the read