aboutsummaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorZog2018-06-01 12:10:11 +0200
committerZog2018-06-01 12:10:11 +0200
commit1e6b830a083e4c30f9f65c7fa51a9f066742f66d (patch)
tree5bd2e7e6b6685246f95f8b887f451ec9d050a5c3 /app
parent12b974e13538b9f1952e4282c88d1b1a913c7f84 (diff)
downloadchouette-core-6979-ruby-controls-sets.tar.bz2
Refs #6979; Flag controls intended to be handled by the Java third-party app6979-ruby-controls-sets
And prevent calls to the java API when it is not needed
Diffstat (limited to 'app')
-rw-r--r--app/models/compliance_check_set.rb4
-rw-r--r--app/models/compliance_control.rb6
-rw-r--r--app/models/dummy_control/dummy.rb7
-rw-r--r--app/workers/compliance_control_set_copy_worker.rb14
4 files changed, 24 insertions, 7 deletions
diff --git a/app/models/compliance_check_set.rb b/app/models/compliance_check_set.rb
index f29ff4de5..652406e11 100644
--- a/app/models/compliance_check_set.rb
+++ b/app/models/compliance_check_set.rb
@@ -30,6 +30,10 @@ class ComplianceCheckSet < ApplicationModel
status.to_s == "successful"
end
+ def should_call_iev?
+ true
+ end
+
def self.abort_old
where(
'created_at < ? AND status NOT IN (?)',
diff --git a/app/models/compliance_control.rb b/app/models/compliance_control.rb
index 4a2a6e91c..fc6db3d09 100644
--- a/app/models/compliance_control.rb
+++ b/app/models/compliance_control.rb
@@ -16,14 +16,15 @@ class ComplianceControl < ApplicationModel
line: 'Line',
route: 'Route',
routing_constraint_zone: 'RoutingConstraint',
- vehicle_journey: 'VehicleJourney'
+ vehicle_journey: 'VehicleJourney',
+ dummy: 'Dummy',
}
end
def subclasses_to_hash
ComplianceControl.subclasses.inject(Hash.new{ |h, k| h[k] = [] } ) do |h, klass|
h[ComplianceControl.subclass_patterns.key(klass.object_type)] << klass
- h
+ h
end
end
@@ -109,3 +110,4 @@ require_dependency 'vehicle_journey_control/waiting_time'
require_dependency 'vehicle_journey_control/speed'
require_dependency 'vehicle_journey_control/time_table'
require_dependency 'vehicle_journey_control/vehicle_journey_at_stops'
+require_dependency 'dummy_control/dummy'
diff --git a/app/models/dummy_control/dummy.rb b/app/models/dummy_control/dummy.rb
new file mode 100644
index 000000000..796a13ba0
--- /dev/null
+++ b/app/models/dummy_control/dummy.rb
@@ -0,0 +1,7 @@
+module DummyControl
+ class Dummy < ComplianceControl
+ enumerize :criticity, in: %i(error), scope: true, default: :error
+
+ def self.default_code; "00-Dummy-00" end
+ end
+end
diff --git a/app/workers/compliance_control_set_copy_worker.rb b/app/workers/compliance_control_set_copy_worker.rb
index b87f5ad8e..9271cdba3 100644
--- a/app/workers/compliance_control_set_copy_worker.rb
+++ b/app/workers/compliance_control_set_copy_worker.rb
@@ -5,11 +5,15 @@ class ComplianceControlSetCopyWorker
check_set = ComplianceControlSetCopier.new.copy(control_set_id, referential_id)
check_set.update parent_type: parent_type, parent_id: parent_id if parent_type && parent_id
- begin
- Net::HTTP.get(URI("#{Rails.configuration.iev_url}/boiv_iev/referentials/validator/new?id=#{check_set.id}"))
- rescue Exception => e
- logger.error "IEV server error : #{e.message}"
- logger.error e.backtrace.inspect
+ if check_set.should_call_iev?
+ begin
+ Net::HTTP.get(URI("#{Rails.configuration.iev_url}/boiv_iev/referentials/validator/new?id=#{check_set.id}"))
+ rescue Exception => e
+ logger.error "IEV server error : #{e.message}"
+ logger.error e.backtrace.inspect
+ end
+ else
+ check_set.perform_internal_checks
end
end
end