Interface PersistenceSpi

    • Method Detail

      • deleteLiveContentSet

        void deleteLiveContentSet​(java.util.UUID liveSetId)
      • getAllLiveContents

        @MustBeClosed
        java.util.stream.Stream<LiveContentSet> getAllLiveContents()
      • startIdentifyLiveContents

        void startIdentifyLiveContents​(@NotNull @NotNull
                                       @NotNull @NotNull java.util.UUID liveSetId,
                                       @NotNull @NotNull
                                       @NotNull @NotNull java.time.Instant created)
      • addIdentifiedLiveContent

        long addIdentifiedLiveContent​(@NotNull @NotNull
                                      @NotNull @NotNull java.util.UUID liveSetId,
                                      @NotNull @NotNull
                                      @NotNull @NotNull java.util.stream.Stream<ContentReference> contentReference)
      • finishedIdentifyLiveContents

        void finishedIdentifyLiveContents​(@NotNull @NotNull
                                          @NotNull @NotNull java.util.UUID liveSetId,
                                          @NotNull @NotNull
                                          @NotNull @NotNull java.time.Instant finished,
                                          @Nullable @Nullable
                                          java.lang.Throwable failure)
      • startExpireContents

        LiveContentSet startExpireContents​(@NotNull @NotNull
                                           @NotNull @NotNull java.util.UUID liveSetId,
                                           @NotNull @NotNull
                                           @NotNull @NotNull java.time.Instant started)
      • finishedExpireContents

        LiveContentSet finishedExpireContents​(@NotNull @NotNull
                                              @NotNull @NotNull java.util.UUID liveSetId,
                                              @NotNull @NotNull
                                              @NotNull @NotNull java.time.Instant finished,
                                              @Nullable @Nullable
                                              java.lang.Throwable failure)
      • fetchDistinctContentIdCount

        long fetchDistinctContentIdCount​(@NotNull @NotNull
                                         @NotNull @NotNull java.util.UUID liveSetId)
      • fetchContentIds

        @MustBeClosed
        java.util.stream.Stream<java.lang.String> fetchContentIds​(@NotNull @NotNull
                                                                  @NotNull @NotNull java.util.UUID liveSetId)
      • fetchContentReferences

        java.util.stream.Stream<ContentReference> fetchContentReferences​(@NotNull @NotNull
                                                                         @NotNull @NotNull java.util.UUID liveSetId,
                                                                         @NotNull @NotNull
                                                                         @NotNull @NotNull java.lang.String contentId)
      • associateBaseLocations

        void associateBaseLocations​(@NotNull @NotNull
                                    @NotNull @NotNull java.util.UUID liveSetId,
                                    @NotNull @NotNull
                                    @NotNull @NotNull java.lang.String contentId,
                                    @NotNull @NotNull
                                    @NotNull @NotNull java.util.Collection<java.net.URI> baseLocations)
      • fetchBaseLocations

        @MustBeClosed
        java.util.stream.Stream<java.net.URI> fetchBaseLocations​(@NotNull @NotNull
                                                                 @NotNull @NotNull java.util.UUID liveSetId,
                                                                 @NotNull @NotNull
                                                                 @NotNull @NotNull java.lang.String contentId)
      • fetchAllBaseLocations

        @MustBeClosed
        java.util.stream.Stream<java.net.URI> fetchAllBaseLocations​(@NotNull @NotNull
                                                                    @NotNull @NotNull java.util.UUID liveSetId)
      • addFileDeletions

        long addFileDeletions​(@NotNull @NotNull
                              @NotNull @NotNull java.util.UUID liveSetId,
                              @NotNull @NotNull
                              @NotNull @NotNull java.util.stream.Stream<FileReference> files)
        Records the given files to be later returned by fetchFileDeletions(UUID), ignores duplicates.
        Returns:
        the number of actually added files
      • fetchFileDeletions

        @MustBeClosed
        java.util.stream.Stream<FileReference> fetchFileDeletions​(@NotNull @NotNull
                                                                  @NotNull @NotNull java.util.UUID liveSetId)
        Returns the addFileDeletions(UUID, Stream) recorded file deletions (aka deferred deletes) grouped by base path.