001package co.codewizards.cloudstore.core.repo.transport;
002
003import java.util.Set;
004import java.util.UUID;
005
006import co.codewizards.cloudstore.core.repo.local.ContextWithLocalRepoManager;
007
008public interface LocalRepoTransport extends RepoTransport, ContextWithLocalRepoManager {
009
010//      boolean isTransferDone(UUID fromRepositoryId, UUID toRepositoryId, TransferDoneMarkerType transferDoneMarkerType,
011//                      long fromEntityId, long fromLocalRevision);
012//
013//      void markTransferDone(UUID fromRepositoryId, UUID toRepositoryId, TransferDoneMarkerType transferDoneMarkerType,
014//                      long fromEntityId, long fromLocalRevision);
015
016        /**
017         * Before transferring a file, mark it to be 'inProgress' for this specific from-to connection. In case of an
018         * interruption of a sync, the next sync is aware of the situation.
019         * @param inProgress True will set the marker, false will remove it.
020         */
021        void markFileInProgress(UUID fromRepository, UUID toRepository, String path, boolean inProgress);
022
023        Set<String> getFileInProgressPaths(UUID fromRepository, UUID toRepository);
024
025}