Prepare to implement command pattern