class Rinda::RingProvider

RingProvider 使用一个已公布的 RingServerTupleSpace 作为名称服务。TupleSpace 客户端可以在远程 TupleSpace 中注册自身,并通过远程 TupleSpace 查找其他提供的服务。

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

公共类方法

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

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

# File rinda-0.2.0/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 rinda-0.2.0/lib/rinda/ring.rb, line 477
def provide
  ts = Rinda::RingFinger.primary
  ts.write(@tuple, @renewer)
end