diff --git a/platform/kernel/rpc/README.md b/platform/kernel/rpc/README.md new file mode 100644 index 000000000000..22aaf8934ae9 --- /dev/null +++ b/platform/kernel/rpc/README.md @@ -0,0 +1,4 @@ +This module brings `fleet.rpc` to IJ Platform. + +`fleet.rpc` depends on `fleet.util-logging-api` => IJ-to-Fleet logger implementation is also put to this module. +The logger implementation may be extracted to a separate module when needed. diff --git a/platform/kernel/rpc/intellij.platform.rpc.iml b/platform/kernel/rpc/intellij.platform.rpc.iml index 95e639ba8917..0fe543ab8839 100644 --- a/platform/kernel/rpc/intellij.platform.rpc.iml +++ b/platform/kernel/rpc/intellij.platform.rpc.iml @@ -3,6 +3,7 @@ + diff --git a/platform/kernel/rpc/resources/META-INF/services/fleet.util.logging.KLoggerFactory b/platform/kernel/rpc/resources/META-INF/services/fleet.util.logging.KLoggerFactory new file mode 100644 index 000000000000..8c548abe418c --- /dev/null +++ b/platform/kernel/rpc/resources/META-INF/services/fleet.util.logging.KLoggerFactory @@ -0,0 +1,2 @@ +# Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +com.intellij.platform.rpc.logger.IjLoggerFactory diff --git a/platform/kernel/shared/src/util/KLogger.kt b/platform/kernel/rpc/src/logger/IjLogger.kt similarity index 68% rename from platform/kernel/shared/src/util/KLogger.kt rename to platform/kernel/rpc/src/logger/IjLogger.kt index 40f8f031fa0d..2fa9d1025e12 100644 --- a/platform/kernel/shared/src/util/KLogger.kt +++ b/platform/kernel/rpc/src/logger/IjLogger.kt @@ -1,18 +1,23 @@ -package com.intellij.platform.kernel.util +// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +package com.intellij.platform.rpc.logger import com.intellij.openapi.diagnostic.Logger -import fleet.util.logging.* -import kotlin.reflect.KClass +import fleet.util.logging.BaseLogger + +internal class IjLogger(private val logger: Logger) : BaseLogger { -class IjLogger(private val logger: Logger) : BaseLogger { override val isTraceEnabled: Boolean get() = logger.isTraceEnabled + override val isDebugEnabled: Boolean get() = logger.isDebugEnabled + override val isInfoEnabled: Boolean get() = true + override val isWarnEnabled: Boolean get() = true + override val isErrorEnabled: Boolean get() = true @@ -59,21 +64,3 @@ class IjLogger(private val logger: Logger) : BaseLogger { logger.error(message?.toString() ?: "null", t) } } - -class IjLoggerFactory : KLoggerFactory { - override fun logger(owner: KClass<*>): KLogger { - return KLogger(IjLogger(Logger.getInstance(owner.java))) - } - - override fun logger(owner: Class<*>): KLogger { - return KLogger(IjLogger(Logger.getInstance(owner))) - } - - override fun logger(owner: Any): KLogger { - return KLogger(IjLogger(Logger.getInstance(owner.toString()))) - } - - override fun logger(name: String): KLogger { - return KLogger(IjLogger(Logger.getInstance(name))) - } -} \ No newline at end of file diff --git a/platform/kernel/rpc/src/logger/IjLoggerFactory.kt b/platform/kernel/rpc/src/logger/IjLoggerFactory.kt new file mode 100644 index 000000000000..29d5c20a605f --- /dev/null +++ b/platform/kernel/rpc/src/logger/IjLoggerFactory.kt @@ -0,0 +1,26 @@ +// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +package com.intellij.platform.rpc.logger + +import com.intellij.openapi.diagnostic.Logger +import fleet.util.logging.KLogger +import fleet.util.logging.KLoggerFactory +import kotlin.reflect.KClass + +internal class IjLoggerFactory : KLoggerFactory { + + override fun logger(owner: KClass<*>): KLogger { + return KLogger(IjLogger(Logger.getInstance(owner.java))) + } + + override fun logger(owner: Class<*>): KLogger { + return KLogger(IjLogger(Logger.getInstance(owner))) + } + + override fun logger(owner: Any): KLogger { + return KLogger(IjLogger(Logger.getInstance(owner.toString()))) + } + + override fun logger(name: String): KLogger { + return KLogger(IjLogger(Logger.getInstance(name))) + } +} diff --git a/platform/kernel/rpc/src/logger/package-info.java b/platform/kernel/rpc/src/logger/package-info.java new file mode 100644 index 000000000000..1620195fdab3 --- /dev/null +++ b/platform/kernel/rpc/src/logger/package-info.java @@ -0,0 +1,5 @@ +// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +@Internal +package com.intellij.platform.rpc.logger; + +import org.jetbrains.annotations.ApiStatus.Internal; diff --git a/platform/kernel/shared/intellij.platform.kernel.iml b/platform/kernel/shared/intellij.platform.kernel.iml index 1bd0d3e0621f..b2da2b282411 100644 --- a/platform/kernel/shared/intellij.platform.kernel.iml +++ b/platform/kernel/shared/intellij.platform.kernel.iml @@ -28,7 +28,6 @@ - diff --git a/platform/kernel/shared/resources/META-INF/services/fleet.util.logging.KLoggerFactory b/platform/kernel/shared/resources/META-INF/services/fleet.util.logging.KLoggerFactory deleted file mode 100644 index 6984072c157b..000000000000 --- a/platform/kernel/shared/resources/META-INF/services/fleet.util.logging.KLoggerFactory +++ /dev/null @@ -1 +0,0 @@ -com.intellij.platform.kernel.util.IjLoggerFactory \ No newline at end of file