Отправить данные формы в HTTPService: как подойти к нему в Cairngorm? - PullRequest
0 голосов
/ 05 августа 2009

Форма в компоненте запускается как всплывающее окно, данные формы состоят из:

login:String
password:String

Я думал о нескольких разных способах, но они мне не нравятся ..

  • во всплывающем окне кнопка отправки вызывает функцию, которая получает значения формы и сохраняет их в объекте, затем сохраняет объект в модели, а затем отправляет событие CreateSessionEvent. Вызывается метод выполнения CreateSessionCommand, который отправляет HTTPService, передавая объект из модели. (но что, если модель как-то не получит обновления и я отправлю один и тот же запрос дважды?)
  • Я мог бы попытаться получить данные формы из самого метода команды execute .. как я могу получить к ним доступ, поскольку это popUp (созданный с помощью PopUpManager.createPopUp(this, LoginDialog),true))

Мне нужна лучшая идея ... Кстати, я бы хотел увидеть пример flex + rail с отдыхающим xml-приложением, знаете что-нибудь?

1 Ответ

3 голосов
/ 05 августа 2009

Лучше всего сохранить учетные данные в классе CreateSessionEvent. Затем вы можете отправить событие, контроллер подберет его и выполнит соответствующую команду. В вашей команде вы должны вызвать бизнес-делегата, который выполнит вызов httpservice и ответит на команду. Если вы когда-нибудь измените связь с сервером, например, на Remoting, вы можете создать другого бизнес-делегата, который знает, как обрабатывать вызовы удаленных объектов.

...