Module: Datasource::Adapters::ActiveRecord::Model::ClassMethods
- Defined in:
- lib/datasource/adapters/active_record.rb
Instance Method Summary collapse
- #datasource_module(&block) ⇒ Object
- #default_datasource ⇒ Object
- #for_serializer(serializer = nil) ⇒ Object
- #with_datasource(datasource = nil) ⇒ Object
Instance Method Details
#datasource_module(&block) ⇒ Object
73 74 75 |
# File 'lib/datasource/adapters/active_record.rb', line 73 def datasource_module(&block) default_datasource.instance_exec(&block) end |
#default_datasource ⇒ Object
69 70 71 |
# File 'lib/datasource/adapters/active_record.rb', line 69 def default_datasource @default_datasource ||= Class.new(Datasource::From(self)) end |
#for_serializer(serializer = nil) ⇒ Object
51 52 53 54 55 56 57 58 |
# File 'lib/datasource/adapters/active_record.rb', line 51 def for_serializer(serializer = nil) scope = if all.respond_to?(:use_datasource_serializer) all else all.extending(ScopeExtensions).use_datasource(default_datasource) end scope.use_datasource_serializer(serializer || Datasource::Base.consumer_adapter.get_serializer_for(Adapters::ActiveRecord.scope_to_class(scope))) end |
#with_datasource(datasource = nil) ⇒ Object
60 61 62 63 64 65 66 67 |
# File 'lib/datasource/adapters/active_record.rb', line 60 def with_datasource(datasource = nil) scope = if all.respond_to?(:use_datasource) all else all.extending(ScopeExtensions) end scope.use_datasource(datasource || default_datasource) end |