Esempio n. 1
0
 public SiteRepo(
     ProbeDbContext dbContext,
     FolderRepo folderRepo)
 {
     _dbContext  = dbContext;
     _folderRepo = folderRepo;
 }
Esempio n. 2
0
 public FileRepo(
     ProbeDbContext dbContext,
     CannonQueue cannonQueue)
 {
     _dbContext   = dbContext;
     _cannonQueue = cannonQueue;
 }
Esempio n. 3
0
        private async Task AllClean(ProbeDbContext dbContext)
        {
            var files = await dbContext.Files.ToListAsync();

            foreach (var file in files)
            {
                var path = _configuration["StoragePath"] + $"{_}Storage{_}{file.Id}.dat";
                if (!File.Exists(path))
                {
                    _logger.LogInformation($"Cleaner message: File with Id: {file.Id} was found in database but not found on disk! Deleting record in database...");
                    // delete file in db.
                    dbContext.Files.Remove(file);
                }
                else
                {
                    file.FileSize = new FileInfo(path).Length;
                }
                await dbContext.SaveChangesAsync();
            }
            var storageFiles = Directory.GetFiles(_configuration["StoragePath"] + $"{_}Storage");

            foreach (var file in storageFiles)
            {
                var fileName = Convert.ToInt32(Path.GetFileNameWithoutExtension(file));
                if (!await dbContext.Files.AnyAsync(t => t.Id == fileName))
                {
                    _logger.LogInformation($"Cleaner message: File with Id: {fileName} was found on disk but not found in database! Deleting file on disk...");
                    // delete file on disk.
                    //File.Delete(file);
                }
            }
            return;
        }
Esempio n. 4
0
        private async Task AllClean(ProbeDbContext dbContext, IStorageProvider storageProvider)
        {
            var files = await dbContext.Files.ToListAsync();

            foreach (var file in files)
            {
                if (!storageProvider.ExistInHardware(file.HardwareId))
                {
                    _logger.LogInformation($"Cleaner message: File with Id: {file.HardwareId} was found in database but not found on disk! Deleting record in database...");
                    // delete file in db.
                    dbContext.Files.Remove(file);
                }
                await dbContext.SaveChangesAsync();
            }
            var storageFiles = storageProvider.GetAllFileNamesInHardware();

            foreach (var file in storageFiles)
            {
                if (!await dbContext.Files.AnyAsync(t => t.HardwareId == file))
                {
                    _logger.LogCritical($"Cleaner message: File with harewareId: {file} was found on disk but not found in database! Consider Delet file on disk!");
                }
            }
            return;
        }
Esempio n. 5
0
 public FolderOperator(
     ProbeDbContext dbContext,
     IStorageProvider storageProvider)
 {
     _dbContext       = dbContext;
     _storageProvider = storageProvider;
 }
Esempio n. 6
0
 public FolderCleaner(
     ProbeDbContext dbContext,
     IConfiguration configuration)
 {
     _dbContext     = dbContext;
     _configuration = configuration;
 }
Esempio n. 7
0
 public FileRepo(
     ProbeDbContext dbContext,
     IStorageProvider storageProvider)
 {
     _dbContext       = dbContext;
     _storageProvider = storageProvider;
 }
Esempio n. 8
0
 public FolderLocator(
     ProbeDbContext dbContext,
     ACTokenManager tokenManager)
 {
     _dbContext    = dbContext;
     _tokenManager = tokenManager;
 }
Esempio n. 9
0
        private async Task AllClean(ProbeDbContext dbContext, IStorageProvider storageProvider)
        {
            var files = await dbContext.Files.ToListAsync();

            foreach (var file in files)
            {
                if (!storageProvider.ExistInHardware(file.HardwareId))
                {
                    _logger.LogWarning($"Cleaner message: File with Id: {file.HardwareId} was found in database but not found on disk! Deleting record in database...");
                    // delete file in db.
                    dbContext.Files.Remove(file);
                }
            }
            await dbContext.SaveChangesAsync();

            var storageFiles = storageProvider.GetAllFileNamesInHardware();

            foreach (var file in storageFiles)
            {
                if (files.All(t => t.HardwareId != file))
                {
                    _logger.LogWarning($"Cleaner message: File with hardware Id: {file} was found on disk but not found in database! Consider Delete that file on disk!");
                    // delete file in disk
                    storageProvider.DeleteToTrash(file);
                }
            }
        }
Esempio n. 10
0
 public DownloadController(
     FolderLocator folderLocator,
     ProbeDbContext dbContext,
     IConfiguration configuration)
 {
     _folderLocator = folderLocator;
     _dbContext     = dbContext;
     _configuration = configuration;
 }
Esempio n. 11
0
 public TokenController(
     ACTokenManager tokenManager,
     ProbeDbContext dbContext,
     PBTokenManager pbTokenManager)
 {
     _tokenManager   = tokenManager;
     _dbContext      = dbContext;
     _pbTokenManager = pbTokenManager;
 }
Esempio n. 12
0
 public FoldersController(
     ProbeDbContext dbContext,
     FolderLocator folderLocator,
     FolderOperator folderCleaner)
 {
     _dbContext      = dbContext;
     _folderLocator  = folderLocator;
     _folderOperator = folderCleaner;
 }
Esempio n. 13
0
 public AppRepo(
     ACTokenValidator acTokenManager,
     ProbeDbContext dbContext,
     SiteRepo siteRepo)
 {
     _acTokenManager = acTokenManager;
     _dbContext      = dbContext;
     _siteRepo       = siteRepo;
 }
Esempio n. 14
0
 public FilesController(
     ProbeDbContext dbContext,
     FolderLocator folderLocator,
     IConfiguration configuration)
 {
     _dbContext     = dbContext;
     _folderLocator = folderLocator;
     _configuration = configuration;
 }
Esempio n. 15
0
 public SitesController(
     ProbeDbContext dbContext,
     ACTokenManager tokenManager,
     FolderOperator folderOperator)
 {
     _dbContext     = dbContext;
     _tokenManager  = tokenManager;
     _folderCleaner = folderOperator;
 }
Esempio n. 16
0
 public FolderOperator(
     ProbeDbContext dbContext,
     IConfiguration configuration,
     AiurCache cache)
 {
     _dbContext     = dbContext;
     _configuration = configuration;
     _cache         = cache;
 }
Esempio n. 17
0
 public FolderRepo(
     ProbeDbContext probeDbContext,
     FileRepo fileRepo,
     IStorageProvider storageProvider,
     ACTokenValidator tokenManager)
 {
     _dbContext       = probeDbContext;
     _fileRepo        = fileRepo;
     _storageProvider = storageProvider;
     _tokenManager    = tokenManager;
 }
Esempio n. 18
0
 public DownloadController(
     FolderLocator folderLocator,
     ProbeDbContext dbContext,
     IConfiguration configuration,
     ImageCompressor imageCompressor)
 {
     _folderLocator   = folderLocator;
     _dbContext       = dbContext;
     _configuration   = configuration;
     _imageCompressor = imageCompressor;
 }
Esempio n. 19
0
 public FolderRepo(
     ProbeDbContext probeDbContext,
     FileRepo fileRepo,
     IStorageProvider storageProvider,
     ACTokenValidator tokenManager,
     FolderLockDictionary lockDictionary)
 {
     _dbContext          = probeDbContext;
     _fileRepo           = fileRepo;
     _storageProvider    = storageProvider;
     _tokenManager       = tokenManager;
     this.lockDictionary = lockDictionary;
 }
Esempio n. 20
0
 public FileDeleter(
     ProbeDbContext probeDbContext,
     RetryEngine retryEngine,
     IStorageProvider storageProvider,
     EventService eventService,
     AppsContainer appsContainer)
 {
     _probeDbContext  = probeDbContext;
     _retryEngine     = retryEngine;
     _storageProvider = storageProvider;
     _eventService    = eventService;
     _appsContainer   = appsContainer;
 }
Esempio n. 21
0
 public DownloadController(
     FolderLocator folderLocator,
     ProbeDbContext dbContext,
     ImageCompressor imageCompressor,
     TokenEnsurer tokenEnsurer,
     IStorageProvider storageProvider)
 {
     _folderLocator   = folderLocator;
     _dbContext       = dbContext;
     _imageCompressor = imageCompressor;
     _tokenEnsurer    = tokenEnsurer;
     _storageProvider = storageProvider;
 }
Esempio n. 22
0
 public FilesController(
     ProbeDbContext dbContext,
     FolderLocator folderLocator,
     FolderOperator folderCleaner,
     IConfiguration configuration,
     ServiceLocation serviceLocation,
     TokenEnsurer tokenEnsurer)
 {
     _dbContext       = dbContext;
     _folderLocator   = folderLocator;
     _configuration   = configuration;
     _serviceLocation = serviceLocation;
     _tokenEnsurer    = tokenEnsurer;
     _folderCleaner   = folderCleaner;
 }
Esempio n. 23
0
 public FilesController(
     ProbeDbContext dbContext,
     FolderLocator folderLocator,
     FolderCleaner folderCleaner,
     IConfiguration configuration,
     FolderRefactor folderRefactor,
     ServiceLocation serviceLocation)
 {
     _dbContext       = dbContext;
     _folderLocator   = folderLocator;
     _configuration   = configuration;
     _folderRefactor  = folderRefactor;
     _serviceLocation = serviceLocation;
     _folderCleaner   = folderCleaner;
 }
Esempio n. 24
0
 public FilesController(
     ProbeDbContext dbContext,
     FolderLocator folderLocator,
     FolderOperator folderCleaner,
     TokenEnsurer tokenEnsurer,
     ProbeLocator probeLocator,
     IStorageProvider storageProvider)
 {
     _dbContext       = dbContext;
     _folderLocator   = folderLocator;
     _tokenEnsurer    = tokenEnsurer;
     _probeLocator    = probeLocator;
     _storageProvider = storageProvider;
     _folderCleaner   = folderCleaner;
 }
Esempio n. 25
0
 public FolderRefactor(ProbeDbContext dbContext, FolderLocator folderLocator)
 {
     _dbContext     = dbContext;
     _folderLocator = folderLocator;
 }
Esempio n. 26
0
 private Task AllClean(ProbeDbContext dbContext)
 {
     return(Task.CompletedTask);
 }