diff options
| author | Robert | 2017-11-15 17:15:24 +0100 |
|---|---|---|
| committer | Robert | 2017-11-17 14:49:19 +0100 |
| commit | 2b925fe2bf8f33a0d10dfe1307b086d9e3f0add4 (patch) | |
| tree | 877a1b225c4387c4f51807d26599592e8f506b22 /app | |
| parent | 21ddaefb9fc092463261284b0b7b493709201a3b (diff) | |
| download | chouette-core-2b925fe2bf8f33a0d10dfe1307b086d9e3f0add4.tar.bz2 | |
Fixes: #4461@2h; Specing and Implementing
Diffstat (limited to 'app')
| -rw-r--r-- | app/controllers/api/v1/netex_imports_controller.rb | 6 | ||||
| -rw-r--r-- | app/models/netex_import.rb | 27 |
2 files changed, 18 insertions, 15 deletions
diff --git a/app/controllers/api/v1/netex_imports_controller.rb b/app/controllers/api/v1/netex_imports_controller.rb index 0934ce915..8e8c48986 100644 --- a/app/controllers/api/v1/netex_imports_controller.rb +++ b/app/controllers/api/v1/netex_imports_controller.rb @@ -30,11 +30,7 @@ module Api def create_netex_import attributes = netex_import_params.merge creator: "Webservice" - if @new_referential.persisted? - attributes = attributes.merge referential_id: @new_referential.id - else - attributes = attributes.merge status: "aborted" - end + attributes = attributes.merge referential_id: @new_referential.id @netex_import = NetexImport.new attributes @netex_import.save! diff --git a/app/models/netex_import.rb b/app/models/netex_import.rb index b0033264d..535ca58f3 100644 --- a/app/models/netex_import.rb +++ b/app/models/netex_import.rb @@ -1,21 +1,17 @@ require 'net/http' class NetexImport < Import - after_commit :launch_java_import, on: :create before_destroy :destroy_non_ready_referential + after_commit :launch_java_import, on: :create + before_save def abort_unless_referential + self.status = 'aborted' unless referential + end + validates_presence_of :parent def launch_java_import return if self.class.finished_statuses.include?(status) - - Thread.new do - begin - Net::HTTP.get(URI("#{Rails.configuration.iev_url}/boiv_iev/referentials/importer/new?id=#{id}")) - rescue Exception => e - logger.error "IEV server error : #{e.message}" - logger.error e.backtrace.inspect - end - end + threaded_call_boiv_iev end private @@ -26,4 +22,15 @@ class NetexImport < Import end end + def threaded_call_boiv_iev + Thread.new(&method(:call_boiv_iev)) + end + + def call_boiv_iev + Net::HTTP.get(URI("#{Rails.configuration.iev_url}/boiv_iev/referentials/importer/new?id=#{id}")) + rescue Exception => e + logger.error "IEV server error : #{e.message}" + logger.error e.backtrace.inspect + end + end |
