# File lib/starfish.rb, line 186 def negotiatenegotiatenegotiate begin @ring_server = RingFinger.primary rescue RuntimeError => m # allow multiple un-cached calls to RingFinger.finger def RingFinger.finger @@finger = self.new @@finger.lookup_ring_any @@finger end spawn @retry_count += 1 if @retry_count <= 5 retry else raise RuntimeError, m end end end