Class: Restauration::Etape::TraitementDossierNonExtirpable

Inherits:
Object
  • Object
show all
Defined in:
lib/images/restauration/etape/traitement_dossier_non_extirpable.rb

Overview

Définit l’étape de traitement de dossier non extirpable

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(fichiers = {}) ⇒ TraitementDossierNonExtirpable

Returns a new instance of TraitementDossierNonExtirpable.



17
18
19
20
# File 'lib/images/restauration/etape/traitement_dossier_non_extirpable.rb', line 17

def initialize(fichiers = {})
  @fichiers = fichiers
  @log = Logging.logger[self]
end

Instance Attribute Details

#fichiersObject (readonly)

Returns the value of attribute fichiers.



15
16
17
# File 'lib/images/restauration/etape/traitement_dossier_non_extirpable.rb', line 15

def fichiers
  @fichiers
end

Instance Method Details

#parcours(dossiers) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/images/restauration/etape/traitement_dossier_non_extirpable.rb', line 22

def parcours(dossiers)
  dossiers.each do |dossier|
    @log.info "Traitement sur le dossier '#{dossier}'"
    dedoublonneur = Dedoublonneur.new
    Dir.each_child(dossier) do |nom_fichier|
      fichier = "#{dossier}/#{nom_fichier}"
      @log.debug "Traitement sur le fichier '#{fichier}'"
      if File.file?(fichier)
        numero_attribue = dedoublonneur.attribution_par_numero(File.extname(fichier))
        fichiers.store(
          fichier,
          Fichier.new(
            numero_attribue, DirectoryHelpers.get_date(File.dirname(fichier)),
            File.dirname(fichier), File.extname(fichier)
          )
        )
      else
        @log.warn "le fichier '#{fichier}' ne sera pas traite"
      end
    end
  end
end