Class: Gzr::Commands::Project::Cat

Inherits:
Gzr::Command show all
Includes:
FileHelper, Project
Defined in:
lib/gzr/commands/project/cat.rb

Instance Method Summary collapse

Methods included from FileHelper

#read_file, #write_file

Methods included from Project

#all_git_branches, #all_projects, #cat_project, #create_git_deploy_key, #create_project, #deploy_to_production, #git_branch, #git_deploy_key, #trim_project, #update_git_branch, #update_project

Methods inherited from Gzr::Command

#all_color_collections, #color_collection, #color_palette_lookup!, #create_merge_query, #create_query, #default_color_collection, #field_expressions_eval, #field_names, #find_color_palette_reference, #find_vis_config_reference, #get_auth, #get_user_by_id, #keys_to_keep, #keys_to_keep_internal, #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, #read_token_data, #say_error, #say_ok, #say_warning, #sufficient_version?, #token_file, #update_auth, #with_session, #write_token_data

Constructor Details

#initialize(project_id, options) ⇒ Cat

Returns a new instance of Cat.



34
35
36
37
38
# File 'lib/gzr/commands/project/cat.rb', line 34

def initialize(project_id,options)
  super()
  @project_id = project_id
  @options = options
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
# File 'lib/gzr/commands/project/cat.rb', line 40

def execute(input: $stdin, output: $stdout)
  say_warning(@options) if @options[:debug]
  with_session do
    data = cat_project(@project_id)
    if data.nil?
      say_warning "Project #{@project_id} not found"
      return
    end
    data = trim_project(data) if @options[:trim]

    write_file(@options[:dir] ? "Project_#{data[:id]}.json" : nil, @options[:dir],nil, output) do |f|
      f.puts JSON.pretty_generate(data)
    end
  end
end