Sha256: d780a97b4f7d75d1d9f1137d00dcbf45537a00e75555fb67dc64b56fb91d82a7

Contents?: true

Size: 511 Bytes

Versions: 11

Compression:

Stored size: 511 Bytes

Contents

# frozen_string_literal: true

module GoogleDistanceMatrix
  class UrlBuilder
    # A buffer to contain Polyline Encoder
    class PolylineEncoderBuffer
      def initialize
        @buffer = []
      end

      def <<(lat_lng)
        @buffer << lat_lng
      end

      def flush(to:)
        return if @buffer.empty?

        to << escape("enc:#{PolylineEncoder.encode @buffer}:")
        @buffer.clear
      end

      private

      def escape(string)
        CGI.escape string
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
google_distance_matrix-0.7.1 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb
google_distance_matrix-0.7.0 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb
google_distance_matrix-0.6.7 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb
google_distance_matrix-0.6.6 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb
google_distance_matrix-0.6.5 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb
google_distance_matrix-0.6.4 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb
google_distance_matrix-0.6.3 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb
google_distance_matrix-0.6.2 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb
google_distance_matrix-0.6.1 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb
google_distance_matrix-0.6.0 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb
google_distance_matrix-0.5.0 lib/google_distance_matrix/url_builder/polyline_encoder_buffer.rb