Module: Eco::API::UseCases::GraphQL::Samples::Location::Command::Service::TreeUpdate::InstanceMethods
- Defined in:
- lib/eco/api/usecases/graphql/samples/location/command/service/tree_update.rb
Instance Method Summary collapse
- #process ⇒ Object
-
#re_archive ⇒ Object
Before closing, run RE-ARCHIVE: those that where unarchived via archivedToken that should remain archived.
Instance Method Details
#process ⇒ Object
19 20 21 22 23 24 |
# File 'lib/eco/api/usecases/graphql/samples/location/command/service/tree_update.rb', line 19 def process super ensure rescued { re_archive } rescued { email_digest('TagTree Update') } end |
#re_archive ⇒ Object
Note:
this is an additional necessary step
Before closing, run RE-ARCHIVE: those that where unarchived via archivedToken that should remain archived.
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/eco/api/usecases/graphql/samples/location/command/service/tree_update.rb', line 29 def re_archive return if simulate? stage = :rearchive nodes_diff_class.new( hash_list(current_tree), file_nodes_list, original_tree: current_tree, logger: logger ).tap do |nodes_diff| archive_input = input(nodes_diff.stage_commands(:archive), force_continue: true) sliced_batches( archive_input, desc: stage, track_tree_mode: :once ) do |sliced_input, response, page, pages, count, total| # rubocop:disable Metrics/ParameterLists page_results = request_results_class.new(sliced_input, response) (results[stage] ||= []) << page_results self.error ||= page_errors?(page_results, page, pages, count, total, stage: stage) end end end |