class Ellington::Conductor
Attributes
route[R]
Public Class Methods
new(route)
click to toggle source
# File lib/ellington/conductor.rb, line 8 def initialize(route) @route = route end
Public Instance Methods
conduct(passenger)
click to toggle source
# File lib/ellington/conductor.rb, line 18 def conduct(passenger) if !passenger.is_a?(Ellington::Passenger) ticket = Ellington::Ticket.new passenger = Ellington::Passenger.new(passenger, ticket: ticket, state_history: []) end passenger.current_state = route.initial_state return unless verify(passenger) route.lines.first.board passenger end
verify(passenger)
click to toggle source
override this method in a subclass to perform actual passenger verification
# File lib/ellington/conductor.rb, line 14 def verify(passenger) true end