Class CaptureJsonCodec

java.lang.Object
com.shaft.capture.format.CaptureJsonCodec

public final class CaptureJsonCodec extends Object
Stable human-readable JSON codec with schema validation and migration.
  • Constructor Details

    • CaptureJsonCodec

      public CaptureJsonCodec()
      Creates the default deterministic codec.
  • Method Details

    • write

      public String write(CaptureSession session)
      Serializes and validates a current capture session.
      Parameters:
      session - session to serialize
      Returns:
      stable JSON ending with a newline
    • read

      public CaptureSession read(String json)
      Reads, migrates, validates, and deserializes capture JSON.
      Parameters:
      json - capture JSON
      Returns:
      current immutable session
    • read

      public CaptureSession read(Path path)
      Reads a capture file.
      Parameters:
      path - capture path
      Returns:
      current immutable session
    • write

      public void write(Path path, CaptureSession session)
      Validates and atomically writes a capture file.
      Parameters:
      path - destination path
      session - session to write
    • validate

      public void validate(com.fasterxml.jackson.databind.JsonNode tree)
      Validates a current-schema JSON tree.
      Parameters:
      tree - capture tree