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
Returns a new instance of FilterOptimizer.
157 158 159 160 |
# File 'lib/fluent/event_router.rb', line 157 def initialize(filters = []) @filters = filters @optimizable = nil end |
Instance Method Details
#filter_stream(tag, es) ⇒ Object
167 168 169 170 171 172 173 |
# File 'lib/fluent/event_router.rb', line 167 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
162 163 164 165 |
# File 'lib/fluent/event_router.rb', line 162 def filters=(filters) @filters = filters reset_optimization end |