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.
164 165 166 167 |
# File 'lib/fluent/event_router.rb', line 164 def initialize(filters = []) @filters = filters @optimizable = nil end |
Instance Method Details
#filter_stream(tag, es) ⇒ Object
174 175 176 177 178 179 180 |
# File 'lib/fluent/event_router.rb', line 174 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
169 170 171 172 |
# File 'lib/fluent/event_router.rb', line 169 def filters=(filters) @filters = filters reset_optimization end |