Я настроил Spring STOMP с ActiveMQ, он работает нормально.Но есть ли возможность настроить клиентскую маршрутизацию подписки?
@Override
public void configureMessageBroker(MessageBrokerRegistry registry) {
registry.enableStompBrokerRelay("/topic");
registry.setApplicationDestinationPrefixes("/app");
}
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint("/ws")
.withSockJS();
}
Чего я хочу добиться - это две очереди для уведомлений (во внешнем интерфейсе) - одна для пользователей-администраторов и одна для обычных пользователей.Пользователи не отправляют никаких сообщений, только получают сообщения с сервера.Предположим, что любой пользователь может отправить следующий запрос на подписку:
// app is application destination prefix
client.subscribe('/app/notificator', ...);
Сервер должен направить этот запрос в ActiveMQ:
/topic/notificator/admin - if logged user is of role admin, or
/topic/notificator/user - if logged user is of role user
Как настроить Spring для создания такой политики маршрутизации?