Class DoctorJsonCodec

java.lang.Object
com.shaft.doctor.format.DoctorJsonCodec

public final class DoctorJsonCodec extends Object
Deterministic JSON codec for Doctor evidence, diagnosis, and reports.
  • Constructor Details

    • DoctorJsonCodec

      public DoctorJsonCodec()
      Creates the stable codec.
  • Method Details

    • write

      public String write(EvidenceBundle bundle)
      Serializes and validates an evidence bundle.
      Parameters:
      bundle - bundle to serialize
      Returns:
      stable JSON ending in a newline
    • write

      public String write(Diagnosis diagnosis)
      Serializes and validates a diagnosis.
      Parameters:
      diagnosis - diagnosis to serialize
      Returns:
      stable JSON ending in a newline
    • readBundle

      public EvidenceBundle readBundle(String json)
      Reads and validates evidence bundle JSON.
      Parameters:
      json - evidence JSON
      Returns:
      immutable bundle
    • readBundle

      public EvidenceBundle readBundle(Path path)
      Reads an evidence bundle file.
      Parameters:
      path - bundle path
      Returns:
      immutable bundle
    • write

      public void write(Path path, EvidenceBundle bundle)
      Writes a bundle atomically.
      Parameters:
      path - destination
      bundle - bundle
    • write

      public void write(Path path, Diagnosis diagnosis)
      Writes a diagnosis atomically.
      Parameters:
      path - destination
      diagnosis - diagnosis
    • writeReport

      public void writeReport(Path path, EvidenceBundle bundle, Diagnosis diagnosis)
      Writes the combined machine-readable report atomically.
      Parameters:
      path - destination
      bundle - evidence bundle
      diagnosis - diagnosis
    • writeReport

      public void writeReport(Path path, EvidenceBundle bundle, Diagnosis diagnosis, DoctorAdvisory advisory)
      Writes the combined report with a separately identified optional advisory.
      Parameters:
      path - destination
      bundle - evidence bundle
      diagnosis - deterministic diagnosis
      advisory - provider advisory or safe fallback