Module: Mongoid::Atomic::Paths::Embedded
- Defined in:
- lib/mongoid/atomic/paths/embedded.rb,
lib/mongoid/atomic/paths/embedded/one.rb,
lib/mongoid/atomic/paths/embedded/many.rb
Overview
:nodoc:
Defined Under Namespace
Instance Attribute Summary collapse
-
#delete_modifier ⇒ Object
readonly
Returns the value of attribute delete_modifier.
-
#document ⇒ Object
readonly
Returns the value of attribute document.
-
#insert_modifier ⇒ Object
readonly
Returns the value of attribute insert_modifier.
-
#parent ⇒ Object
readonly
Returns the value of attribute parent.
Instance Method Summary collapse
-
#path ⇒ String
Get the path to the document in the hierarchy.
-
#selector ⇒ Hash
Get the selector to use for the root document when performing atomic updates.
Instance Attribute Details
#delete_modifier ⇒ Object (readonly)
Returns the value of attribute delete_modifier.
12 13 14 |
# File 'lib/mongoid/atomic/paths/embedded.rb', line 12 def delete_modifier @delete_modifier end |
#document ⇒ Object (readonly)
Returns the value of attribute document.
12 13 14 |
# File 'lib/mongoid/atomic/paths/embedded.rb', line 12 def document @document end |
#insert_modifier ⇒ Object (readonly)
Returns the value of attribute insert_modifier.
12 13 14 |
# File 'lib/mongoid/atomic/paths/embedded.rb', line 12 def insert_modifier @insert_modifier end |
#parent ⇒ Object (readonly)
Returns the value of attribute parent.
12 13 14 |
# File 'lib/mongoid/atomic/paths/embedded.rb', line 12 def parent @parent end |
Instance Method Details
#path ⇒ String
Get the path to the document in the hierarchy.
22 23 24 |
# File 'lib/mongoid/atomic/paths/embedded.rb', line 22 def path position.sub(/\.\d+$/, "") end |
#selector ⇒ Hash
Get the selector to use for the root document when performing atomic updates. When sharding this will include the shard key.
35 36 37 38 39 |
# File 'lib/mongoid/atomic/paths/embedded.rb', line 35 def selector parent.atomic_selector. merge!({ "#{path}._id" => document.identifier || document._id }). merge!(document.shard_key_selector) end |