Sha256: b3a802f547ec68cec29026ad9abbf5edf252a347dc0395e18cb559d0f3d3720a

Contents?: true

Size: 736 Bytes

Versions: 7

Compression:

Stored size: 736 Bytes

Contents

module Mongoo
  module Embedded
    class Base < Mongoo::Core

      def initialize(parent, hash={}, key=nil)
        @parent    = parent
        @persisted = persisted?
        @key       = key
        init_from_hash(hash)
      end

      def key
        @key
      end

      def persisted?
        @parent.persisted?
      end

      def db
        @parent.db
      end

      def conn
        @parent.conn
      end

      def collection_name
        @parent.collection_name
      end

      def ==(other)
        to_hash == other.to_hash
      end

      %w(update update! insert insert! save save!).each do |meth|
        define_method(meth) do |*args|
          @parent.send(meth, *args)
        end
      end

    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
mongoo-0.5.7 lib/mongoo/embedded/base.rb
mongoo-0.5.6 lib/mongoo/embedded/base.rb
mongoo-0.5.5 lib/mongoo/embedded/base.rb
mongoo-0.5.4 lib/mongoo/embedded/base.rb
mongoo-0.5.3 lib/mongoo/embedded/base.rb
mongoo-0.5.2 lib/mongoo/embedded/base.rb
mongoo-0.5.1 lib/mongoo/embedded/base.rb