Change method name and make it private
This commit is contained in:
parent
36b20aa6a9
commit
7cbccb16b9
@ -72,37 +72,12 @@ module RemoteStorage
|
||||
:directory_bin => [category]})
|
||||
object.store
|
||||
|
||||
create_parent_directory_objects(user, category)
|
||||
create_missing_directory_objects(user, category)
|
||||
update_directory_object(user, category)
|
||||
rescue ::Riak::HTTPFailedRequest
|
||||
halt 422
|
||||
end
|
||||
|
||||
def create_parent_directory_objects(user, category)
|
||||
parent_directories = category.split("/")
|
||||
parent_directories.pop
|
||||
while parent_directories.any?
|
||||
directory = parent_directories.join("/")
|
||||
unless directory_bucket.exist?("#{user}:#{directory}")
|
||||
update_directory_object(user, directory)
|
||||
end
|
||||
parent_directories.pop
|
||||
end
|
||||
end
|
||||
|
||||
def update_directory_object(user, category)
|
||||
if category.match /\//
|
||||
parent_directory = category[0..category.rindex("/")-1]
|
||||
end
|
||||
directory = directory_bucket.new("#{user}:#{category}")
|
||||
directory.raw_data = ""
|
||||
directory.indexes.merge!({:user_id_bin => [user]})
|
||||
if parent_directory
|
||||
directory.indexes.merge!({:directory_bin => [parent_directory]})
|
||||
end
|
||||
directory.store
|
||||
end
|
||||
|
||||
def delete_data(user, category, key)
|
||||
riak_response = data_bucket.delete("#{user}:#{category}:#{key}")
|
||||
if directory_entries(user, category).empty?
|
||||
@ -193,5 +168,30 @@ module RemoteStorage
|
||||
run
|
||||
end
|
||||
|
||||
def create_missing_directory_objects(user, category)
|
||||
parent_directories = category.split("/")
|
||||
parent_directories.pop
|
||||
while parent_directories.any?
|
||||
directory = parent_directories.join("/")
|
||||
unless directory_bucket.exist?("#{user}:#{directory}")
|
||||
update_directory_object(user, directory)
|
||||
end
|
||||
parent_directories.pop
|
||||
end
|
||||
end
|
||||
|
||||
def update_directory_object(user, category)
|
||||
if category.match /\//
|
||||
parent_directory = category[0..category.rindex("/")-1]
|
||||
end
|
||||
directory = directory_bucket.new("#{user}:#{category}")
|
||||
directory.raw_data = ""
|
||||
directory.indexes.merge!({:user_id_bin => [user]})
|
||||
if parent_directory
|
||||
directory.indexes.merge!({:directory_bin => [parent_directory]})
|
||||
end
|
||||
directory.store
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
Loading…
x
Reference in New Issue
Block a user