docs(docstring): other stream save method

This commit is contained in:
2026-07-02 19:13:55 +01:00
parent 1a0778d1d6
commit 41fda53817

View File

@@ -5,6 +5,7 @@ import com.ddf.vodsystem.dto.Job;
import com.ddf.vodsystem.dto.JobState; import com.ddf.vodsystem.dto.JobState;
import com.ddf.vodsystem.entities.Marker; import com.ddf.vodsystem.entities.Marker;
import com.ddf.vodsystem.entities.User; import com.ddf.vodsystem.entities.User;
import com.ddf.vodsystem.exceptions.MarkerNotFound;
import com.ddf.vodsystem.exceptions.NotAuthenticated; import com.ddf.vodsystem.exceptions.NotAuthenticated;
import com.ddf.vodsystem.services.media.CompressionService; import com.ddf.vodsystem.services.media.CompressionService;
import com.ddf.vodsystem.services.media.StreamActionsService; import com.ddf.vodsystem.services.media.StreamActionsService;
@@ -152,6 +153,25 @@ public class MediaService {
); );
} }
/**
* Saves a section of the currently authenticated user's live stream between two markers.
* <p>
* Resolves {@code startMarkerId} and {@code endMarkerId} to their marker timestamps and
* delegates to {@link #saveSection(Instant, Instant, String, String)}.
*
* @param startMarkerId id of the marker whose timestamp begins the section to save
* @param endMarkerId id of the marker whose timestamp ends the section to save
* @param title title for the saved VoD; defaults to the current timestamp if {@code null}
* @param description description for the saved VoD; defaults to an empty string if {@code null}
* @return the {@link Job} tracking the save; state transitions to
* {@link JobState#SUCCEEDED} or {@link JobState#FAILED} asynchronously
* @throws MarkerNotFound if either marker id does not exist
* @throws NotAuthenticated if no user is currently authenticated, or the caller does not
* own one of the referenced markers
* @throws IllegalArgumentException if the start marker's timestamp is not before the end
* marker's, or if no stream segments exist in the given range
* @throws IOException if reading the stream directory or its segments fails
*/
public Job saveSection( public Job saveSection(
Long startMarkerId, Long startMarkerId,
Long endMarkerId, Long endMarkerId,