Skip to content

Commit 9b5a405

Browse files
authored
For javadoc, link to class instead of object (#13)
1 parent ff00ea1 commit 9b5a405

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

src/main/scala/com/lightbend/paradox/apidoc/ApidocDirective.scala

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -69,9 +69,9 @@ class ApidocDirective(allClasses: IndexedSeq[String]) extends InlineDirective("a
6969
}
7070

7171
def renderByClassName(label: String, node: DirectiveNode, visitor: Visitor, printer: Printer): Unit = {
72-
val query = node.label.replaceAll("\\\\_", "_")
73-
val className = baseClassName(query)
74-
val classSuffix = if (query.endsWith("$")) "$" else ""
72+
val query = node.label.replaceAll("\\\\_", "_")
73+
val className = baseClassName(query)
74+
val scalaClassSuffix = if (query.endsWith("$")) "$" else ""
7575

7676
val matches = allClasses.filter(_.endsWith('.' + className))
7777
matches.size match {
@@ -80,14 +80,14 @@ class ApidocDirective(allClasses: IndexedSeq[String]) extends InlineDirective("a
8080
case 1 if matches(0).contains("adsl") =>
8181
throw new java.lang.IllegalStateException(s"Match for $query only found in one language: ${matches(0)}")
8282
case 1 =>
83-
syntheticNode("scala", scalaLabel(query), matches(0) + classSuffix, node).accept(visitor)
84-
syntheticNode("java", javaLabel(query), matches(0) + classSuffix, node).accept(visitor)
83+
syntheticNode("scala", scalaLabel(query), matches(0) + scalaClassSuffix, node).accept(visitor)
84+
syntheticNode("java", javaLabel(query), matches(0), node).accept(visitor)
8585
case 2 if matches.forall(_.contains("adsl")) =>
8686
matches.foreach(m => {
8787
if (!m.contains("javadsl"))
88-
syntheticNode("scala", scalaLabel(query), m + classSuffix, node).accept(visitor)
88+
syntheticNode("scala", scalaLabel(query), m + scalaClassSuffix, node).accept(visitor)
8989
if (!m.contains("scaladsl"))
90-
syntheticNode("java", javaLabel(query), m + classSuffix, node).accept(visitor)
90+
syntheticNode("java", javaLabel(query), m, node).accept(visitor)
9191
})
9292
case n =>
9393
throw new java.lang.IllegalStateException(

src/test/scala/com.lightbend.paradox/apidoc/ApidocPluginSpec.scala renamed to src/test/scala/com.lightbend.paradox/apidoc/ApidocDirectiveSpec.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ package com.lightbend.paradox.apidoc
1818

1919
import com.lightbend.paradox.markdown.Writer
2020

21-
class ApidocPluginSpec extends MarkdownBaseSpec {
21+
class ApidocDirectiveSpec extends MarkdownBaseSpec {
2222
val rootPackage = "akka"
2323

2424
val allClasses = Array(
@@ -113,7 +113,7 @@ class ApidocPluginSpec extends MarkdownBaseSpec {
113113
html(
114114
"""<p><span class="group-scala">
115115
|<a href="https://doc.akka.io/api/akka/2.5/akka/cluster/client/ClusterClient$.html">ClusterClient</a></span><span class="group-java">
116-
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/cluster/client/ClusterClient$.html">ClusterClient</a></span>
116+
|<a href="https://doc.akka.io/japi/akka/2.5/?akka/cluster/client/ClusterClient.html">ClusterClient</a></span>
117117
|</p>""".stripMargin
118118
)
119119
}

0 commit comments

Comments
 (0)