public void move(Direction direction) throws PlayerCannotMoveException {
		if (canMove(direction)) {
			switch (direction) {
			case NORTH:
				positionLine--;
				break;
			case SOUTH:
				positionLine++;
				break;
			case WEST:
				positionColumn--;
				break;
			case EAST:
				positionColumn++;
				break;
			}
			if (!maze.cellExists(positionLine, positionColumn)) {
				exitMaze();
			}
		} else {
			throw new PlayerCannotMoveException("Player "
					+ this
					+ " with id "
					+ playerId
					+ " cannot move from ("
					+ positionLine
					+ ","
					+ positionColumn
					+ ") to "
					+ direction.toString());
		}
	}