DistributeurFabricantAssoIteLoadStepConfig.java

  1. package com.sintia.ffl.admin.optique.services.batch.refpromoteur.load.ite;

  2. import com.sintia.ffl.admin.optique.dal.entities.DistributeurFabricantAssoIte;
  3. import com.sintia.ffl.admin.optique.dal.repositories.DistributeurFabricantAssoIteRepository;
  4. import com.sintia.ffl.admin.staging.FileUtils;
  5. import com.sintia.ffl.admin.staging.GenerericItemReadFromFile;
  6. import com.sintia.ffl.admin.staging.StagingStepListener;
  7. import com.sintia.ffl.admin.staging.step.imports.AbstractSinglePromoteurLoadStepConfig;
  8. import com.sintia.ffl.adminui.commons.enums.TypeStaging;
  9. import com.sintia.ffl.core.commons.enums.CodePromoteur;
  10. import lombok.extern.slf4j.Slf4j;
  11. import org.springframework.batch.core.Step;
  12. import org.springframework.batch.core.configuration.annotation.JobScope;
  13. import org.springframework.batch.core.configuration.annotation.StepBuilderFactory;
  14. import org.springframework.batch.core.configuration.annotation.StepScope;
  15. import org.springframework.beans.factory.annotation.Value;
  16. import org.springframework.context.annotation.Bean;
  17. import org.springframework.context.annotation.Configuration;

  18. import java.io.IOException;

  19. @Slf4j
  20. @Configuration
  21. public class DistributeurFabricantAssoIteLoadStepConfig extends AbstractSinglePromoteurLoadStepConfig<DistributeurFabricantAssoIte, Integer, DistributeurFabricantAssoIteRepository> {
  22.    
  23.     public DistributeurFabricantAssoIteLoadStepConfig(){
  24.         super(DistributeurFabricantAssoIte.class, TypeStaging.REF_PROMOTEUR, CodePromoteur.ITE);
  25.     }
  26.    
  27.     @Bean
  28.     @JobScope
  29.     public Step distributeurFabricantAssoIteLoadStep(StepBuilderFactory stepBuilderFactory,
  30.             DistributeurFabricantAssoIteRepository distributeurFabricantAssoIteRepository, FileUtils fileUtils,
  31.             StagingStepListener<DistributeurFabricantAssoIte, Integer> stepListener) throws IOException {
  32.         return super.buildStep(stepBuilderFactory, distributeurFabricantAssoIteRepository, fileUtils, stepListener);
  33.     }
  34.    
  35.     @Bean("distributeurFabricantAssoIteItemReader")
  36.     @StepScope
  37.     @Override
  38.     public GenerericItemReadFromFile<DistributeurFabricantAssoIte> reader(
  39.             FileUtils fileUtils,
  40.             @Value("#{jobParameters['envSource'] ?: 'pprod'}") String envSource,
  41.             @Value("#{jobParameters['envCible'] ?: 'pprod'}") String envCible,
  42.             @Value("#{jobParameters['codePromoteur']}") String codePromoteur
  43.     ) throws IOException {
  44.         return super.buildReader(fileUtils, envSource, envCible, codePromoteur);
  45.     }
  46.    
  47. }