class GroupDocs::Questionnaire::Execution
Attributes
@attr [GroupDocs::User] approver
@attr [String] collector_guid
@attr [Integer] collector_id
@attr [Integer] datasource_id
@attr [GroupDocs::Storage::File] document
@attr [GroupDocs::User] executive
@attr [String] guid
@attr [Integer] id
@attr [Time] modified
@attr [GroupDocs::User] owner
@attr [String] questionnaire_name
@attr [Symbol] status
Public Class Methods
Returns execution by identifier.
@param [String] guid @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [GroupDocs::Questionnaire::Execution, nil]
# File lib/groupdocs/questionnaire/execution.rb, line 15 def self.get!(guid, access = {}) json = Api::Request.new do |request| request[:access] = access request[:method] = :GET request[:path] = "/merge/{{client_id}}/questionnaires/executions/#{guid}" end.execute! new(json[:execution]) rescue BadResponseError nil end
Public Instance Methods
Deletes execution.
@param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key
# File lib/groupdocs/questionnaire/execution.rb, line 140 def delete!(access = {}) Api::Request.new do |request| request[:access] = access request[:method] = :DELETE request[:path] = "/merge/{{client_id}}/questionnaires/executions/#{id}" end.execute! end
Converts document to GroupDocs::Document
object. @param [Hash] options
# File lib/groupdocs/questionnaire/execution.rb, line 72 def document=(options) if options.is_a?(Hash) options = GroupDocs::Storage::File.new(options) elsif options.is_a?(Document) options = options.file end @document = options end
Creates new job to merge datasource into questionnaire collector execution.
When you fill collector, execution for it creates. You can then fill this execution (for example if you didn’t answered all the questions at first).
@param [GroupDocs::DataSource] datasource @param [Hash] options @option options [Boolean] :new_type New file format type @option options [Boolean] :email_results Set to true if converted document should be emailed @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key @return [GroupDocs::Job]
@raise [ArgumentError] if datasource is not GroupDocs::DataSource
object
# File lib/groupdocs/questionnaire/execution.rb, line 165 def fill!(datasource, options = {}, access = {}) datasource.is_a?(GroupDocs::DataSource) or raise ArgumentError, "Datasource should be GroupDocs::DataSource object, received: #{datasource.inspect}" api = Api::Request.new do |request| request[:access] = access request[:method] = :POST request[:path] = "/merge/{{client_id}}/questionnaires/executions/#{guid}/datasources/#{datasource.id}" end api.add_params(options) json = api.execute! Job.new(:id => json[:job_id]) end
Updates status of execution on server.
@param [Symbol] status @param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key
# File lib/groupdocs/questionnaire/execution.rb, line 104 def set_status!(status, access = {}) status = parse_status(status) Api::Request.new do |request| request[:access] = access request[:method] = :PUT request[:path] = "/merge/{{client_id}}/questionnaires/executions/#{id}/status" request[:request_body] = status end.execute! self.status = status end
Updates execution on server.
@param [Hash] access Access credentials @option access [String] :client_id @option access [String] :private_key
# File lib/groupdocs/questionnaire/execution.rb, line 124 def update!(access = {}) Api::Request.new do |request| request[:access] = access request[:method] = :PUT request[:path] = "/merge/{{client_id}}/questionnaires/executions/#{id}" request[:request_body] = to_hash end.execute! end