class SudoStreamPids extends AbstractCommand<SudoStreamPids> implements StartStreamRequest, WithIdButActuallyNot {

    public static SudoStreamPids fromJson(final JsonObject jsonObject,
            final DittoHeaders dittoHeaders) {

        final int burst = jsonObject.getValueOrThrow(JSON_BURST);
        final long timeoutMillis = jsonObject.getValueOrThrow(JSON_TIMEOUT_MILLIS);
        final EntityIdWithRevision lowerBound =
                jsonObject.getValue(JSON_LOWER_BOUND).map(LowerBound::new).orElseGet(LowerBound::new);
        return new SudoStreamPids(burst, timeoutMillis, lowerBound, dittoHeaders);
    }

    private  SudoStreamPids(final Integer burst, final Long timeoutMillis, final EntityIdWithRevision lowerBound,
            final DittoHeaders dittoHeaders);

}