Sha256: 6aabdafb1430305c5cedb47706031ef00aa993cc2973b7f78fbe6416856b9b81

Contents?: true

Size: 1.52 KB

Versions: 1

Compression:

Stored size: 1.52 KB

Contents

# encoding: UTF-8
module MongoMapper
  module Plugins
    def plugins
      @plugins ||= []
    end

    def plugin(mod)
      extend mod::ClassMethods     if mod.const_defined?(:ClassMethods)
      include mod::InstanceMethods if mod.const_defined?(:InstanceMethods)
      mod.configure(self)          if mod.respond_to?(:configure)
      plugins << mod
    end

    autoload :Callbacks,      'mongo_mapper/plugins/callbacks'
    autoload :Clone,          'mongo_mapper/plugins/clone'
    autoload :Descendants,    'mongo_mapper/plugins/descendants'
    autoload :Dirty,          'mongo_mapper/plugins/dirty'
    autoload :Equality,       'mongo_mapper/plugins/equality'
    autoload :IdentityMap,    'mongo_mapper/plugins/identity_map'
    autoload :Inspect,        'mongo_mapper/plugins/inspect'
    autoload :Keys,           'mongo_mapper/plugins/keys'
    autoload :Logger,         'mongo_mapper/plugins/logger'
    autoload :Modifiers,      'mongo_mapper/plugins/modifiers'
    autoload :Persistence,    'mongo_mapper/plugins/persistence'
    autoload :Protected,      'mongo_mapper/plugins/protected'
    autoload :Rails,          'mongo_mapper/plugins/rails'
    autoload :Serialization,  'mongo_mapper/plugins/serialization'
    autoload :Timestamps,     'mongo_mapper/plugins/timestamps'
    autoload :Userstamps,     'mongo_mapper/plugins/userstamps'
    autoload :Validations,    'mongo_mapper/plugins/validations'
  end
end

require 'mongo_mapper/plugins/associations'
require 'mongo_mapper/plugins/pagination'

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mongo_mapper_ign-0.7.8 lib/mongo_mapper/plugins.rb