class Sniffer::Data
Data
class stores the data and controls capacity
Public Instance Methods
store(data_item)
click to toggle source
# File lib/sniffer/data.rb, line 6 def store(data_item) if config.rotate? rotate(data_item) else push(data_item) unless overflow? end end
Private Instance Methods
config()
click to toggle source
# File lib/sniffer/data.rb, line 25 def config Sniffer.config end
overflow?()
click to toggle source
# File lib/sniffer/data.rb, line 21 def overflow? config.capacity? && length >= config.capacity end
rotate(data_item)
click to toggle source
# File lib/sniffer/data.rb, line 16 def rotate(data_item) shift if overflow? push(data_item) end