Class RequestTimeline

  • All Implemented Interfaces:
    Iterable<RequestTimeline.Event>

    public final class RequestTimeline
    extends Object
    implements Iterable<RequestTimeline.Event>
    Represents the time and duration of important events in the lifetime of a request.

    A RequestTimeline represents a timeline as a sequence of RequestTimeline.Event instances with name, time, and duration properties. Hence, one might use this class to represent any timeline.

    A RequestTimeline serializes to JSON as an array of RequestTimeline.Event instances. This is the default serialization for any class that implements Iterable.

    Example:

    OffsetDateTime startTime = OffsetDateTime.parse("2020-01-07T11:24:12.842749-08:00", DateTimeFormatter.ISO_OFFSET_DATE_TIME);
     sys.out.println(RequestTimeline.of(
         new RequestTimeline.Event("foo", startTime, startTime.plusSeconds(1)),
         new RequestTimeline.Event("bar", startTime.plusSeconds(1), startTime.plusSeconds(2))));
    JSON serialization:
    [{"name":"foo","time":"2020-01-07T11:24:12.842749-08:00","duration":"PT1S"},{"name":"bar","time":"2020-01-07T11:24:13.842749-08:00","duration":"PT1S"}])