You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							27 lines
						
					
					
						
							1.2 KiB
						
					
					
				
			
		
		
	
	
							27 lines
						
					
					
						
							1.2 KiB
						
					
					
				namespace :core do | 
						|
  desc "Import data XMLs from Softwire system" | 
						|
  task :data_import, %i[type path] => :environment do |_task, args| | 
						|
    type = args[:type] | 
						|
    path = args[:path] | 
						|
    raise "Usage: rake core:data_import['data_type', 'path/to/xml_files']" if path.blank? || type.blank? | 
						|
 | 
						|
    storage_service = StorageService.new(PaasConfigurationService.new, ENV["IMPORT_PAAS_INSTANCE"]) | 
						|
 | 
						|
    case type | 
						|
    when "organisation" | 
						|
      Imports::OrganisationImportService.new(storage_service).create_organisations(path) | 
						|
    when "user" | 
						|
      Imports::UserImportService.new(storage_service).create_users(path) | 
						|
    when "data-protection-confirmation" | 
						|
      Imports::DataProtectionConfirmationImportService.new(storage_service).create_data_protection_confirmations(path) | 
						|
    when "organisation-las" | 
						|
      Imports::OrganisationLaImportService.new(storage_service).create_organisation_las(path) | 
						|
    when "organisation-rent-periods" | 
						|
      Imports::OrganisationRentPeriodImportService.new(storage_service).create_organisation_rent_periods(path) | 
						|
    when "case-logs" | 
						|
      Imports::CaseLogsImportService.new(storage_service).create_logs(path) | 
						|
    else | 
						|
      raise "Type #{type} is not supported by data_import" | 
						|
    end | 
						|
  end | 
						|
end
 | 
						|
 |