public AzureBlobStorageMasterElectionMechanism(
            AzureBlobStorageMasterElectionMechanismConfiguration configuration,
            MachineLocation primaryMachineLocation,
            IClock? clock = null)
        {
            Contract.RequiresNotNull(configuration.Credentials);
            _configuration = configuration;
            _primaryMachineLocation = primaryMachineLocation;
            _clock = clock ?? SystemClock.Instance;

            _storage = new BlobFolderStorage(Tracer, configuration);

            LinkLifetime(_storage);
        }