class TowerBridgeLifts::Lift

Attributes

direction[RW]
timestamp[RW]
vessel[RW]

Public Class Methods

new(timestamp: nil, vessel: nil, direction: nil ) click to toggle source
# File lib/tower_bridge_lifts/lift.rb, line 6
def initialize(timestamp: nil, vessel: nil, direction: nil )
    raise "Hey!!" if timestamp.nil? 
    @timestamp, @vessel, @direction = timestamp, vessel, direction
end

Public Instance Methods

date() click to toggle source

Decorators

# File lib/tower_bridge_lifts/lift.rb, line 24
def date
  timestamp.strftime('%d-%b-%y')
end
date_weekday() click to toggle source
# File lib/tower_bridge_lifts/lift.rb, line 36
def date_weekday
  [date, weekday].join(' ')
end
date_weekday_time() click to toggle source
# File lib/tower_bridge_lifts/lift.rb, line 40
def date_weekday_time
  [date, weekday, time].join(' ')
end
dir() click to toggle source
# File lib/tower_bridge_lifts/lift.rb, line 44
def dir
  { :up_river => "⬆︎", :down_river => "⬇︎" }[@direction]
end
empty?() click to toggle source
# File lib/tower_bridge_lifts/lift.rb, line 19
def empty?
  false
end
time() click to toggle source
# File lib/tower_bridge_lifts/lift.rb, line 32
def time
  timestamp.strftime('%H:%M') 
end
to_h() click to toggle source
# File lib/tower_bridge_lifts/lift.rb, line 15
def to_h
  Hash[ instance_variables.map{|v| [v[1..-1].to_sym, instance_variable_get(v)]} ]
end
to_s() click to toggle source
# File lib/tower_bridge_lifts/lift.rb, line 11
def to_s
  [ date_weekday_time, dir, vessel ].join(' ') 
end
weekday() click to toggle source
# File lib/tower_bridge_lifts/lift.rb, line 28
def weekday
  timestamp.strftime('%a')
end