Zadanie #1708
Rejestracja użytkowników jako odbiorców wiadomości
Status: | Zamknięty | Start date: | 2017-05-10 | |
---|---|---|---|---|
Priority: | Normalny | Due date: | 2017-05-10 | |
Assignee: | Michał Komar | % Done: | 0% | |
Category: | integracja | |||
Target version: | 0.3 | |||
Developer: | Wojtek Hury | Tester: | Łukasz Waśkiewicz |
Description
Każdy zalogowany użytkownik powinien mieć zarejstrowany topic (lub topiki), na który spływać będą informacje przeznaczone tylko dla niego. Np. informacja o zakończeniu procesu publikacji.
Event o zapisaniu dokumentu, również może być odpowiednio przefiltrowany i wysłany tylko do użytkowników, których dotyczy.
W pierwszym kroku, można rozszerzyć proces rejestrowania odbiorców wiadomości poprzez dodanie filtra, który weryfikowałby, czy dana wiadomość powinna trafić do odbiorcy. Zamiast Multimap<Class, String> można użyć Multimap<Class<T>, Registration<T>>, gdzie
Registraton<T>{
List<string> topic, (pole wymagane)
Predicate<T> filter, - jeżeli test(message) = true, wtedy wysyłamy wiadomość
Function<T, ? extends Message> mapper, do mapowania pomiędzy wiadomością a wyjściem
}
W drugim ktorku, należy rejestrować odbiorcę w momencie połączenia websocketowego i wyrejestrowywać go po zerwaniu takiego połączenia.
Related issues
Associated revisions
refs #1708 messaging service umożliwia filtrowanie wiadomości
refs #1708 zmiana filozofii MessagingService
- serwis umożliwia rejstrację i odrejestrowanie obiektów Destination
- każde Destination może być globalne albo dla wskazanego użytkownika
- poprawki w typescript (przy obsłudze wiadomości leciały w UI błędy)
refs #1708 testy UserSessionManager
refs #1708 poprawka testów
refs #1708 naprawienie testów
Nowa klasa TestAppConfig łączy konfigurajcję AppConfig i TestConfig
TestConfig zawiera mock SimpMessageSendingOperations
refs #1708 SimpMessageSendingOperations mockowane tylko jeśli brak beana
refs #1708 testy w services nie korzystają bezpośrednio z AppConfig
refs #1708: Poprawienie testu InternalDocumentStorageTest
refs #1708 uproszczenie konfiguracji messaging
History
#1 Updated by Michał Komar over 7 years ago
- Follows Zadanie #1670: Utworzenie serwisu wiadomości added
#2 Updated by Michał Komar over 7 years ago
- Precedes Zadanie #1638: Utworzenie serwisu do zapisywania notyfikacji added
#3 Updated by Michał Komar over 7 years ago
- Assignee changed from Jarosław Bąbel to Michał Komar
- Developer Michał Komar added
- Tester Łukasz Waśkiewicz added
#4 Updated by Michał Komar over 7 years ago
- Assignee changed from Michał Komar to Wojtek Hury
- Developer Wojtek Hury added
#5 Updated by Wojtek Hury over 7 years ago
- predykat sprawdzający, czy użytkownik ma dostęp do zmienionego dokumentu (#1807)
- MessagingServiceImpl nie jest thread-safe (#1808)
#6 Updated by Wojtek Hury over 7 years ago
- Precedes Zadanie #1807: Filtrować wiadomości o zmianie dokumentu per użytkownik added
#8 Updated by Wojtek Hury over 7 years ago
- Assignee changed from Wojtek Hury to Michał Komar
Koncepcja się nieco zmieniła i to zadanie jest do zamknięcia.