class Fusuma::Plugin::Buffers::Buffer

buffer events and output

Attributes

events[R]

Public Class Methods

new(*args) click to toggle source
Calls superclass method
# File lib/fusuma/plugin/buffers/buffer.rb, line 10
def initialize(*args)
  super()
  @events = Array.new(*args)
end

Public Instance Methods

buffer(event) click to toggle source

@param event [Event]

# File lib/fusuma/plugin/buffers/buffer.rb, line 23
def buffer(event)
  return if event&.tag != source

  @events.push(event)
end
clear() click to toggle source

clear buffer

# File lib/fusuma/plugin/buffers/buffer.rb, line 34
def clear
  @events.clear
end
clear_expired(current_time: Time.now) click to toggle source

clear old events @param current_time [Time]

# File lib/fusuma/plugin/buffers/buffer.rb, line 31
def clear_expired(current_time: Time.now); end
source() click to toggle source

Set source for tag from config.yml. DEFAULT_SOURCE is defined in each plugins.

# File lib/fusuma/plugin/buffers/buffer.rb, line 40
def source
  @source ||= config_params(:source) || self.class.const_get('DEFAULT_SOURCE')
end
type() click to toggle source

@return [String]

# File lib/fusuma/plugin/buffers/buffer.rb, line 18
def type
  @type ||= self.class.name.underscore.split('/').last.gsub('_buffer', '')
end