123456789101112131415161718192021222324252627282930313233343536 |
- class Sequencer::Unit::Import::Zendesk::ObjectsTotalCount < Sequencer::Unit::Common::Provider::Attribute
- include ::Sequencer::Unit::Import::Common::Model::Statistics::Mixin::EmptyDiff
- uses :client
- private
- def statistics_diff
- %i[Groups Users Organizations Tickets].index_with do |object|
- empty_diff.merge(
- total: request(object).count!
- )
- end
- end
-
-
-
-
-
-
-
- def request(object)
- require 'zendesk_api'
- resource_class = "::ZendeskAPI::#{object.to_s.singularize}".safe_constantize
- if resource_class.respond_to?(:incremental_export)
-
- resource_class.incremental_export(client, 1)
- else
-
- client.send(object.to_s.underscore.to_sym)
- end
- end
- end
|