Class: Harbinger::DatabaseChannelMessage

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/harbinger/database_channel_message.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.search(params = {}) ⇒ Object



26
27
28
29
30
# File 'app/models/harbinger/database_channel_message.rb', line 26

def self.search(params = {})
  search_text(params[:q]).
    search_state(params[:state]).
    ordered
end

.store_message(message, storage = new) ⇒ Object



17
18
19
20
21
22
23
24
# File 'app/models/harbinger/database_channel_message.rb', line 17

def self.store_message(message, storage = new)
  storage.contexts = message.contexts
  storage.state = 'new'
  message.attributes.each do |key, value|
    storage.elements.build(key: key, value: value)
  end
  storage.save!
end

Instance Method Details

#contextsObject



13
14
15
# File 'app/models/harbinger/database_channel_message.rb', line 13

def contexts
  super.split(',')
end

#contexts=(values) ⇒ Object



9
10
11
# File 'app/models/harbinger/database_channel_message.rb', line 9

def contexts=(values)
  super(Array.wrap(values).join(','))
end