Module: Enygma::Resource

Defined in:
lib/enygma/resource.rb

Defined Under Namespace

Classes: InvalidInclusionClass

Class Method Summary collapse

Class Method Details

.included(base) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/enygma/resource.rb', line 7

def included(base)
  if defined?(ActiveRecord) && base.ancestors.include?(ActiveRecord::Base)
    configure_for_active_record(base)
  elsif defined?(Sequel) && base.ancestors.include?(Sequel::Model)
    configure_for_sequel_model(base)
  elsif defined?(Datamapper) && base.included_modules.include?(Datamapper::Resource)
    configure_for_datamapper_resource(base)
  else
    raise InvalidInclusionClass, "Enygma::Resource has to be included in a subclass of ActiveRecord::Base or Sequel::Model or a class including Datamapper::Resource! You might want to try just including Enygma."
  end
end