Доступ к объектам внутри операторов switch - PullRequest
0 голосов
/ 27 апреля 2018

В настоящее время я застрял в том, что наиболее эффективный способ исправить эту проблему. Моя текущая цель - код для нажатия кнопки на странице.

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

Прямо сейчас исходное сообщение содержит всю логику в одном конкретном случае в операторе switch. Мой вопрос заключается в том, как лучше всего взять этот объект, содержащий данные пользователей, и перенести его в другой оператор case.

Ниже приведен код, который у меня сейчас есть:

public final AjaxResponse pageLevelOnAjaxEvent(final String event, final 
HashMap<String, String> parameters) {
    final AjaxEvent ajaxEvent = AjaxEvent.translateEvent(event);
      switch (ajaxEvent) {

      case EXAMPLE:

        final InfoObject test = new InfoObject(Keys.get(Keys.KEY_RANDOM));


        final InfoObjectResponse objectResponse = test.generateInfo(get400RuntimeData(), getApplication());


        ajaxActions.addAll(infoView.updateView(test, objectResponse, string, string2, "735"));
            break;

        case BUTTON_CODE:
            break;

}

Моя проблема в том, что всякий раз, когда я нажимаю кнопку, чтобы запустить событие BUTTON_CODE, объекты test и objectResponse возвращаются к нулю, даже если они запускают методы в событии EXAMPLE.

Мне бы очень хотелось, чтобы мне не приходилось повторно запускать методы, которые я запускаю в событии EXAMPLE, и мне это не нужно, потому что эти объекты уже заполнены.

У меня вопрос, как мне получить доступ к этим данным в событии BUTTON_CODE? Если я объявлю объект в методе ajax, частью которого он является, он всегда будет нулевым, когда активируется событие BUTTON_CODE, поскольку оно должно быть инициализировано и, следовательно, всегда будет возвращаться к этому значению.

Так, каков наилучший способ сделать это? Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...