Sha256: 250962e9f9f6645eec27d154c1d2575bbd74b377e7a3dadc6686523f73628cc8

Contents?: true

Size: 729 Bytes

Versions: 17

Compression:

Stored size: 729 Bytes

Contents

module CanvasSync
  module Jobs
    class SyncTermsJob < CanvasSync::Job
      # Syncs Terms using the Canvas API
      #
      # Terms are pre-synced so that provisioning reports can be scoped to term.
      #
      # @param job_chain [Hash]
      # @param options [Hash]
      def perform(job_chain, options)
        CanvasSync.get_canvas_sync_client(job_chain[:global_options]).terms('self').all_pages!.each do |term_params|
          if(job_chain[:global_options][:account_id])
            Term.create_or_update(term_params, job_chain[:global_options][:account_id])
          else
            Term.create_or_update(term_params)
          end
        end

        CanvasSync.invoke_next(job_chain)
      end
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
canvas_sync-0.3.12 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.11 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.10 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.9 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.8 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.7 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.6 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.5 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.3 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.2 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.1 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.3.0 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.2.4 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.2.3 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.2.2 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.2.1 lib/canvas_sync/jobs/sync_terms_job.rb
canvas_sync-0.2.0 lib/canvas_sync/jobs/sync_terms_job.rb