Módulo: Application

Módulo: FirelandsApplication (src/application)

La capa application implementa casos de uso y ports que infrastructure satisface. Orquesta objetos de dominio sin conocer MariaDB ni Boost.Asio.

Biblioteca compilada (FirelandsApplication)

FuenteRol
RealmListService.cppFilas de reinos + población en vivo vía IRealmLiveState
CommandService.cppComandos . de staff y consola world — ver Comandos GM
OnlineCharacterSessionRegistry.cppNombre en línea → sesión para targeting desde consola
WorldService.cppFachada runtime del mundo: mapas, jugadores, criaturas, host Lua, port de colisión

Servicios header-only

ServicioRol
AuthServiceBúsqueda de cuenta, verificación SRP, session keys
SRPServiceHelpers de verificación SRP-6a
CharacterServiceLista y persistencia de personajes
PlayerCreateInfoServicePlantillas de creación de personajes
GmTicketServiceCola de tickets, asignación, respuestas — Tickets GM
WebSessionServiceSeguimiento de sesiones REST
SpellManager / CombatServiceEfectos de hechizos y orquestación de combate

Application ports (application/ports/)

PortImplementado por
INetworkServerAsyncNetworkServer
IAuthSessionAuthSession
ICommandService / ICommandSessionCommandService / WorldSession
IGameScriptHostLuaGameScriptHost
IMapCollisionQueriesMapCollisionQueriesStub (vmap planificado)
IRealmLiveStateRealmLiveRegistry + realm-link
IWorldRuntimeWorldRuntimeAccess

IMapNotifier vive en domain/ports/ (usado por Player).

Regla de dependencias

Application depende solo de domain + shared. Sin headers concretos de MySQL ni ASIO.

Relacionado