Class: EventRepository

Inherits:
Object
  • Object
show all
Defined in:
lib/models/event.rb

Instance Method Summary collapse

Instance Method Details

#allObject



37
38
39
40
41
# File 'lib/models/event.rb', line 37

def all
  db.get_list('events').map do |item|
    find(item)
  end
end

#by_name(name) ⇒ Object



43
44
45
46
47
# File 'lib/models/event.rb', line 43

def by_name(name)
  db.get_list("events-#{name}").map do |item|
    find(item)
  end
end

#by_user(user) ⇒ Object



49
50
51
52
53
# File 'lib/models/event.rb', line 49

def by_user(user)
  db.get_list("events-#{user}").map do |item|
    find(item)
  end
end

#create(event) ⇒ Object



28
29
30
31
32
33
34
35
# File 'lib/models/event.rb', line 28

def create(event)
  event_id = event.id

  update(event)
  db.add_to_list("events", event_id)
  db.add_to_list("events-#{event.name}", event_id)
  db.add_to_list("user-events-#{event.user}", event_id)
end

#dbObject



24
25
26
# File 'lib/models/event.rb', line 24

def db
  @db ||= Storage.instance.build('monitor')
end

#find(id) ⇒ Object



55
56
57
# File 'lib/models/event.rb', line 55

def find(id)
  EventFactory.build(db.get(id))
end

#update(event) ⇒ Object



59
60
61
62
63
64
65
66
67
68
69
70
71
# File 'lib/models/event.rb', line 59

def update(event)
  attrs = {
    :id => event.id,
    :name => event.name.to_sym,
    :user => event.user,
    :time => event.time,
    :params => event.params
  }

  event_id = event.id

  db.set(event_id, attrs)
end