Module: Octopus::AssociationShardTracking
- Defined in:
- lib/octopus/association_shard_tracking.rb
Defined Under Namespace
Modules: InstanceMethods
Class Method Summary collapse
Instance Method Summary collapse
- #default_octopus_opts(options) ⇒ Object
- #has_and_belongs_to_many(association_id, options = {}, &extension) ⇒ Object
- #has_many(association_id, options = {}, &extension) ⇒ Object
Class Method Details
.extended(base) ⇒ Object
3 4 5 |
# File 'lib/octopus/association_shard_tracking.rb', line 3 def self.extended(base) base.send(:include, InstanceMethods) end |
Instance Method Details
#default_octopus_opts(options) ⇒ Object
50 51 52 53 |
# File 'lib/octopus/association_shard_tracking.rb', line 50 def default_octopus_opts() [:before_add] = [ :connection_on_association=, [:before_add] ].compact.flatten [:before_remove] = [ :connection_on_association=, [:before_remove] ].compact.flatten end |
#has_and_belongs_to_many(association_id, options = {}, &extension) ⇒ Object
29 30 31 32 33 34 35 36 |
# File 'lib/octopus/association_shard_tracking.rb', line 29 def has_and_belongs_to_many(association_id, scope = nil, = {}, &extension) if == {} && scope.is_a?(Hash) default_octopus_opts(scope) else default_octopus_opts() end super end |
#has_many(association_id, options = {}, &extension) ⇒ Object
20 21 22 23 24 25 26 27 |
# File 'lib/octopus/association_shard_tracking.rb', line 20 def has_many(association_id, scope = nil, = {}, &extension) if == {} && scope.is_a?(Hash) default_octopus_opts(scope) else default_octopus_opts() end super end |