следующий реальный вариант использования, который уже был реализован нашей компанией:
Мы создали приложение с rest api в качестве оболочки вокруг esper java api.Пользователь может определить его схему карты и оператор запроса.Каждое событие (instanceof MapEventBean), отправляемое пользователем (в виде JSON), имеет один общий параметр (каждый раз с разными значениями), который необходимо добавить в карту в фоновом режиме к событию пользовательской карты в качестве дополнительной пары ключ-значение.
Проблема: чтобы получить этот дополнительный параметр с помощью UpdateListener, пользовательские схемы и оператор запроса должны быть расширены программно по этому атрибуту.
Например:
Определяемая пользователем схема: создать схему карты Имя как (...)
Прог.измененная схема: создать имя схемы карты как (дополнительная карта атрибута, ...)
Пользовательский запрос stmt: выберите foo, бар из имени
Prog.модифицированный запрос stmt: выберите AdditionalAttribute, foo, bar из Name
Вопрос: подход работает, но он очень подвержен ошибкам или не слишком независим, как нам хотелось бы.
Так что вопрос: Любая возможность определить общий запрос stmt (например, выбрать дополнительный атрибут для каждого события ...) или сказать слушателю обновления, чтобы он получал конкретный атрибут в каждом успешном запросе, независимо от того, был ли он определен в пользовательском параметре stmt или нет.
Заранее спасибо!
Обновление: я уже рассмотрел некоторые возможности, такие как NamedWindows, но проблема в том, что эти дополнительные атрибуты должны принадлежать каждому конкретному событию, то естьатрибуты должны быть извлечены из шаблона слушателем обновления одновременно с событием self.