Module: NoDevent::Base

Defined in:
lib/nodevent.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.emit(name, message) ⇒ Object



17
18
19
# File 'lib/nodevent.rb', line 17

def emit(name, message)
  NoDevent::Emitter.emit(self.room, name, message)
end

.included(base) ⇒ Object



12
13
14
# File 'lib/nodevent.rb', line 12

def self.included(base)
  base.extend(NoDevent::Base)
end

.room(obj) ⇒ Object



20
21
22
# File 'lib/nodevent.rb', line 20

def room(obj)
  NoDevent::Emitter.room(self)
end

.room_key(expires) ⇒ Object



23
24
25
# File 'lib/nodevent.rb', line 23

def room_key(expires)
  Emitter.room_key(self.room, expires)
end

Instance Method Details

#emit(name, message = nil) ⇒ Object



28
29
30
# File 'lib/nodevent.rb', line 28

def emit(name, message=nil)
  Emitter.emit(self.room, name, message || self)
end

#nodevent_createObject



44
45
46
# File 'lib/nodevent.rb', line 44

def nodevent_create
  NoDevent::Emitter.emit(self.class.name, 'create', self)
end

#nodevent_updateObject



48
49
50
# File 'lib/nodevent.rb', line 48

def nodevent_update
  self.emit('update')
end

#roomObject



32
33
34
# File 'lib/nodevent.rb', line 32

def room
  Emitter.room(self)
end

#room_json(expires_after = HOUR) ⇒ Object



40
41
42
# File 'lib/nodevent.rb', line 40

def room_json(expires_after=HOUR)
  {room: room, key: room_key(Time.now + expires_after)}
end

#room_key(expires) ⇒ Object



36
37
38
# File 'lib/nodevent.rb', line 36

def room_key(expires)
  Emitter.room_key(self.room, expires)
end