aboutsummaryrefslogtreecommitdiff
path: root/src/Locations
diff options
context:
space:
mode:
authorMike Hearn <mike@plan99.net>2015-11-23 19:21:08 +0100
committerMike Hearn <mike@plan99.net>2015-11-23 19:21:08 +0100
commit90cf2ebccd12073a55ff6f187e5a378a2e96e23b (patch)
tree2a8575d78618a8b374a35e6e8749968187583e29 /src/Locations
parent23e270b603eb32472b8ef4a5f44c01af57fd049f (diff)
downloaddokka-90cf2ebccd12073a55ff6f187e5a378a2e96e23b.tar.gz
dokka-90cf2ebccd12073a55ff6f187e5a378a2e96e23b.tar.bz2
dokka-90cf2ebccd12073a55ff6f187e5a378a2e96e23b.zip
Copy style.css to the output directory when doing HTML and use relative paths.
Fixes the code so that the relative path to root is always available, breaking the requirement to use a local web server.
Diffstat (limited to 'src/Locations')
-rw-r--r--src/Locations/FoldersLocationService.kt8
-rw-r--r--src/Locations/LocationService.kt2
-rw-r--r--src/Locations/SingleFolderLocationService.kt9
3 files changed, 13 insertions, 6 deletions
diff --git a/src/Locations/FoldersLocationService.kt b/src/Locations/FoldersLocationService.kt
index 8a0cf6be..89b34ed1 100644
--- a/src/Locations/FoldersLocationService.kt
+++ b/src/Locations/FoldersLocationService.kt
@@ -5,14 +5,16 @@ import com.google.inject.name.Named
import java.io.File
public fun FoldersLocationService(root: String): FoldersLocationService = FoldersLocationService(File(root), "")
-public class FoldersLocationService @Inject constructor(@Named("outputDir") val root: File, val extension: String) : FileLocationService {
+public class FoldersLocationService @Inject constructor(@Named("outputDir") val rootFile: File, val extension: String) : FileLocationService {
+ override val root: Location
+ get() = FileLocation(rootFile)
override fun withExtension(newExtension: String): FileLocationService {
- return if (extension.isEmpty()) FoldersLocationService(root, newExtension) else this
+ return if (extension.isEmpty()) FoldersLocationService(rootFile, newExtension) else this
}
override fun location(qualifiedName: List<String>, hasMembers: Boolean): FileLocation {
- return FileLocation(File(root, relativePathToNode(qualifiedName, hasMembers)).appendExtension(extension))
+ return FileLocation(File(rootFile, relativePathToNode(qualifiedName, hasMembers)).appendExtension(extension))
}
}
diff --git a/src/Locations/LocationService.kt b/src/Locations/LocationService.kt
index 15a4ebac..80bc0236 100644
--- a/src/Locations/LocationService.kt
+++ b/src/Locations/LocationService.kt
@@ -51,6 +51,8 @@ public interface LocationService {
* @param hasMembers if true, the node for which the location is calculated has member nodes.
*/
fun location(qualifiedName: List<String>, hasMembers: Boolean): Location
+
+ val root: Location
}
diff --git a/src/Locations/SingleFolderLocationService.kt b/src/Locations/SingleFolderLocationService.kt
index 049636c0..e313ac28 100644
--- a/src/Locations/SingleFolderLocationService.kt
+++ b/src/Locations/SingleFolderLocationService.kt
@@ -5,12 +5,15 @@ import com.google.inject.name.Named
import java.io.File
public fun SingleFolderLocationService(root: String): SingleFolderLocationService = SingleFolderLocationService(File(root), "")
-public class SingleFolderLocationService @Inject constructor(@Named("outputDir") val root: File, val extension: String) : FileLocationService {
+public class SingleFolderLocationService @Inject constructor(@Named("outputDir") val rootFile: File, val extension: String) : FileLocationService {
override fun withExtension(newExtension: String): FileLocationService =
- SingleFolderLocationService(root, newExtension)
+ SingleFolderLocationService(rootFile, newExtension)
override fun location(qualifiedName: List<String>, hasMembers: Boolean): FileLocation {
val filename = qualifiedName.map { identifierToFilename(it) }.joinToString("-")
- return FileLocation(File(root, filename).appendExtension(extension))
+ return FileLocation(File(rootFile, filename).appendExtension(extension))
}
+
+ override val root: Location
+ get() = FileLocation(rootFile)
} \ No newline at end of file