Module: Protector::Adapters::Sequel

Defined in:
lib/protector/adapters/sequel.rb,
lib/protector/adapters/sequel/model.rb,
lib/protector/adapters/sequel/dataset.rb,
lib/protector/adapters/sequel/eager_graph_loader.rb

Overview

Sequel adapter

Defined Under Namespace

Modules: Dataset, EagerGraphLoader, Model

Class Method Summary collapse

Class Method Details

.activate!Object

YIP YIP! Monkey-Patch the Sequel.



10
11
12
13
14
15
16
# File 'lib/protector/adapters/sequel.rb', line 10

def self.activate!
  return false unless defined?(::Sequel)

  ::Sequel::Model.send :include, Protector::Adapters::Sequel::Model
  ::Sequel::Dataset.send :include, Protector::Adapters::Sequel::Dataset
  ::Sequel::Model::Associations::EagerGraphLoader.send :include, Protector::Adapters::Sequel::EagerGraphLoader
end

.is?(instance) ⇒ Boolean

Returns:

  • (Boolean)


18
19
20
21
# File 'lib/protector/adapters/sequel.rb', line 18

def self.is?(instance)
  instance.kind_of?(::Sequel::Dataset) ||
  (instance.kind_of?(Class) && instance < ::Sequel::Model)
end

.null_procObject



23
24
25
# File 'lib/protector/adapters/sequel.rb', line 23

def self.null_proc
  @null_proc ||= proc { where('1=0') }
end