Доступ к переменным из внутреннего класса

У меня есть код, который определяет анонимный внутренний класс для обработчика обратного вызова. Этому обработчику необходимо назначить локальную переменную, см. Ниже. Мне нужно назначить или в обратном вызове и обратиться к нему в конце функции. Однако я получаю эту ошибку в Eclipse:

Последняя локальная переменная или не может быть назначена, поскольку он определен во включающем типе

Как я могу это исправить?

DoorResult unlockDoor(final LockableDoor door) {
    final UnlockDoorResponse resp;
    final boolean sent = sendRequest(new UnlockDoorRequest(door), 
       new ResponseAction() {
        public void execute(Session session) 
               throws TimedOutException, RetryException, RecoverException {
            session.watch(UNLOCK_DOOR);
            resp = (UnlockDoorResponse)session.watch(UNLOCK_DOOR);
        }
    });
    DoorResult result;
    if (!sent) {
        return DoorResult.COMMS_ERROR;
    }
    else {
        return DoorResult.valueOf(resp.getResponseCode());
    }
}
10
задан Jeff Axelrod 29 July 2012 в 15:45
поделиться