module Sequel::Plugins::Sharding::DatasetMethods

  1. lib/sequel/plugins/sharding.rb
Parent: Sharding

Methods

Public Instance

  1. server

Public Instance methods

server (s)

If a row proc exists on the dataset, replace it with one that calls the previous row_proc, but calls set_server on the output of that row_proc, ensuring that objects retrieved by a specific shard know which shard they are tied to.

[show source]
# File lib/sequel/plugins/sharding.rb, line 98
def server(s)
  ds = super
  if rp = row_proc
    ds.row_proc = proc{|r| rp.call(r).set_server(s)}
  end
  ds
end