module QueryLimit::SequelExtension

Public Instance Methods

log_connection_yield(sql, conn, args = nil) click to toggle source
Calls superclass method
# File lib/query_limit/sequel_extension.rb, line 9
def log_connection_yield(sql, conn, args = nil)
  broadcast(:sequel_query, sql, caller)
  super
end
with_query_limit(pattern, max:) { || ... } click to toggle source
# File lib/query_limit/sequel_extension.rb, line 14
def with_query_limit(pattern, max:)
  listener = QueryLimit::Listener.new

  Wisper.subscribe(listener, on: :sequel_query) { yield }

  raise QueryLimit::Errors::ExceedingMaxError if listener.stack.grep(pattern).size > max
end