class Bundler::Settings::Mirror
replies on time or not.
fallback timeout which will be used for probing if the mirror
Contains both the uri that should be used as a mirror and the
A mirror
def ==(other)
def ==(other) !other.nil? && uri == other.uri && fallback_timeout == other.fallback_timeout end
def fallback_timeout=(timeout)
def fallback_timeout=(timeout) case timeout when true, "true" @fallback_timeout = DEFAULT_FALLBACK_TIMEOUT when false, "false" @fallback_timeout = 0 else @fallback_timeout = timeout.to_i end @valid = nil end
def initialize(uri = nil, fallback_timeout = 0)
def initialize(uri = nil, fallback_timeout = 0) self.uri = uri self.fallback_timeout = fallback_timeout @valid = nil end
def uri=(uri)
def uri=(uri) @uri = if uri.nil? nil else URI(uri.to_s) end @valid = nil end
def valid?
def valid? return false if @uri.nil? return @valid unless @valid.nil? false end
def validate!(probe = nil)
def validate!(probe = nil) @valid = false if uri.nil? if @valid.nil? @valid = fallback_timeout == 0 || (probe || TCPSocketProbe.new).replies?(self) end self end