class HammerCLICsv::CsvCommand::SettingsCommand
Constants
- VALUE
Public Class Methods
supported?()
click to toggle source
# File lib/hammer_cli_csv/settings.rb, line 9 def self.supported? true end
Public Instance Methods
create_settings_from_csv(line)
click to toggle source
# File lib/hammer_cli_csv/settings.rb, line 31 def create_settings_from_csv(line) count(line[COUNT]).times do |number| name = namify(line[NAME], number) params = { 'id' => get_setting_id(name), 'setting' => { 'value' => line[VALUE] } } print "Updating setting '#{name}'..." if option_verbose? @api.resource(:settings).call(:update, params) end print "done\n" if option_verbose? end
export(csv)
click to toggle source
# File lib/hammer_cli_csv/settings.rb, line 13 def export(csv) csv << [NAME, VALUE] @api.resource(:settings).call(:index, { 'per_page' => 999999, 'search' => option_search })['results'].each do |setting| csv << [setting['name'], setting['value']] end end
import()
click to toggle source
# File lib/hammer_cli_csv/settings.rb, line 23 def import @existing = {} thread_import do |line| create_settings_from_csv(line) end end
Private Instance Methods
get_setting_id(name)
click to toggle source
# File lib/hammer_cli_csv/settings.rb, line 47 def get_setting_id(name) results = @api.resource(:settings).call(:index, { :search => "name=\"#{name}\"" })['results'] raise "Setting '#{name}' not found" if !results || results.empty? results[0]['id'] end