Class: ArchiveStorage::Verifier

Inherits:
Object
  • Object
show all
Defined in:
lib/archive_storage/verifier.rb

Instance Method Summary collapse

Constructor Details

#initialize(strategy: ArchiveStorage.configuration.verification_strategy) ⇒ Verifier

Returns a new instance of Verifier.



9
10
11
# File 'lib/archive_storage/verifier.rb', line 9

def initialize(strategy: ArchiveStorage.configuration.verification_strategy)
  @strategy = strategy.to_sym
end

Instance Method Details

#verify!(source_adapter:, target_adapter:, source_key:, target_key:) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/archive_storage/verifier.rb', line 13

def verify!(source_adapter:, target_adapter:, source_key:, target_key:)
   = source_adapter.head(source_key)
   = target_adapter.head(target_key)

  verify_metadata!(, )
  verify_bytes!(source_adapter, target_adapter, source_key, target_key) if strategy == :byte_compare

  VerificationResult.new(
    strategy: strategy,
    matched_by: matched_by(, ),
    source_metadata: ,
    target_metadata: 
  )
end