All Downloads are FREE. Search and download functionalities are using the official Maven repository.

nl.vpro.domain.api.media.MediaRepository Maven / Gradle / Ivy

Go to download

Contains the objects used by the Frontend API, like forms and result objects

There is a newer version: 8.3.3
Show newest version
/*
 * Copyright (C) 2013 All rights reserved
 * VPRO The Netherlands
 */
package nl.vpro.domain.api.media;

import java.time.Instant;

import nl.vpro.domain.api.*;
import nl.vpro.domain.api.profile.ProfileDefinition;
import nl.vpro.domain.media.MediaLoader;
import nl.vpro.domain.media.MediaObject;
import nl.vpro.util.CloseableIterator;
import nl.vpro.util.FilteringIterator;

/**
 * @author Roelof Jan Koekoek
 * @since 2.0
 */
public interface MediaRepository extends MediaLoader, Redirector {

    MediaResult list(Order order, long offset, Integer max);

    MediaResult listMembers(MediaObject media, ProfileDefinition profile, Order order, long offset, Integer max);

    MediaResult listDescendants(MediaObject media, ProfileDefinition profile, Order order, long offset, Integer max);

    ProgramResult listEpisodes(MediaObject media, ProfileDefinition profile, Order order, long offset, Integer max);

    @Deprecated
    CloseableIterator changes(Long since, ProfileDefinition current, ProfileDefinition previous, Order order, Integer max, Long keepAlive);

    CloseableIterator changes(Instant since, String mid, ProfileDefinition current, ProfileDefinition previous, Order order, Integer max, Long keepAlive, Deletes deletes, Tail tail);

    CloseableIterator iterate(ProfileDefinition profile, MediaForm form, long offset, Integer max, FilteringIterator.KeepAlive keepAlive);


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy