/* * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template */ package com.megatim.apifdxweb.service.impl.scheduler; import com.megatim.apifdxweb.model.camel.historique.ConsumedFilesHistory; import com.megatim.apifdxweb.service.impl.camel.config.CamelRouteConfiguration; import com.megatim.apifdxweb.tools.AppContext; import java.io.File; import java.util.List; import javax.enterprise.context.Dependent; import javax.inject.Inject; import com.megatim.apifdxweb.service.ifaces.scheduler.DeleteConsumedFilesJob; import com.megatim.apifdxweb.core.ifaces.camel.historique.ConsumedFilesHistoryManager; import com.megatim.apifdxweb.model.camel.historique.ConsumedFileType; /** * * @author ASUS */ @Dependent public class DeleteConsumedFilesJobImpl implements DeleteConsumedFilesJob { @Inject ConsumedFilesHistoryManager manager; @Override public void deleteConsumedFilesInFolder() throws Exception { String dataPath = new CamelRouteConfiguration(AppContext.PROPERTY_FILE_PATH).getLocalConfiguration().fichierLocalPath(); String referentielPath = new CamelRouteConfiguration(AppContext.PROPERTY_FILE_PATH).getLocalConfiguration().referentielLocalPath(); List consumedFiles = manager.notDeleted(); consumedFiles.stream().forEach(cf -> { String filePath = cf.getConsumedFileType().equals(ConsumedFileType.DONNEES) ? dataPath : referentielPath; File file = new File(filePath, cf.getFileName()); if (!file.exists() || file.exists() && file.delete()) { cf.setDeletedInFolder(true); manager.save(cf); } }); } }