class Moderation::Storage::InMemory

Attributes

limit[RW]

Public Class Methods

new(limit = Moderation::DEFAULT_LIMIT) click to toggle source
# File lib/moderation/storage/in_memory.rb, line 6
def initialize(limit = Moderation::DEFAULT_LIMIT)
  @limit = limit
end

Public Instance Methods

all(options = {}) click to toggle source
# File lib/moderation/storage/in_memory.rb, line 18
def all(options = {})
  fetch_limit = options.fetch(:limit, limit)
  data.first(fetch_limit)
end
insert(item) click to toggle source
# File lib/moderation/storage/in_memory.rb, line 10
def insert(item)
  data.unshift(item)
  if data.count > @limit
    data.pop(data.count - @limit)
  end
  data
end

Private Instance Methods

data() click to toggle source
# File lib/moderation/storage/in_memory.rb, line 25
def data
  @data ||= []
end