Class: S3sync::FileDiff

Inherits:
Object
  • Object
show all
Defined in:
lib/s3sync/file_diff.rb

Class Method Summary collapse

Class Method Details

.content_length(item) ⇒ Object



22
23
24
# File 'lib/s3sync/file_diff.rb', line 22

def self.content_length(item)
  item[:content_length]
end

.diff(source, destination) ⇒ Object



5
6
7
# File 'lib/s3sync/file_diff.rb', line 5

def self.diff(source, destination)
  source.reject { |key,item| same_file?(item, destination[key]) }
end

.last_modified(item) ⇒ Object



18
19
20
# File 'lib/s3sync/file_diff.rb', line 18

def self.last_modified(item)
  item[:last_modified]
end

.same_file?(source, dest) ⇒ Boolean

Returns:



9
10
11
12
13
14
# File 'lib/s3sync/file_diff.rb', line 9

def self.same_file?(source, dest)
  return false unless dest
  return false if content_length(dest) != content_length(source)
  return false unless last_modified(dest) >= last_modified(source)
  return true
end