Sha256: 7f77a1a6b0d7b793e80b6661b90484d1ab30387d7ba86d8131179de05288b0cd

Contents?: true

Size: 591 Bytes

Versions: 14

Compression:

Stored size: 591 Bytes

Contents

module Octopus
  module CollectionProxy
    def self.included(base)
      base.send(:include, Octopus::ShardTracking::Dynamic)
      base.sharded_methods :any?, :build, :count, :create, :create!, :concat, :delete, :delete_all,
                           :destroy, :destroy_all, :empty?, :find, :first, :include?, :last, :length,
                           :many?, :pluck, :replace, :select, :size, :sum, :to_a, :uniq
    end

    def current_shard
      @association.owner.current_shard
    end
  end
end

ActiveRecord::Associations::CollectionProxy.send(:include, Octopus::CollectionProxy)

Version data entries

14 entries across 14 versions & 4 rubygems

Version Path
ar-octopus-ruby-3-0.11.3 lib/octopus/collection_proxy.rb
ar-octopus-ruby-3-0.11.2 lib/octopus/collection_proxy.rb
ar-octopus-0.10.2 lib/octopus/collection_proxy.rb
ar-octopus-0.10.1 lib/octopus/collection_proxy.rb
ar-octopus-0.10.0 lib/octopus/collection_proxy.rb
ar-octopus-master-0.9.2.1 lib/octopus/collection_proxy.rb
ar-octopus-0.9.2 lib/octopus/collection_proxy.rb
ar-octopus-0.9.1 lib/octopus/collection_proxy.rb
ar-octopus-0.9.0 lib/octopus/collection_proxy.rb
misha-ar-octopus-0.8.7 lib/octopus/collection_proxy.rb
misha-ar-octopus-0.8.5 lib/octopus/collection_proxy.rb
ar-octopus-0.8.5 lib/octopus/collection_proxy.rb
ar-octopus-0.8.4 lib/octopus/collection_proxy.rb
ar-octopus-0.8.3 lib/octopus/collection_proxy.rb