diff options
| author | Zakaria BOUZIANE | 2014-09-15 09:23:20 +0200 |
|---|---|---|
| committer | Zakaria BOUZIANE | 2014-09-15 09:23:20 +0200 |
| commit | 686dd5c553c1df0260285fc0648fb152acfb15c5 (patch) | |
| tree | fc2f7fe6e2129846d5fc06fe909e6393ea8d5f9f /app/exporters | |
| parent | e1c8a62852616fcfcc6a79b6cc4aefc50e4bd628 (diff) | |
| download | chouette-core-686dd5c553c1df0260285fc0648fb152acfb15c5.tar.bz2 | |
Adding course_operation.txt to HUB Export
Diffstat (limited to 'app/exporters')
| -rw-r--r-- | app/exporters/chouette/hub/exporter.rb | 2 | ||||
| -rw-r--r-- | app/exporters/chouette/hub/vehicle_journey_operation_exporter.rb | 35 |
2 files changed, 37 insertions, 0 deletions
diff --git a/app/exporters/chouette/hub/exporter.rb b/app/exporters/chouette/hub/exporter.rb index 5f1a1508f..96e125814 100644 --- a/app/exporters/chouette/hub/exporter.rb +++ b/app/exporters/chouette/hub/exporter.rb @@ -84,6 +84,7 @@ class Chouette::Hub::Exporter @journey_patterns = Chouette::JourneyPattern.where( :route_id => routes.map(&:id) ).order(:name) if routes_exportable? @vehicle_journeys = Chouette::VehicleJourney.where( :route_id => routes.map(&:id) ).order(:id) if routes_exportable? + @vehicle_journeys = Chouette::VehicleJourney.where( :route_id => routes.map(&:id) ).order(:id) if routes_exportable? vjs = [] tts = [] @@ -107,6 +108,7 @@ class Chouette::Hub::Exporter if vehicle_journeys_exportable? Chouette::Hub::VehicleJourneyExporter.save(@vehicle_journeys, temp_dir, hub_export) Chouette::Hub::VehicleJourneyAtStopExporter.save(vehicle_journey_at_stops, temp_dir, hub_export) + Chouette::Hub::VehicleJourneyOperationExporter.save(@vehicle_journeys, temp_dir, hub_export) else log_overflow_warning(Chouette::VehicleJourney) end diff --git a/app/exporters/chouette/hub/vehicle_journey_operation_exporter.rb b/app/exporters/chouette/hub/vehicle_journey_operation_exporter.rb new file mode 100644 index 000000000..37b71c3c1 --- /dev/null +++ b/app/exporters/chouette/hub/vehicle_journey_operation_exporter.rb @@ -0,0 +1,35 @@ +class Chouette::Hub::VehicleJourneyExporter + include ERB::Util + attr_accessor :vehicle_journey, :directory, :template + + def initialize(vehicle_journey, directory) + @vehicle_journey = vehicle_journey + @directory = directory + @template = File.open('app/views/api/hub/courses_operations.hub.erb' ) { |f| f.read } + end + + def render() + ERB.new(@template).result(binding) + end + + def hub_name + "/COURSE_OPERATION.TXT" + end + + def self.save( vehicle_journeys, directory, hub_export) + vehicle_journeys.each do |vehicle_journey| + self.new( vehicle_journey, directory).tap do |specific_exporter| + specific_exporter.save + end + end + hub_export.log_messages.create( :severity => "ok", :key => "EXPORT|VEHICLE_JOURNEY_OPERATION_COUNT", :arguments => {"0" => vehicle_journeys.size}) + end + + def save + File.open(directory + hub_name , "a") do |f| + f.write("COURSE_OPERATION\n") if f.size == 0 + f.write(render) + end if vehicle_journey.present? + end +end + |
