class SharedSettings::UI::Actions::Setting
Public Class Methods
route_regex()
click to toggle source
# File lib/shared_settings/ui/actions/setting.rb, line 7 def self.route_regex %r{\A/api/settings(/(?<setting_name>\w*))?(/destroy)?\Z} end
Public Instance Methods
delete()
click to toggle source
# File lib/shared_settings/ui/actions/setting.rb, line 39 def delete SharedSettings.delete(@params['setting_name']) [200, headers, ['']] end
get()
click to toggle source
# File lib/shared_settings/ui/actions/setting.rb, line 11 def get all_settings_as_json = JSON.dump(SharedSettings.all.map(&:to_h)) [200, headers, [all_settings_as_json]] end
post()
click to toggle source
# File lib/shared_settings/ui/actions/setting.rb, line 17 def post create_or_update_setting( @params['name'], @params['type'], @params['value'], @params['encrypted'] ) [201, headers, ['']] end
put()
click to toggle source
# File lib/shared_settings/ui/actions/setting.rb, line 28 def put create_or_update_setting( @params['setting_name'], @params['type'], @params['value'], @params['encrypted'] ) [201, headers, ['']] end
Private Instance Methods
create_or_update_setting(name, type, value, encrypted)
click to toggle source
# File lib/shared_settings/ui/actions/setting.rb, line 47 def create_or_update_setting(name, type, value, encrypted) SharedSettings.put( name, SharedSettings::Setting.deserialize_value(value, type), encrypt: !!encrypted ) end