class Commands::QueryRevision
Queries all revisions of a file.
Public Class Methods
command_name()
click to toggle source
# File lib/gdsh/query_revision.rb, line 11 def self.command_name 'query' end
function()
click to toggle source
# File lib/gdsh/query_revision.rb, line 19 def self.function 'Queries all revisions of a file.' end
new(client, params)
click to toggle source
Calls superclass method
Commands::Command::new
# File lib/gdsh/query_revision.rb, line 23 def initialize(client, params) super(client, params) @file_id = params[1] end
parameters()
click to toggle source
# File lib/gdsh/query_revision.rb, line 15 def self.parameters '(<file_id>)' end
Public Instance Methods
docx_link_label()
click to toggle source
# File lib/gdsh/query_revision.rb, line 61 def docx_link_label 'Download docx: '.colorize(:magenta) end
execute()
click to toggle source
# File lib/gdsh/query_revision.rb, line 83 def execute return if revisions.nil? puts_banner revisions.each do |r| puts_revision_info(r) end end
modified_date_label()
click to toggle source
# File lib/gdsh/query_revision.rb, line 49 def modified_date_label 'Modified: '.colorize(:magenta) end
modifying_user_label()
click to toggle source
# File lib/gdsh/query_revision.rb, line 53 def modifying_user_label 'Modifying User: '.colorize(:magenta) end
modifying_users()
click to toggle source
# File lib/gdsh/query_revision.rb, line 98 def modifying_users modifying_hash = {} revisions.each do |r| modifying_hash[r['id']] = r['lastModifyingUserName'] end modifying_hash end
pdf_link_label()
click to toggle source
# File lib/gdsh/query_revision.rb, line 57 def pdf_link_label 'Download pdf: '.colorize(:magenta) end
puts_download_links(revision)
click to toggle source
# File lib/gdsh/query_revision.rb, line 69 def puts_download_links(revision) puts pdf_link_label + "#{revision['exportLinks'][pdf]}" puts docx_link_label + "#{revision['exportLinks'][docx]}" puts txt_link_label + "#{revision['exportLinks'][txt]}" end
puts_revision_info(revision)
click to toggle source
# File lib/gdsh/query_revision.rb, line 75 def puts_revision_info(revision) puts revision_id_label + "#{revision['id']}" puts modified_date_label + "#{revision['modifiedDate']}" puts modifying_user_label + "#{revision['lastModifyingUserName']}" puts_download_links puts '' end
revision_id_label()
click to toggle source
# File lib/gdsh/query_revision.rb, line 45 def revision_id_label 'Revision id: '.colorize(:magenta) end
revisions()
click to toggle source
# File lib/gdsh/query_revision.rb, line 28 def revisions drive = @client.discovered_api('drive', 'v2') api_result = @client.execute( api_method: drive.revisions.list, parameters: { 'fileId' => @file_id }) if api_result.status == 200 api_result.data.items else puts drive_error_string end end
txt_link(revision)
click to toggle source
# File lib/gdsh/query_revision.rb, line 92 def txt_link(revision) rev = revisions.select { |r| r['id'] == revision } # should only have one element if revision exists rev.first['exportLinks'][txt] unless rev.empty? end
txt_link_label()
click to toggle source
# File lib/gdsh/query_revision.rb, line 65 def txt_link_label 'Download txt: '.colorize(:magenta) end