类 Rinda::RingProvider

RingProvider 使用 RingServer 公告的 TupleSpace 作为名称服务。 TupleSpace 客户端可以向远程 TupleSpace 注册自己,并通过远程 TupleSpace 查找其他提供的服务。

服务使用以下格式的元组进行注册:[:name, klass, DRbObject, description]。

公共类方法

new(klass, front, desc, renewer = nil) 点击切换源代码

创建一个 RingProvider,它将提供在 front 上运行的 klass 服务,并带有 descriptionrenewer 是可选的。

# File lib/rinda/ring.rb, line 469
def initialize(klass, front, desc, renewer = nil)
  @tuple = [:name, klass, front, desc]
  @renewer = renewer || Rinda::SimpleRenewer.new
end

公共实例方法

provide() 点击切换源代码

在主远程 TupleSpace 上宣传此服务。

# File lib/rinda/ring.rb, line 477
def provide
  ts = Rinda::RingFinger.primary
  ts.write(@tuple, @renewer)
end