Class: Gzr::Commands::Look::Mv
- Inherits:
-
Gzr::Command
- Object
- Gzr::Command
- Gzr::Commands::Look::Mv
- Includes:
- Look
- Defined in:
- lib/gzr/commands/look/mv.rb
Instance Method Summary collapse
- #execute(input: $stdin, output: $stdout) ⇒ Object
-
#initialize(look_id, target_space_id, options) ⇒ Mv
constructor
A new instance of Mv.
Methods included from Look
#create_fetch_query, #create_look, #create_merge_result, #delete_look, #query_look, #search_looks_by_slug, #search_looks_by_title, #update_look, #upsert_look
Methods inherited from Gzr::Command
#all_color_collections, #color_collection, #color_palette_lookup!, #create_merge_query, #create_query, #default_color_collection, #field_expression, #field_names, #find_color_palette_reference, #find_vis_config_reference, #keys_to_keep, #merge_query, #pairs, #query, #render_csv, #rewrite_color_palette!, #run_inline_query, #update_color_palette!
Methods included from Session
#build_connection_hash, #login, #logout_all, #pastel, #say_error, #say_ok, #say_warning, #sufficient_version?, #with_session
Constructor Details
#initialize(look_id, target_space_id, options) ⇒ Mv
Returns a new instance of Mv.
33 34 35 36 37 38 |
# File 'lib/gzr/commands/look/mv.rb', line 33 def initialize(look_id, target_space_id, ) super() @look_id = look_id @target_space_id = target_space_id = end |
Instance Method Details
#execute(input: $stdin, output: $stdout) ⇒ Object
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/gzr/commands/look/mv.rb', line 40 def execute(input: $stdin, output: $stdout) say_warning("options: #{@options.inspect}", output: output) if [:debug] with_session do look = query_look(@look_id) raise Gzr::CLI::Error, "Look with id #{@look_id} does not exist" unless look matching_title = search_looks_by_title(look[:title],@target_space_id) if matching_title.empty? || matching_title.first[:deleted] matching_title = false end if matching_title raise Gzr::CLI::Error, "Look #{look[:title]} already exists in space #{@target_space_id}\nUse --force if you want to overwrite it" unless [:force] say_ok "Deleting existing look #{matching_title.first[:id]} #{matching_title.first[:title]} in space #{@target_space_id}", output: output update_look(matching_title.first[:id],{:deleted=>true}) end update_look(look[:id],{:space_id=>@target_space_id}) output.puts "Moved look #{look[:id]} to space #{@target_space_id}" unless [:plain] end end |