public int ExecuteCommand(IDbCommand command) { try { return(_currentState.Execute(command)); } catch (Exception ex) { throw new CommandFailureException(command, ex); } }