diff options
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 + | 
