diff options
author | Dmitry Jemerov <intelliyole@gmail.com> | 2015-01-16 19:14:24 +0100 |
---|---|---|
committer | Dmitry Jemerov <intelliyole@gmail.com> | 2015-01-16 19:14:24 +0100 |
commit | 5eab453ea82634af9b876bff26227ec2d0e753ca (patch) | |
tree | fed6a72ab7d4998b3acfffc2eafc0d01d2ee0ef0 /src/Generation | |
parent | d75cc63e9b1edc229fad225956ba44fa433e2d0e (diff) | |
parent | 29d0822f4521ac1a9d17f78be6e41488b2ef00d2 (diff) | |
download | dokka-5eab453ea82634af9b876bff26227ec2d0e753ca.tar.gz dokka-5eab453ea82634af9b876bff26227ec2d0e753ca.tar.bz2 dokka-5eab453ea82634af9b876bff26227ec2d0e753ca.zip |
Merge pull request #23 from orangy/html-outline
refactor outline generation; generate HTML outline
Diffstat (limited to 'src/Generation')
-rw-r--r-- | src/Generation/FileGenerator.kt | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/Generation/FileGenerator.kt b/src/Generation/FileGenerator.kt index ac146503..128f3260 100644 --- a/src/Generation/FileGenerator.kt +++ b/src/Generation/FileGenerator.kt @@ -5,7 +5,8 @@ import java.io.OutputStreamWriter public class FileGenerator(val signatureGenerator: LanguageService, val locationService: LocationService, - val formatService: FormatService) { + val formatService: FormatService, + val outlineService: OutlineFormatService?) { public fun buildPage(node: DocumentationNode): Unit = buildPages(listOf(node)) public fun buildOutline(node: DocumentationNode): Unit = buildOutlines(listOf(node)) @@ -24,12 +25,15 @@ public class FileGenerator(val signatureGenerator: LanguageService, } public fun buildOutlines(nodes: Iterable<DocumentationNode>) { + if (outlineService == null) { + return + } for ((location, items) in nodes.groupBy { locationService.location(it) }) { - val file = location.file.appendExtension("yml") // TODO: hardcoded + val file = outlineService.getOutlineFileName(location) file.getParentFile()?.mkdirs() FileOutputStream(file).use { OutputStreamWriter(it, Charsets.UTF_8).use { - it.write(formatService.formatOutline(location, items)) + it.write(outlineService.formatOutline(location, items)) } } } |