class Slurpy
Constants
- BASE_URL
- CACHE_FOLDER
- DEFAULTS_FILE
- RESOURCES
- TIMEZONE
Public Class Methods
new(*args)
click to toggle source
Calls superclass method
# File lib/slurpy/slurpy.rb, line 27 def initialize *args super APICache.store = Moneta.new(:File, dir: CACHE_FOLDER) end
Public Instance Methods
config()
click to toggle source
# File lib/slurpy/slurpy.rb, line 68 def config settings = { 'origin' => options[:origin], 'destination' => options[:destination] } File.open(DEFAULTS_FILE, "w") do |file| file.write settings.to_yaml end end
next(origin = defaults['origin'], destination = defaults['destination'])
click to toggle source
# File lib/slurpy/slurpy.rb, line 35 def next(origin = defaults['origin'], destination = defaults['destination']) origin, destination = destination, origin if options[:return] to_origin_shuttles, origin_name = Slurpy.shuttles_for_stop origin to_destination_shuttles, destination_name = Slurpy.shuttles_for_stop destination puts "Searching routes from '#{origin_name}' to '#{destination_name}'..." Slurpy.error 'Do you really want to go in circles?' if origin_name == destination_name origin_to_destination_shuttles = to_origin_shuttles .select do |route_id, time| to_destination_shuttles[route_id] && to_origin_shuttles[route_id] < to_destination_shuttles[route_id] end Slurpy.error "No shuttles from '#{origin_name}' to '#{destination_name}' right now, sorry. " \ "See http://www.slushuttle.com/ for more details." \ if origin_to_destination_shuttles.empty? origin_to_destination_shuttles.each do |route_id, time| puts "#{Slurpy.get_route_by_id(route_id)['Description']} " \ "- Departure: #{to_origin_shuttles[route_id]} " \ "Arrival: #{to_destination_shuttles[route_id]}" end end