State pattern
From Wacklepedia - The Free Encyclopedia
A behavioral
software design pattern,
state pattern is used for computer programming to control the state in the program.
See also: Strategy pattern, Dynamic classification, Run and return successor, Duality between state and class