feat: add JdaAutoConfiguration.kt
All checks were successful
Release / release (push) Successful in 2m7s

This commit is contained in:
lucasdpt
2025-12-15 15:20:21 +01:00
parent be19485a25
commit e7fdd19928
4 changed files with 40 additions and 4 deletions

View File

@@ -0,0 +1,30 @@
package fr.lucasdupont.configuration
import fr.lucasdupont.service.JdaService
import org.springframework.boot.autoconfigure.AutoConfiguration
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
import org.springframework.boot.context.properties.EnableConfigurationProperties
import org.springframework.context.ApplicationContext
import org.springframework.context.ApplicationEventPublisher
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.ComponentScan
@AutoConfiguration
@EnableConfigurationProperties(JdaConfiguration::class)
@ConditionalOnProperty(prefix = "jda", name = ["token"])
@ComponentScan(basePackages = ["fr.lucasdupont"])
class JdaAutoConfiguration {
@Bean
@ConditionalOnMissingBean
fun jdaService(
applicationContext: ApplicationContext,
jdaConfiguration: JdaConfiguration,
publisher: ApplicationEventPublisher
): JdaService {
return JdaService(applicationContext, jdaConfiguration, publisher)
}
}

View File

@@ -11,15 +11,11 @@ import net.dv8tion.jda.api.events.interaction.command.SlashCommandInteractionEve
import net.dv8tion.jda.api.hooks.ListenerAdapter
import net.dv8tion.jda.api.requests.GatewayIntent
import net.dv8tion.jda.api.utils.cache.CacheFlag
import org.springframework.boot.context.properties.EnableConfigurationProperties
import org.springframework.context.ApplicationContext
import org.springframework.context.ApplicationEventPublisher
import org.springframework.context.PayloadApplicationEvent
import org.springframework.context.event.EventListener
import org.springframework.stereotype.Service
@Service
@EnableConfigurationProperties(JdaConfiguration::class)
class JdaService(
applicationContext: ApplicationContext,
jdaConfiguration: JdaConfiguration,