aboutsummaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorRobert2017-11-15 17:15:24 +0100
committerRobert2017-11-17 14:49:19 +0100
commit2b925fe2bf8f33a0d10dfe1307b086d9e3f0add4 (patch)
tree877a1b225c4387c4f51807d26599592e8f506b22 /app
parent21ddaefb9fc092463261284b0b7b493709201a3b (diff)
downloadchouette-core-2b925fe2bf8f33a0d10dfe1307b086d9e3f0add4.tar.bz2
Fixes: #4461@2h; Specing and Implementing
Diffstat (limited to 'app')
-rw-r--r--app/controllers/api/v1/netex_imports_controller.rb6
-rw-r--r--app/models/netex_import.rb27
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