Совместное редактирование документа через веб
От: Bla-la-mut  
Дата: 12.05.08 19:18
Оценка:
Есть архитектура MVP,(тоесть всё кроме model и view на этапе проектирования) есть несколько клиентов, соответственно несколько VIEW при изменении одного из них презентатор обрабатывает ивент, меняет модель и вызывает их обновление, всё понятно до тех пор пока пользователи не начинают дёргать один и тот же контрол.
Re: Совместное редактирование документа через веб
От: rsn81 Россия http://rsn81.wordpress.com
Дата: 13.05.08 04:12
Оценка:
Здравствуйте, Bla-la-mut, Вы писали:

BLM>Есть архитектура MVP,(тоесть всё кроме model и view на этапе проектирования) есть несколько клиентов, соответственно несколько VIEW при изменении одного из них презентатор обрабатывает ивент, меняет модель и вызывает их обновление, всё понятно до тех пор пока пользователи не начинают дёргать один и тот же контрол.

А что конкретно непонятно и какое поведение (не на уровне MVP, а пользовательском) вы хотели бы?
Re[2]: Совместное редактирование документа через веб
От: Аноним  
Дата: 13.05.08 10:01
Оценка:
Здравствуйте, rsn81, Вы писали:

R>Здравствуйте, Bla-la-mut, Вы писали:


BLM>>Есть архитектура MVP,(тоесть всё кроме model и view на этапе проектирования) есть несколько клиентов, соответственно несколько VIEW при изменении одного из них презентатор обрабатывает ивент, меняет модель и вызывает их обновление, всё понятно до тех пор пока пользователи не начинают дёргать один и тот же контрол.

R>А что конкретно непонятно и какое поведение (не на уровне MVP, а пользовательском) вы хотели бы?

Есть слайдер в интерфейсе он определяет значение интового поля в VIEW, один клиент его значение изменил — создаётся событие и о нём оповещается хендлер в презентаторе на сервере(предполагаемая технология реализации сильверлайт) — обработка состоит в следующем, смотрим что за поле поменялось и изменяем его в модели на соответствующую величину, после этого в модели так же создаётся ивент(код один и тот же для VIEW составляющей модели и клиентского интерфейса) на который реагирует презентатор — и делает рефреш этого поля у всех клиентов. Проблема следующая — если второй пользователь изменяет поле во временной интервал между созданием вышеописаных ивентов — то он создаёт новый ивент, потом его значение поля меняется на то на которое оно было изменено у другого пользователя — а потом опять на то которое он установил.
Или это вовсе не проблема ? И такое возникает редко ?
Что скажите по поводу такого сценария обработки ?
Re[3]: Совместное редактирование документа через веб
От: rsn81 Россия http://rsn81.wordpress.com
Дата: 13.05.08 12:11
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Или это вовсе не проблема ? И такое возникает редко ?

А>Что скажите по поводу такого сценария обработки ?
[skipped]
И причем здесь MVP?
Есть множество вариантов и решений данных проблем, см., к примеру, как это уже давно решается в БД по словам transaction, isolation level & etc. Самое простое — блокируйте модель перед началом изменений.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.