Sha256: bcb55d78e9f1706389d289c1f42051bbe2c2d61a31fd901ef7d9a80369be1997

Contents?: true

Size: 543 Bytes

Versions: 5

Compression:

Stored size: 543 Bytes

Contents

# encoding: UTF-8
module MongoMapper
  module Plugins
    module Safe
      extend ActiveSupport::Concern

      module ClassMethods
        def inherited(subclass)
          super
          subclass.safe if safe?
        end

        def safe
          @safe = true
        end

        def safe?
          @safe == true
        end
      end

      module InstanceMethods
        def save_to_collection(options={})
          options[:safe] = self.class.safe? unless options.key?(:safe)
          super
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
mongo_mapper-0.10.1 lib/mongo_mapper/plugins/safe.rb
mongo_mapper-0.10.0 lib/mongo_mapper/plugins/safe.rb
mongo_mapper-0.9.2 lib/mongo_mapper/plugins/safe.rb
mongo_mapper-0.9.1 lib/mongo_mapper/plugins/safe.rb
mongo_mapper-0.9.0 lib/mongo_mapper/plugins/safe.rb