class Rinda::RingProvider - rinda: Ruby Standard Library Documentation

# class Rinda::RingProvider

`RingProvider` uses a `RingServer` advertised `TupleSpace` as a name service. `TupleSpace` clients can register themselves with the remote `TupleSpace` and look up other provided services via the remote `TupleSpace`.

Services are registered with a tuple of the format [:name, klass, DRbObject, description].

### Public Class Methods

new(klass, front, desc, renewer = nil) click to toggle source

Creates a `RingProvider` that will provide a `klass` service running on `front`, with a `description`. `renewer` is optional.

    # 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

### Public Instance Methods

provide() click to toggle source

Advertises this service on the primary remote `TupleSpace`.

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