Class: PgExport::Services::CreateAndExportDump

Inherits:
Object
  • Object
show all
Defined in:
lib/pg_export/services/create_and_export_dump.rb

Instance Method Summary collapse

Constructor Details

#initialize(bash_factory:, encryptor:, ftp_repository:) ⇒ CreateAndExportDump

Returns a new instance of CreateAndExportDump.



4
5
6
# File 'lib/pg_export/services/create_and_export_dump.rb', line 4

def initialize(bash_factory:, encryptor:, ftp_repository:)
  @bash_factory, @encryptor, @ftp_repository = bash_factory, encryptor, ftp_repository
end

Instance Method Details

#call(database_name, keep_dumps) ⇒ Object



8
9
10
11
12
13
# File 'lib/pg_export/services/create_and_export_dump.rb', line 8

def call(database_name, keep_dumps)
  dump = bash_factory.build_dump(database_name)
  encrypted_dump = encryptor.call(dump)
  ftp_repository.persist(encrypted_dump)
  ftp_repository.remove_old(database_name, keep_dumps)
end