Class: Mysql2QueryFilter::QueryFilter
- Inherits:
-
Object
- Object
- Mysql2QueryFilter::QueryFilter
- Defined in:
- lib/mysql2_query_filter/query_filter.rb
Instance Method Summary collapse
- #add(filter_class, options = {}) ⇒ Object
- #filter(sql, query_options) ⇒ Object
-
#initialize ⇒ QueryFilter
constructor
A new instance of QueryFilter.
- #plugin(name, options = {}) ⇒ Object
Constructor Details
#initialize ⇒ QueryFilter
Returns a new instance of QueryFilter.
2 3 4 |
# File 'lib/mysql2_query_filter/query_filter.rb', line 2 def initialize @filters = [] end |
Instance Method Details
#add(filter_class, options = {}) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/mysql2_query_filter/query_filter.rb', line 11 def add(filter_class, = {}) unless filter_class < Mysql2QueryFilter::Plugin::Filter raise "Invalid plug-in has been appended: #{filter_class}" end @filters << filter_class.new() end |
#filter(sql, query_options) ⇒ Object
19 20 21 22 23 |
# File 'lib/mysql2_query_filter/query_filter.rb', line 19 def filter(sql, ) @filters.each do |fltr| fltr.filter(sql, ) end end |
#plugin(name, options = {}) ⇒ Object
6 7 8 9 |
# File 'lib/mysql2_query_filter/query_filter.rb', line 6 def plugin(name, = {}) filter_class = Mysql2QueryFilter::Plugin.get(name) add(filter_class, ) end |