Class: SeeingIsBelieving::BackupFile

Inherits:
Object
  • Object
show all
Defined in:
lib/seeing_is_believing/backup_file.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(file_path, backup_filename, &block) ⇒ BackupFile

Returns a new instance of BackupFile.



10
11
12
13
14
# File 'lib/seeing_is_believing/backup_file.rb', line 10

def initialize(file_path, backup_filename, &block)
  self.file_path       = file_path
  self.block           = block
  self.backup_filename = backup_filename
end

Class Method Details

.call(*args, &block) ⇒ Object



6
7
8
# File 'lib/seeing_is_believing/backup_file.rb', line 6

def self.call(*args, &block)
  new(*args, &block).call
end

Instance Method Details

#callObject



16
17
18
19
20
21
22
23
24
25
26
# File 'lib/seeing_is_believing/backup_file.rb', line 16

def call
  HardCoreEnsure.call \
    code: -> {
      we_will_not_overwrite_existing_backup_file!
      backup_existing_file
      block.call
    },
    ensure: -> {
      set_back_to_initial_conditions
    }
end