refactor(bot-config): 重构Bot配置并更新初始化
All checks were successful
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 5s
All checks were successful
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 5s
- 重构BotConfig类并移动至新的package:info.alinadace.miraibot.configuration。 - 从BotConfiguration.kt中移除未使用的imports和函数。 - 在Initialization.kt中添加PostConstruct注解用于服务初始化。 - 更新ExampleService.kt以使用新的配置package。 - 通过更改名称为'functionMap'并使用GlobalEventChannel优化事件处理。 此重构改进了代码结构,更新了配置的初始化,并增强了事件处理机制。
This commit is contained in:
parent
a7aa2bda2b
commit
76d6f849a4
@ -1,10 +1,9 @@
|
||||
package info.alinadace.miraibot.bean
|
||||
|
||||
import info.alinadace.miraibot.annotation.BotFunction
|
||||
import info.alinadace.miraibot.config.BotConfig
|
||||
import info.alinadace.miraibot.configuration.BotConfig
|
||||
import info.alinadace.miraibot.enums.LoginType
|
||||
import info.alinadace.miraibot.service.Service
|
||||
import jakarta.annotation.PostConstruct
|
||||
import jakarta.annotation.Resource
|
||||
import net.mamoe.mirai.Bot
|
||||
import net.mamoe.mirai.BotFactory
|
||||
@ -43,7 +42,7 @@ class BotConfiguration {
|
||||
}
|
||||
}
|
||||
|
||||
@Bean
|
||||
@Bean("functionMap")
|
||||
fun botFunctionMap(): HashMap<KClass<out Event>, MutableList<Service<Event>>> {
|
||||
val eventMap = HashMap<KClass<out Event>, MutableList<Service<Event>>>();
|
||||
for (service in services) {
|
||||
@ -67,11 +66,6 @@ class BotConfiguration {
|
||||
return eventMap
|
||||
}
|
||||
|
||||
@PostConstruct
|
||||
fun init() {
|
||||
|
||||
}
|
||||
|
||||
private fun BotConfiguration.extracted() {
|
||||
fileBasedDeviceInfo()
|
||||
protocol = BotConfiguration.MiraiProtocol.ANDROID_WATCH
|
||||
|
@ -1,4 +1,4 @@
|
||||
package info.alinadace.miraibot.config
|
||||
package info.alinadace.miraibot.configuration
|
||||
|
||||
import info.alinadace.miraibot.enums.LoginType
|
||||
import org.springframework.beans.factory.annotation.Value
|
@ -0,0 +1,30 @@
|
||||
package info.alinadace.miraibot.configuration
|
||||
|
||||
import info.alinadace.miraibot.service.Service
|
||||
import jakarta.annotation.PostConstruct
|
||||
import jakarta.annotation.Resource
|
||||
import net.mamoe.mirai.event.Event
|
||||
import net.mamoe.mirai.event.GlobalEventChannel
|
||||
import kotlin.reflect.KClass
|
||||
|
||||
/**
|
||||
* 机器人功能初始化
|
||||
* @author Kane
|
||||
* @since 2024/9/4 18:49
|
||||
*/
|
||||
@org.springframework.stereotype.Service
|
||||
class Initialization {
|
||||
@Resource(name = "functionMap")
|
||||
lateinit var functionMap: HashMap<KClass<out Event>, MutableList<Service<Event>>>;
|
||||
|
||||
@PostConstruct
|
||||
fun initFunction() {
|
||||
functionMap.forEach { v ->
|
||||
GlobalEventChannel.subscribeAlways(v.key) {
|
||||
val filter = v.value.filter { x -> x.entrance(this) }
|
||||
filter.forEach { x -> x.active(this) }
|
||||
}
|
||||
}
|
||||
print("Channel complete")
|
||||
}
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
package info.alinadace.miraibot.service
|
||||
|
||||
import info.alinadace.miraibot.annotation.BotFunction
|
||||
import info.alinadace.miraibot.config.BotConfig
|
||||
import info.alinadace.miraibot.configuration.BotConfig
|
||||
import net.mamoe.mirai.event.events.FriendMessageEvent
|
||||
import net.mamoe.mirai.message.data.PlainText
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user