Remove obsolete tree map methods.
This commit is contained in:
@@ -269,48 +269,6 @@ module Gollum
|
|||||||
list
|
list
|
||||||
end
|
end
|
||||||
|
|
||||||
# Fill an index with the existing state of the repository.
|
|
||||||
#
|
|
||||||
# tree - The Grit::Tree to start with.
|
|
||||||
#
|
|
||||||
# Returns a nested Hash of filename to content mappings.
|
|
||||||
def tree_map(tree)
|
|
||||||
map = {}
|
|
||||||
tree.contents.each do |item|
|
|
||||||
case item
|
|
||||||
when Grit::Blob
|
|
||||||
map[item.name] = item.data
|
|
||||||
when Grit::Tree
|
|
||||||
map[item.name] = tree_map(item)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
map
|
|
||||||
end
|
|
||||||
|
|
||||||
# Use a treemap to fill in the index.
|
|
||||||
#
|
|
||||||
# map - The Hash map:
|
|
||||||
# key - The String directory or filename.
|
|
||||||
# val - The Hash submap or the String contents of the file.
|
|
||||||
# index - The Grit::Index to use. Leave blank when calling from outside
|
|
||||||
# this method (default: nil).
|
|
||||||
#
|
|
||||||
# Returns the Grit::Index.
|
|
||||||
def tree_map_to_index(map, prefix = '', index = nil)
|
|
||||||
index ||= @repo.index
|
|
||||||
map.each do |k, v|
|
|
||||||
case k
|
|
||||||
when String
|
|
||||||
name = [prefix, k].join('/')[1..-1]
|
|
||||||
index.add(k, v)
|
|
||||||
when Hash
|
|
||||||
new_prefix = [prefix, k].join('/')[1..-1]
|
|
||||||
tree_map_to_index(v, new_prefix, index)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
index
|
|
||||||
end
|
|
||||||
|
|
||||||
# Determine if a given page path is scheduled to be deleted in the next
|
# Determine if a given page path is scheduled to be deleted in the next
|
||||||
# commit for the given Index.
|
# commit for the given Index.
|
||||||
#
|
#
|
||||||
@@ -377,65 +335,6 @@ module Gollum
|
|||||||
index.add(fullpath, normalize(data))
|
index.add(fullpath, normalize(data))
|
||||||
end
|
end
|
||||||
|
|
||||||
# Adds a Gollum::Page to the given tree map.
|
|
||||||
#
|
|
||||||
# map - The Hash map:
|
|
||||||
# key - The String directory or filename
|
|
||||||
# val - The Hash submap or the String contents of the file.
|
|
||||||
# dir - The String subdirectory of the Gollum::Page.
|
|
||||||
# name - The String Gollum::Page name.
|
|
||||||
# format - The Symbol Gollum::Page format.
|
|
||||||
# data - The String wiki data to store in the tree map.
|
|
||||||
# allow_same_ext - A Boolean determining if the tree map allows the same
|
|
||||||
# filename with the same extension.
|
|
||||||
#
|
|
||||||
# Raises Gollum::DuplicatePageError if a matching filename already exists.
|
|
||||||
# This way, pages are not inadvertently overwritten.
|
|
||||||
#
|
|
||||||
# Returns the modified Hash map.
|
|
||||||
def add_to_tree_map(map, dir, name, format, data, allow_same_ext = false)
|
|
||||||
ext = @page_class.format_to_ext(format)
|
|
||||||
path = @page_class.cname(name) + '.' + ext
|
|
||||||
|
|
||||||
parts = dir.split('/')
|
|
||||||
container = nil
|
|
||||||
parts.each do |part|
|
|
||||||
container = map[part]
|
|
||||||
end
|
|
||||||
|
|
||||||
container ||= map
|
|
||||||
downpath = path.downcase
|
|
||||||
downpath.sub! /\.\w+$/, ''
|
|
||||||
container.keys.each do |existing|
|
|
||||||
file = existing.downcase
|
|
||||||
file_ext = ::File.extname(file).sub /^\./, ''
|
|
||||||
file.sub! /\.\w+$/, ''
|
|
||||||
if downpath == file && !(allow_same_ext && file_ext == ext)
|
|
||||||
raise DuplicatePageError.new(dir, existing, path)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
container[path] = normalize(data)
|
|
||||||
map
|
|
||||||
end
|
|
||||||
|
|
||||||
# Delete an entry from a tree map.
|
|
||||||
#
|
|
||||||
# map - The Hash tree map of the repository.
|
|
||||||
# path - The String path of the file to delete.
|
|
||||||
#
|
|
||||||
# Returns the modified Hash tree map.
|
|
||||||
def delete_from_tree_map(map, path)
|
|
||||||
parts = path.split('/')
|
|
||||||
name = parts.pop
|
|
||||||
container = nil
|
|
||||||
parts.each do |part|
|
|
||||||
container = map[part]
|
|
||||||
end
|
|
||||||
(container || map).delete(name)
|
|
||||||
map
|
|
||||||
end
|
|
||||||
|
|
||||||
# Ensures a commit hash has all the required fields for a commit.
|
# Ensures a commit hash has all the required fields for a commit.
|
||||||
#
|
#
|
||||||
# commit - The commit Hash details:
|
# commit - The commit Hash details:
|
||||||
|
|||||||
Reference in New Issue
Block a user