Module: PostJson::SettingsMethods::ClassMethods
- Defined in:
- lib/post_json/concerns/settings_methods.rb
Instance Method Summary collapse
- #create_dynamic_index_milliseconds_threshold ⇒ Object
- #create_dynamic_index_milliseconds_threshold=(millisecs) ⇒ Object
- #created_at_attribute_name ⇒ Object
- #created_at_attribute_name=(attribute_name) ⇒ Object
- #include_version_number ⇒ Object
- #include_version_number=(value) ⇒ Object
- #meta ⇒ Object
- #meta=(hash) ⇒ Object
- #persisted_settings ⇒ Object
- #read_settings_attribute(attribute_name) ⇒ Object
- #reload_settings! ⇒ Object
- #settings ⇒ Object
- #updated_at_attribute_name ⇒ Object
- #updated_at_attribute_name=(attribute_name) ⇒ Object
- #use_dynamic_index ⇒ Object
- #use_dynamic_index=(value) ⇒ Object
- #use_timestamps ⇒ Object (also: #record_timestamps)
- #use_timestamps=(value) ⇒ Object (also: #record_timestamps=)
- #version_attribute_name ⇒ Object
- #version_attribute_name=(attribute_name) ⇒ Object
- #write_settings_attribute(attribute_name, value) ⇒ Object
Instance Method Details
#create_dynamic_index_milliseconds_threshold ⇒ Object
102 103 104 |
# File 'lib/post_json/concerns/settings_methods.rb', line 102 def create_dynamic_index_milliseconds_threshold read_settings_attribute('create_dynamic_index_milliseconds_threshold') end |
#create_dynamic_index_milliseconds_threshold=(millisecs) ⇒ Object
106 107 108 |
# File 'lib/post_json/concerns/settings_methods.rb', line 106 def create_dynamic_index_milliseconds_threshold=(millisecs) write_settings_attribute('create_dynamic_index_milliseconds_threshold', millisecs) end |
#created_at_attribute_name ⇒ Object
62 63 64 |
# File 'lib/post_json/concerns/settings_methods.rb', line 62 def created_at_attribute_name read_settings_attribute('created_at_attribute_name') end |
#created_at_attribute_name=(attribute_name) ⇒ Object
66 67 68 |
# File 'lib/post_json/concerns/settings_methods.rb', line 66 def created_at_attribute_name=(attribute_name) write_settings_attribute('created_at_attribute_name', attribute_name) end |
#include_version_number ⇒ Object
78 79 80 |
# File 'lib/post_json/concerns/settings_methods.rb', line 78 def include_version_number read_settings_attribute('include_version_number') end |
#include_version_number=(value) ⇒ Object
82 83 84 |
# File 'lib/post_json/concerns/settings_methods.rb', line 82 def include_version_number=(value) write_settings_attribute('include_version_number', value) end |
#meta ⇒ Object
43 44 45 |
# File 'lib/post_json/concerns/settings_methods.rb', line 43 def HashWithIndifferentAccess.new(read_settings_attribute('meta')) end |
#meta=(hash) ⇒ Object
47 48 49 |
# File 'lib/post_json/concerns/settings_methods.rb', line 47 def (hash) write_settings_attribute('meta', HashWithIndifferentAccess.new(hash)) end |
#persisted_settings ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/post_json/concerns/settings_methods.rb', line 10 def persisted_settings if settings.new_record? existing = ModelSettings.by_collection(collection_name).first if existing updates = settings.changes.inject({}) {|result, (k,v)| result[k] = v[1]; result} existing.update_attributes(updates) @settings = existing else settings.save! end end settings end |
#read_settings_attribute(attribute_name) ⇒ Object
29 30 31 32 |
# File 'lib/post_json/concerns/settings_methods.rb', line 29 def read_settings_attribute(attribute_name) attribute_name = attribute_name.to_s settings[attribute_name] end |
#reload_settings! ⇒ Object
24 25 26 27 |
# File 'lib/post_json/concerns/settings_methods.rb', line 24 def reload_settings! @settings = nil settings end |
#settings ⇒ Object
6 7 8 |
# File 'lib/post_json/concerns/settings_methods.rb', line 6 def settings @settings ||= ModelSettings.by_collection(collection_name).first_or_initialize(collection_name: collection_name) end |
#updated_at_attribute_name ⇒ Object
70 71 72 |
# File 'lib/post_json/concerns/settings_methods.rb', line 70 def updated_at_attribute_name read_settings_attribute('updated_at_attribute_name') end |
#updated_at_attribute_name=(attribute_name) ⇒ Object
74 75 76 |
# File 'lib/post_json/concerns/settings_methods.rb', line 74 def updated_at_attribute_name=(attribute_name) write_settings_attribute('updated_at_attribute_name', attribute_name) end |
#use_dynamic_index ⇒ Object
94 95 96 |
# File 'lib/post_json/concerns/settings_methods.rb', line 94 def use_dynamic_index read_settings_attribute('use_dynamic_index') end |
#use_dynamic_index=(value) ⇒ Object
98 99 100 |
# File 'lib/post_json/concerns/settings_methods.rb', line 98 def use_dynamic_index=(value) write_settings_attribute('use_dynamic_index', value) end |
#use_timestamps ⇒ Object Also known as: record_timestamps
51 52 53 |
# File 'lib/post_json/concerns/settings_methods.rb', line 51 def read_settings_attribute('use_timestamps') end |
#use_timestamps=(value) ⇒ Object Also known as: record_timestamps=
55 56 57 |
# File 'lib/post_json/concerns/settings_methods.rb', line 55 def (value) write_settings_attribute('use_timestamps', value) end |
#version_attribute_name ⇒ Object
86 87 88 |
# File 'lib/post_json/concerns/settings_methods.rb', line 86 def version_attribute_name read_settings_attribute('version_attribute_name') end |
#version_attribute_name=(attribute_name) ⇒ Object
90 91 92 |
# File 'lib/post_json/concerns/settings_methods.rb', line 90 def version_attribute_name=(attribute_name) write_settings_attribute('version_attribute_name', attribute_name) end |
#write_settings_attribute(attribute_name, value) ⇒ Object
34 35 36 37 38 39 40 41 |
# File 'lib/post_json/concerns/settings_methods.rb', line 34 def write_settings_attribute(attribute_name, value) attribute_name = attribute_name.to_s if settings[attribute_name] != value settings[attribute_name] = value settings.save! end value end |