mirror of
https://github.com/internetee/registry.git
synced 2025-08-12 04:29:33 +02:00
refactoring
This commit is contained in:
parent
419e5a587d
commit
b7b0cf1335
3 changed files with 35 additions and 33 deletions
|
@ -1,52 +1,54 @@
|
||||||
class ReplaceUpdToObjUpdProhibitedJob < ApplicationJob
|
class ReplaceUpdToObjUpdProhibitedJob < ApplicationJob
|
||||||
def perform(mode, rollback = false)
|
def perform(action:, rollback: false)
|
||||||
logger.info 'Ran ReplaceUpdToObjUpdProhibitedJob!'
|
logger.info 'Ran ReplaceUpdToObjUpdProhibitedJob!'
|
||||||
|
|
||||||
start_adding_new_status_for_locked_domains(mode, rollback)
|
start_adding_new_status_for_locked_domains(action: action, rollback: rollback)
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def start_adding_new_status_for_locked_domains(mode, rollback)
|
def start_adding_new_status_for_locked_domains(action:, rollback:)
|
||||||
count = 0
|
count = 0
|
||||||
Domain.all.find_in_batches do |domain_batches|
|
Domain.all.find_in_batches do |domain_batches|
|
||||||
count += domain_batches.count
|
count += domain_batches.count
|
||||||
logger.info "Proccesing #{count} domains of #{Domain.count}"
|
logger.info "Proccesing #{count} domains of #{Domain.count}"
|
||||||
|
|
||||||
domain_batches.each do |domain|
|
domain_batches.each do |domain|
|
||||||
if domain.locked_by_registrant?
|
make_actions_with_statuses(domain: domain, action: action, rollback: rollback)
|
||||||
if rollback
|
|
||||||
domain = rollback_actions(mode, domain)
|
|
||||||
else
|
|
||||||
domain = add_actions(mode, domain)
|
|
||||||
end
|
|
||||||
|
|
||||||
domain.save!
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
logger.info "Successfully proccesed #{count} domains of #{Domain.count}"
|
logger.info "Successfully proccesed #{count} domains of #{Domain.count}"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def rollback_actions(mode, domain)
|
private
|
||||||
if mode == 'add' and !domain.statuses.include? 'serverUpdateProhibited'
|
|
||||||
domain.statuses = domain.statuses + ['serverUpdateProhibited']
|
|
||||||
elsif mode == 'remove' and domain.statuses.include? 'serverObjUpdateProhibited'
|
|
||||||
domain.statuses = domain.statuses - ['serverObjUpdateProhibited']
|
|
||||||
end
|
|
||||||
|
|
||||||
domain
|
def make_actions_with_statuses(domain:, action:, rollback:)
|
||||||
|
if domain.locked_by_registrant? && rollback
|
||||||
|
rollback_actions(action: action, domain: domain)
|
||||||
|
elsif domain.locked_by_registrant? && !rollback
|
||||||
|
add_actions(action: action, domain: domain)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def add_actions(mode, domain)
|
def rollback_actions(action:, domain:)
|
||||||
if mode == 'add' and !domain.statuses.include? 'serverObjUpdateProhibited'
|
if action == :add && !domain.statuses.include?('serverUpdateProhibited')
|
||||||
domain.statuses = domain.statuses + ['serverObjUpdateProhibited']
|
domain.statuses = domain.statuses + ['serverUpdateProhibited']
|
||||||
elsif mode == 'remove' and domain.statuses.include? 'serverUpdateProhibited'
|
domain.save!
|
||||||
domain.statuses = domain.statuses - ['serverUpdateProhibited']
|
elsif action == :remove && domain.statuses.include?('serverObjUpdateProhibited')
|
||||||
|
domain.statuses = domain.statuses - ['serverObjUpdateProhibited']
|
||||||
|
domain.save!
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
domain
|
def add_actions(action:, domain:)
|
||||||
|
if action == :add && !domain.statuses.include?('serverObjUpdateProhibited')
|
||||||
|
domain.statuses = domain.statuses + ['serverObjUpdateProhibited']
|
||||||
|
domain.save!
|
||||||
|
elsif action == :remove && domain.statuses.include?('serverUpdateProhibited')
|
||||||
|
domain.statuses = domain.statuses - ['serverUpdateProhibited']
|
||||||
|
domain.save!
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def logger
|
def logger
|
||||||
|
|
|
@ -8,7 +8,7 @@ namespace :locked_domains do
|
||||||
desc 'Add serverObjUpdateProhibited for locked domains'
|
desc 'Add serverObjUpdateProhibited for locked domains'
|
||||||
task add_new_status: :environment do
|
task add_new_status: :environment do
|
||||||
time = Benchmark.realtime do
|
time = Benchmark.realtime do
|
||||||
ReplaceUpdToObjUpdProhibitedJob.perform_later('add')
|
ReplaceUpdToObjUpdProhibitedJob.perform_later(action: :add)
|
||||||
end
|
end
|
||||||
puts "Time is #{time.round(2)} for add serverObjUpdateProhibited status for locked domains"
|
puts "Time is #{time.round(2)} for add serverObjUpdateProhibited status for locked domains"
|
||||||
end
|
end
|
||||||
|
@ -16,7 +16,7 @@ namespace :locked_domains do
|
||||||
desc 'Remove serverUpdateProhibited from locked domains'
|
desc 'Remove serverUpdateProhibited from locked domains'
|
||||||
task remove_old_status: :environment do
|
task remove_old_status: :environment do
|
||||||
time = Benchmark.realtime do
|
time = Benchmark.realtime do
|
||||||
ReplaceUpdToObjUpdProhibitedJob.perform_later('remove')
|
ReplaceUpdToObjUpdProhibitedJob.perform_later(action: :remove)
|
||||||
end
|
end
|
||||||
puts "Time is #{time.round(2)} for remove serverUpdateProhibited for locked domains"
|
puts "Time is #{time.round(2)} for remove serverUpdateProhibited for locked domains"
|
||||||
end
|
end
|
||||||
|
@ -27,7 +27,7 @@ namespace :locked_domains do
|
||||||
desc 'Rollback remove old serverUpdateProhibited for locked domains'
|
desc 'Rollback remove old serverUpdateProhibited for locked domains'
|
||||||
task rollback_remove_old_status: :environment do
|
task rollback_remove_old_status: :environment do
|
||||||
time = Benchmark.realtime do
|
time = Benchmark.realtime do
|
||||||
ReplaceUpdToObjUpdProhibitedJob.perform_later('add', true)
|
ReplaceUpdToObjUpdProhibitedJob.perform_later(action: :add, rollback: true)
|
||||||
end
|
end
|
||||||
puts "Time is #{time.round(2)} for add serverObjUpdateProhibited status for locked domains"
|
puts "Time is #{time.round(2)} for add serverObjUpdateProhibited status for locked domains"
|
||||||
end
|
end
|
||||||
|
@ -35,7 +35,7 @@ namespace :locked_domains do
|
||||||
desc 'Rollback add new serverObjUpdateProhibited for locked domains'
|
desc 'Rollback add new serverObjUpdateProhibited for locked domains'
|
||||||
task rollback_add_new_status: :environment do
|
task rollback_add_new_status: :environment do
|
||||||
time = Benchmark.realtime do
|
time = Benchmark.realtime do
|
||||||
ReplaceUpdToObjUpdProhibitedJob.perform_later('remove', true)
|
ReplaceUpdToObjUpdProhibitedJob.perform_later(action: :remove, rollback: true)
|
||||||
end
|
end
|
||||||
puts "Time is #{time.round(2)} for add serverObjUpdateProhibited status for locked domains"
|
puts "Time is #{time.round(2)} for add serverObjUpdateProhibited status for locked domains"
|
||||||
end
|
end
|
||||||
|
|
|
@ -13,7 +13,7 @@ class ReplaceUpdToObjUpdProhibitedJobTest < ActiveSupport::TestCase
|
||||||
assert @domain.locked_by_registrant?
|
assert @domain.locked_by_registrant?
|
||||||
|
|
||||||
perform_enqueued_jobs do
|
perform_enqueued_jobs do
|
||||||
ReplaceUpdToObjUpdProhibitedJob.perform_later('add')
|
ReplaceUpdToObjUpdProhibitedJob.perform_later(action: :add)
|
||||||
end
|
end
|
||||||
|
|
||||||
@domain.reload
|
@domain.reload
|
||||||
|
@ -32,7 +32,7 @@ class ReplaceUpdToObjUpdProhibitedJobTest < ActiveSupport::TestCase
|
||||||
assert @domain.statuses.include? "serverObjUpdateProhibited"
|
assert @domain.statuses.include? "serverObjUpdateProhibited"
|
||||||
|
|
||||||
perform_enqueued_jobs do
|
perform_enqueued_jobs do
|
||||||
ReplaceUpdToObjUpdProhibitedJob.perform_later('remove')
|
ReplaceUpdToObjUpdProhibitedJob.perform_later(action: :remove)
|
||||||
end
|
end
|
||||||
|
|
||||||
@domain.reload
|
@domain.reload
|
||||||
|
@ -49,7 +49,7 @@ class ReplaceUpdToObjUpdProhibitedJobTest < ActiveSupport::TestCase
|
||||||
assert_not @domain.locked_by_registrant?
|
assert_not @domain.locked_by_registrant?
|
||||||
|
|
||||||
perform_enqueued_jobs do
|
perform_enqueued_jobs do
|
||||||
ReplaceUpdToObjUpdProhibitedJob.perform_later('add')
|
ReplaceUpdToObjUpdProhibitedJob.perform_later(action: :add)
|
||||||
end
|
end
|
||||||
|
|
||||||
assert_not @domain.statuses.include? "serverObjUpdateProhibited"
|
assert_not @domain.statuses.include? "serverObjUpdateProhibited"
|
||||||
|
@ -64,7 +64,7 @@ class ReplaceUpdToObjUpdProhibitedJobTest < ActiveSupport::TestCase
|
||||||
assert_not @domain.locked_by_registrant?
|
assert_not @domain.locked_by_registrant?
|
||||||
|
|
||||||
perform_enqueued_jobs do
|
perform_enqueued_jobs do
|
||||||
ReplaceUpdToObjUpdProhibitedJob.perform_later('remove')
|
ReplaceUpdToObjUpdProhibitedJob.perform_later(action: :remove)
|
||||||
end
|
end
|
||||||
|
|
||||||
assert @domain.statuses.include? "serverUpdateProhibited"
|
assert @domain.statuses.include? "serverUpdateProhibited"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue