class Wayfarer::Frontiers::MemoryFrontier
A naive in-memory frontier. @api private
Public Class Methods
new(config)
click to toggle source
Calls superclass method
Wayfarer::Frontiers::Frontier::new
# File lib/wayfarer/frontiers/memory_frontier.rb, line 11 def initialize(config) @current_uris = Set.new([]) @staged_uris = Set.new([]) @cached_uris = Set.new([]) super(config) end
Public Instance Methods
cache(*uris)
click to toggle source
@override
# File lib/wayfarer/frontiers/memory_frontier.rb, line 43 def cache(*uris) @cached_uris |= if JAVA_PLATFORM == "java" uris.map(&:to_s) else Parallel.map(uris, &:to_s) end end
cached?(uri)
click to toggle source
@override
# File lib/wayfarer/frontiers/memory_frontier.rb, line 52 def cached?(uri) @cached_uris.include?(uri.to_s) end
current_uris()
click to toggle source
@override
# File lib/wayfarer/frontiers/memory_frontier.rb, line 19 def current_uris if JAVA_PLATFORM == "java" @current_uris.map { |uri| URI(uri) } else Parallel.map(@current_uris) { |uri| URI(uri) } end end
free()
click to toggle source
@override
# File lib/wayfarer/frontiers/memory_frontier.rb, line 57 def free @current_uris = @staged_uris = @cached_uris = nil end
stage(*uris)
click to toggle source
@override
# File lib/wayfarer/frontiers/memory_frontier.rb, line 33 def stage(*uris) @staged_uris |= uris end
staged?(uri)
click to toggle source
@override
# File lib/wayfarer/frontiers/memory_frontier.rb, line 38 def staged?(uri) @staged_uris.include?(uri.to_s) end
staged_uris()
click to toggle source
@override
# File lib/wayfarer/frontiers/memory_frontier.rb, line 28 def staged_uris @staged_uris.to_a # These are assumed to be URIs already, so no map end
Private Instance Methods
filter_staged_uris!()
click to toggle source
# File lib/wayfarer/frontiers/memory_frontier.rb, line 71 def filter_staged_uris! @staged_uris.delete_if { |uri| cached?(uri) } end
reset_staged_uris!()
click to toggle source
# File lib/wayfarer/frontiers/memory_frontier.rb, line 63 def reset_staged_uris! @staged_uris = Set.new([]) end
swap!()
click to toggle source
# File lib/wayfarer/frontiers/memory_frontier.rb, line 67 def swap! @current_uris = @staged_uris end