rubocop: refactor modified? method

This commit is contained in:
Anatoliy Yastreb 2016-06-22 14:15:13 +03:00
parent d13112dbdc
commit 0b169f7739
1 changed files with 21 additions and 16 deletions

View File

@ -90,7 +90,14 @@ module Jekyll
return cache[path]
end
check_path_exists(path)
if metadata[path]
# If we have seen this file before,
# check if it or one of its dependencies has been modified
existing_file_modified?(path)
else
# If we have not seen this file before, add it to the metadata and regenerate it
add(path)
end
end
# Add a dependency of a path
@ -170,25 +177,23 @@ module Jekyll
)
end
# Private: Check path that exists in metadata
#
# Returns Boolean
private
def check_path_exists(path)
data = metadata[path]
if data
data["deps"].each do |dependency|
def existing_file_modified?(path)
# If one of this file dependencies have been modified,
# set the regeneration bit for both the dependency and the file to true
metadata[path]["deps"].each do |dependency|
if modified?(dependency)
return cache[dependency] = cache[path] = true
end
end
if File.exist?(path) && data["mtime"].eql?(File.mtime(path))
return cache[path] = false
end
end
# Path does not exist in metadata, add it
if File.exist?(path) && metadata[path]["mtime"].eql?(File.mtime(path))
# If this file has not been modified, set the regeneration bit to false
cache[path] = false
else
# If it has been modified, set it to true
add(path)
end
end
end
end