ServiceContainer

data class ServiceContainer(val languageManager: LanguageManager, val playerSettingsManager: PlayerSettingsManager, val directMessageHandler: DirectMessageHandler, val romajiConverter: RomanjiConverter? = null, val channelManager: ChannelManager? = null, val channelMembershipManager: ChannelMembershipManager? = null, val channelMessageHandler: ChannelMessageHandler? = null, val channelNotificationHandler: ChannelNotificationHandler? = null, val velocityConnectionManager: VelocityConnectionManager? = null, val crossServerChatManager: CrossServerChatManager? = null)(source)

Container for initialized services.

This data class holds all services that have been initialized during plugin startup, eliminating the need for null-assertion operators throughout the codebase.

Constructors

Link copied to clipboard
constructor(languageManager: LanguageManager, playerSettingsManager: PlayerSettingsManager, directMessageHandler: DirectMessageHandler, romajiConverter: RomanjiConverter? = null, channelManager: ChannelManager? = null, channelMembershipManager: ChannelMembershipManager? = null, channelMessageHandler: ChannelMessageHandler? = null, channelNotificationHandler: ChannelNotificationHandler? = null, velocityConnectionManager: VelocityConnectionManager? = null, crossServerChatManager: CrossServerChatManager? = null)

Properties

Link copied to clipboard

Optional (only when channel chat feature is enabled)

Link copied to clipboard

Optional (only when channel chat feature is enabled)

Link copied to clipboard

Optional (only when channel chat feature is enabled)

Link copied to clipboard

Optional (only when channel chat feature is enabled)

Link copied to clipboard

Optional (only when Velocity integration and cross-server chat are enabled)

Link copied to clipboard

Always available (core feature)

Link copied to clipboard

Always available (initialized first)

Link copied to clipboard

Always available (required for DM notifications)

Link copied to clipboard

Optional (only when Japanese conversion feature is enabled)

Link copied to clipboard

Optional (only when Velocity integration is enabled)