модуль DRb::DRbProtocol
Публичные методы класса
# File lib/drb/drb.rb, line 725 def add_protocol(prot) @protocol.push(prot) end
Добавить новый протокол в модуль DRbProtocol.
# File lib/drb/drb.rb, line 737
def open(uri, config, first=true)
@protocol.each do |prot|
begin
return prot.open(uri, config)
rescue DRbBadScheme
rescue DRbConnError
raise($!)
rescue
raise(DRbConnError, "#{uri} - #{$!.inspect}")
end
end
if first && (config[:auto_load] != false)
auto_load(uri)
return open(uri, config, false)
end
raise DRbBadURI, 'can\t parse uri:' + uri
end Открыть клиентское соединение с uri с конфигурацией config.
Модуль DRbProtocol по очереди запрашивает каждый зарегистрированный протокол, чтобы тот попытался открыть URI. Каждый протокол сигнализирует о том, что он не обрабатывает этот URI, выбросив ошибку DRbBadScheme. Если ни один протокол не распознаёт URI, то возникает ошибка DRbBadURI. Если протокол принимает URI, но при открытии возникает ошибка, то возбуждается ошибка DRbConnError.
# File lib/drb/drb.rb, line 765
def open_server(uri, config, first=true)
@protocol.each do |prot|
begin
return prot.open_server(uri, config)
rescue DRbBadScheme
end
end
if first && (config[:auto_load] != false)
auto_load(uri)
return open_server(uri, config, false)
end
raise DRbBadURI, 'can\t parse uri:' + uri
end Открыть сервер, ожидающий подключений по uri с конфигурацией config.
Модуль DRbProtocol по очереди запрашивает каждый зарегистрированный протокол, чтобы тот попытался открыть сервер по URI. Каждый протокол сигнализирует о том, что он не обрабатывает этот URI, выбросив ошибку DRbBadScheme. Если ни один протокол не распознаёт URI, то возникает ошибка DRbBadURI. Если протокол принимает URI, но при открытии возникает ошибка, то ошибка передаётся в вызывающий метод.
# File lib/drb/drb.rb, line 786
def uri_option(uri, config, first=true)
@protocol.each do |prot|
begin
uri, opt = prot.uri_option(uri, config)
# opt = nil if opt == ''
return uri, opt
rescue DRbBadScheme
end
end
if first && (config[:auto_load] != false)
auto_load(uri)
return uri_option(uri, config, false)
end
raise DRbBadURI, 'can\t parse uri:' + uri
end Распарсить uri в пару [uri, option].
Модуль DRbProtocol по очереди запрашивает каждый зарегистрированный протокол, чтобы тот попытался распарсить URI. Каждый протокол сигнализирует о том, что он не обрабатывает этот URI, выбросив ошибку DRbBadScheme. Если ни один протокол не распознаёт URI, то возникает ошибка DRbBadURI.
Приватные методы экземпляра
# File lib/drb/drb.rb, line 725 def add_protocol(prot) @protocol.push(prot) end
Добавить новый протокол в модуль DRbProtocol.
# File lib/drb/drb.rb, line 737
def open(uri, config, first=true)
@protocol.each do |prot|
begin
return prot.open(uri, config)
rescue DRbBadScheme
rescue DRbConnError
raise($!)
rescue
raise(DRbConnError, "#{uri} - #{$!.inspect}")
end
end
if first && (config[:auto_load] != false)
auto_load(uri)
return open(uri, config, false)
end
raise DRbBadURI, 'can\t parse uri:' + uri
end Открыть клиентское соединение с uri с конфигурацией config.
Модуль DRbProtocol по очереди запрашивает каждый зарегистрированный протокол, чтобы тот попытался открыть URI. Каждый протокол сигнализирует о том, что он не обрабатывает этот URI, выбросив ошибку DRbBadScheme. Если ни один протокол не распознаёт URI, то возникает ошибка DRbBadURI. Если протокол принимает URI, но при открытии возникает ошибка, то возбуждается ошибка DRbConnError.
# File lib/drb/drb.rb, line 765
def open_server(uri, config, first=true)
@protocol.each do |prot|
begin
return prot.open_server(uri, config)
rescue DRbBadScheme
end
end
if first && (config[:auto_load] != false)
auto_load(uri)
return open_server(uri, config, false)
end
raise DRbBadURI, 'can\t parse uri:' + uri
end Открыть сервер, ожидающий подключений по uri с конфигурацией config.
Модуль DRbProtocol по очереди запрашивает каждый зарегистрированный протокол, чтобы тот попытался открыть сервер по URI. Каждый протокол сигнализирует о том, что он не обрабатывает этот URI, выбросив ошибку DRbBadScheme. Если ни один протокол не распознаёт URI, то возникает ошибка DRbBadURI. Если протокол принимает URI, но при открытии возникает ошибка, то ошибка передаётся в вызывающий метод.
# File lib/drb/drb.rb, line 786
def uri_option(uri, config, first=true)
@protocol.each do |prot|
begin
uri, opt = prot.uri_option(uri, config)
# opt = nil if opt == ''
return uri, opt
rescue DRbBadScheme
end
end
if first && (config[:auto_load] != false)
auto_load(uri)
return uri_option(uri, config, false)
end
raise DRbBadURI, 'can\t parse uri:' + uri
end Распарсить uri в пару [uri, option].
Модуль DRbProtocol по очереди запрашивает каждый зарегистрированный протокол, чтобы тот попытался распарсить URI. Каждый протокол сигнализирует о том, что он не обрабатывает этот URI, выбросив ошибку DRbBadScheme. Если ни один протокол не распознаёт URI, то возникает ошибка DRbBadURI.
Ruby Core © 1993–2017 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.