Sha256: 32d1f38a00c0b88705b0e1b52a49bfe4f17331e15f2169e476dc335215e21f0e

Contents?: true

Size: 546 Bytes

Versions: 1

Compression:

Stored size: 546 Bytes

Contents

class Mysql2QueryFilter::QueryFilter
  def initialize
    @filters = []
  end

  def plugin(name, options = {})
    filter_class = Mysql2QueryFilter::Plugins[name]
    append(filter_class, options)
  end

  def append(filter_class, options = {})
    unless filter_class < Mysql2QueryFilter::Plugin::Filter
      raise "Invalid plug-in has been appended: #{filter_class}"
    end

    @filters << filter_class.new(options)
  end

  def filter(sql, query_options)
    @filters.each do |fltr|
      fltr.filter(sql, query_options)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mysql2_query_filter-0.0.3 lib/mysql2_query_filter/query_filter.rb