public TransitioningCheckpointRegistry(
            ICheckpointRegistry primary,
            ICheckpointRegistry fallback)
        {
            _primary  = primary;
            _fallback = fallback;

            LinkLifetime(_primary);
            LinkLifetime(_fallback);
        }
        /// <inheritdoc />
        public CheckpointManager(
            ContentLocationDatabase database,
            ICheckpointRegistry checkpointRegistry,
            CentralStorage storage,
            CheckpointConfiguration configuration,
            CounterCollection <ContentLocationStoreCounters> counters)
        {
            _database                   = database;
            _checkpointRegistry         = checkpointRegistry;
            _storage                    = storage;
            _configuration              = configuration;
            _fileSystem                 = new PassThroughFileSystem();
            _checkpointStagingDirectory = configuration.WorkingDirectory / "staging";

            Counters = counters;
        }
Beispiel #3
0
        /// <inheritdoc />
        public CheckpointManager(
            ContentLocationDatabase database,
            ICheckpointRegistry checkpointRegistry,
            CentralStorage storage,
            CheckpointConfiguration configuration,
            CounterCollection <ContentLocationStoreCounters> counters)
        {
            _database                       = database;
            _checkpointRegistry             = checkpointRegistry;
            _storage                        = storage;
            _configuration                  = configuration;
            _fileSystem                     = new PassThroughFileSystem();
            _checkpointStagingDirectory     = configuration.WorkingDirectory / "staging";
            _incrementalCheckpointDirectory = configuration.WorkingDirectory / "incremental";
            _lastCheckpointFile             = configuration.WorkingDirectory / "lastCheckpoint.txt";
            _fileSystem.CreateDirectory(_incrementalCheckpointDirectory);

            _incrementalCheckpointInfoFile = _incrementalCheckpointDirectory / "checkpointInfo.txt";
            Counters = counters;
        }
Beispiel #4
0
        /// <inheritdoc />
        public CheckpointManager(
            ContentLocationDatabase database,
            ICheckpointRegistry checkpointRegistry,
            CentralStorage storage,
            CheckpointManagerConfiguration configuration,
            CounterCollection <ContentLocationStoreCounters> counters,
            ICheckpointObserver checkpointObserver = null)
        {
            Database                    = database;
            CheckpointRegistry          = checkpointRegistry;
            Storage                     = storage;
            _configuration              = configuration;
            _fileSystem                 = new PassThroughFileSystem();
            _checkpointStagingDirectory = configuration.WorkingDirectory / "staging";
            _checkpointObserver         = checkpointObserver;
            Counters                    = counters;

            LinkLifetime(Database);
            LinkLifetime(CheckpointRegistry);
            LinkLifetime(_checkpointObserver);
            LinkLifetime(Storage);
        }