Skip to main content

Architecture

Hexagon under com.splick.messaging plus infrastructure/websocket and infrastructure/presence.

Controllers validate and map HTTP. Use cases own transactions and business rules. Domain types do not import Spring Data or HTTP clients. Infrastructure implements ports (JDBC, Redis, HTTP).

Use cases​

  • SendMessageUseCase
  • GetOrCreateDirectConversationUseCase
  • CreateGroupConversationUseCase
  • TransferGroupAdminUseCase
  • PublishTypingUseCase
  • BulkGetPresenceUseCase
  • SearchMessagesUseCase
  • SyncSocialGroupMembershipUseCase

Local run: ./gradlew run task for this service from splick-backend (see the service README and Makefile targets such as runAuth). The relay must be running before you expect downstream side effects.