diff --git a/lib/calligraphy.rb b/lib/calligraphy.rb index 0f591d4..96b567c 100644 --- a/lib/calligraphy.rb +++ b/lib/calligraphy.rb @@ -7,8 +7,8 @@ require 'calligraphy/xml/node' require 'calligraphy/xml/utils' require 'calligraphy/utils' -require 'calligraphy/resource' -require 'calligraphy/file_resource' +require 'calligraphy/resource/resource' +require 'calligraphy/resource/file_resource' require 'calligraphy/web_dav_request' require 'calligraphy/copy' diff --git a/lib/calligraphy/file_resource.rb b/lib/calligraphy/resource/file_resource.rb similarity index 96% rename from lib/calligraphy/file_resource.rb rename to lib/calligraphy/resource/file_resource.rb index bf7162b..cf9b67a 100644 --- a/lib/calligraphy/file_resource.rb +++ b/lib/calligraphy/resource/file_resource.rb @@ -375,17 +375,19 @@ module Calligraphy if File.exist? ancestor_store_path ancestor_store = PStore.new ancestor_store_path - ancestor_lock_depth = ancestor_store.transaction(true) do - ancestor_store[:lockdepth] - end - ancestor_lock = ancestor_store.transaction(true) do - ancestor_store[:lockdiscovery] - end + ancestor_lock = nil + ancestor_lock_creator = nil + ancestor_lock_depth = nil - ancestor_lock_creator = ancestor_store.transaction(true) do - ancestor_store[:lockcreator] - end if check_lock_creator + ancestor_store.transaction(true) do + ancestor_lock = ancestor_store[:lockdiscovery] + ancestor_lock_depth = ancestor_store[:lockdepth] + + if check_lock_creator + ancestor_lock_creator = ancestor_store[:lockcreator] + end + end blocking_lock = obj_exists_and_is_not_type? obj: ancestor_lock, type: [] @@ -456,7 +458,7 @@ module Calligraphy if File.exist? ancestor_store_path ancestor_store = PStore.new ancestor_store_path - ancestor_lock = ancestor_store.transaction(true) do + ancestor_lock = ancestor_store.transaction do ancestor_store[:lockdiscovery][-1][:timeout] = timeout_node ancestor_store[:lockdiscovery] end diff --git a/lib/calligraphy/resource.rb b/lib/calligraphy/resource/resource.rb similarity index 100% rename from lib/calligraphy/resource.rb rename to lib/calligraphy/resource/resource.rb