Class: Fluent::EventRouter::Pipeline::FilterOptimizer
- Inherits:
-
Object
- Object
- Fluent::EventRouter::Pipeline::FilterOptimizer
- Defined in:
- lib/fluent/event_router.rb
Instance Method Summary collapse
- #filter_stream(tag, es) ⇒ Object
- #filters=(filters) ⇒ Object
-
#initialize(filters = []) ⇒ FilterOptimizer
constructor
A new instance of FilterOptimizer.
Constructor Details
#initialize(filters = []) ⇒ FilterOptimizer
163 164 165 166 |
# File 'lib/fluent/event_router.rb', line 163 def initialize(filters = []) @filters = filters @optimizable = nil end |
Instance Method Details
#filter_stream(tag, es) ⇒ Object
173 174 175 176 177 178 179 |
# File 'lib/fluent/event_router.rb', line 173 def filter_stream(tag, es) if optimizable? optimized_filter_stream(tag, es) else @filters.reduce(es) { |acc, filter| filter.filter_stream(tag, acc) } end end |
#filters=(filters) ⇒ Object
168 169 170 171 |
# File 'lib/fluent/event_router.rb', line 168 def filters=(filters) @filters = filters reset_optimization end |