All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.freya022.botcommands.api.localization.readers.provider.DefaultLocalizationMapReaderProvider.kt Maven / Gradle / Ivy

package io.github.freya022.botcommands.api.localization.readers.provider

import com.fasterxml.jackson.core.JsonFactory
import com.fasterxml.jackson.core.json.JsonReadFeature
import com.fasterxml.jackson.databind.ObjectMapper
import io.github.freya022.botcommands.api.core.BContext
import io.github.freya022.botcommands.api.core.service.annotations.BService
import io.github.freya022.botcommands.api.localization.readers.JacksonLocalizationMapReader
import io.github.freya022.botcommands.api.localization.readers.LocalizationMapReader
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration

@Configuration
@BService
internal open class DefaultLocalizationMapReaderProvider {
    @Bean("builtinJsonLocalizationMapReader")
    @BService(name = "builtinJsonLocalizationMapReader")
    open fun defaultJsonLocalizationMapReader(context: BContext): LocalizationMapReader {
        return JacksonLocalizationMapReader.createWithDefaultTemplate(
            context,
            ObjectMapper(JsonFactory())
                .enable(JsonReadFeature.ALLOW_JAVA_COMMENTS.mappedFeature()),
            folderName = "bc_localization",
            extensions = listOf("json"),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy