aboutsummaryrefslogtreecommitdiff
path: root/core/src
diff options
context:
space:
mode:
Diffstat (limited to 'core/src')
-rw-r--r--core/src/main/kotlin/DokkaBootstrapImpl.kt20
-rw-r--r--core/src/main/kotlin/DokkaGenerator.kt2
-rw-r--r--core/src/main/kotlin/plugability/DefaultExtensions.kt2
-rw-r--r--core/src/main/kotlin/utilities/DokkaLogging.kt23
4 files changed, 34 insertions, 13 deletions
diff --git a/core/src/main/kotlin/DokkaBootstrapImpl.kt b/core/src/main/kotlin/DokkaBootstrapImpl.kt
index ccd87363..fc1b6926 100644
--- a/core/src/main/kotlin/DokkaBootstrapImpl.kt
+++ b/core/src/main/kotlin/DokkaBootstrapImpl.kt
@@ -2,6 +2,7 @@ package org.jetbrains.dokka
import com.google.gson.Gson
import org.jetbrains.dokka.DokkaConfiguration.PackageOptions
+import org.jetbrains.dokka.utilities.DokkaConsoleLogger
import org.jetbrains.dokka.utilities.DokkaLogger
import java.util.function.BiConsumer
@@ -26,6 +27,9 @@ fun parsePerPackageOptions(arg: String): List<PackageOptions> {
class DokkaBootstrapImpl : DokkaBootstrap {
private class DokkaProxyLogger(val consumer: BiConsumer<String, String>) : DokkaLogger {
+ override var warningsCount: Int = 0
+ override var errorsCount: Int = 0
+
override fun debug(message: String) {
consumer.accept("debug", message)
}
@@ -39,11 +43,23 @@ class DokkaBootstrapImpl : DokkaBootstrap {
}
override fun warn(message: String) {
- consumer.accept("warn", message)
+ consumer.accept("warn", message).also { warningsCount++ }
}
override fun error(message: String) {
- consumer.accept("error", message)
+ consumer.accept("error", message).also { errorsCount++ }
+ }
+
+ override fun report() {
+ if (warningsCount > 0 || errorsCount > 0) {
+ println("Generation completed with $warningsCount warning" +
+ (if(DokkaConsoleLogger.warningsCount == 1) "" else "s") +
+ " and $errorsCount error" +
+ if(DokkaConsoleLogger.errorsCount == 1) "" else "s"
+ )
+ } else {
+ println("generation completed successfully")
+ }
}
}
diff --git a/core/src/main/kotlin/DokkaGenerator.kt b/core/src/main/kotlin/DokkaGenerator.kt
index 138bd70d..fef71aab 100644
--- a/core/src/main/kotlin/DokkaGenerator.kt
+++ b/core/src/main/kotlin/DokkaGenerator.kt
@@ -54,6 +54,8 @@ class DokkaGenerator(
logger.progress("Rendering")
render(transformedPages, context)
+
+ logger.report()
}
fun setUpAnalysis(configuration: DokkaConfiguration): Map<PlatformData, EnvironmentAndFacade> =
diff --git a/core/src/main/kotlin/plugability/DefaultExtensions.kt b/core/src/main/kotlin/plugability/DefaultExtensions.kt
index e4a47ee1..c45f28be 100644
--- a/core/src/main/kotlin/plugability/DefaultExtensions.kt
+++ b/core/src/main/kotlin/plugability/DefaultExtensions.kt
@@ -13,7 +13,7 @@ import org.jetbrains.dokka.transformers.psi.DefaultPsiToDocumentationTranslator
internal object DefaultExtensions {
private val renderer: LazyEvaluated<HtmlRenderer> = LazyEvaluated.fromRecipe { HtmlRenderer(it.single(CoreExtensions.outputWriter), it) }
- private val converter: LazyEvaluated<DocTagToContentConverter> = LazyEvaluated.fromRecipe {DocTagToContentConverter(it) }
+ private val converter: LazyEvaluated<DocTagToContentConverter> = LazyEvaluated.fromRecipe { DocTagToContentConverter(it) }
private val providerFactory: LazyEvaluated<DefaultLocationProviderFactory> = LazyEvaluated.fromRecipe { DefaultLocationProviderFactory(it) }
diff --git a/core/src/main/kotlin/utilities/DokkaLogging.kt b/core/src/main/kotlin/utilities/DokkaLogging.kt
index 9fe15d59..1c05c95d 100644
--- a/core/src/main/kotlin/utilities/DokkaLogging.kt
+++ b/core/src/main/kotlin/utilities/DokkaLogging.kt
@@ -1,16 +1,19 @@
package org.jetbrains.dokka.utilities
interface DokkaLogger {
+ var warningsCount: Int
+ var errorsCount: Int
fun debug(message: String)
fun info(message: String)
fun progress(message: String)
fun warn(message: String)
fun error(message: String)
+ fun report()
}
object DokkaConsoleLogger : DokkaLogger {
- var warningCount: Int = 0
- var errorCount: Int = 0
+ override var warningsCount: Int = 0
+ override var errorsCount: Int = 0
override fun debug(message: String)= println(message)
@@ -18,16 +21,16 @@ object DokkaConsoleLogger : DokkaLogger {
override fun info(message: String) = println(message)
- override fun warn(message: String) = println("WARN: $message").also { warningCount++ }
+ override fun warn(message: String) = println("WARN: $message").also { warningsCount++ }
- override fun error(message: String) = println("ERROR: $message").also { errorCount++ }
+ override fun error(message: String) = println("ERROR: $message").also { errorsCount++ }
- fun report() {
- if (warningCount > 0 || errorCount > 0) {
- println("generation completed with $warningCount warning" +
- (if(warningCount == 1) "" else "s") +
- " and $errorCount error" +
- if(errorCount == 1) "" else "s"
+ override fun report() {
+ if (warningsCount > 0 || errorsCount > 0) {
+ println("Generation completed with warningsCount warning" +
+ (if(warningsCount == 1) "" else "s") +
+ " and errorsCount error" +
+ if(errorsCount == 1) "" else "s"
)
} else {
println("generation completed successfully")