OO Programming in Java
Class 7 Material
VCR Controller
To implement this in a state machine see Class 6 State Machine Engine in Java. This is an implementation of the Child/Lighting Problem.