Skip to content

Commit f82020d

Browse files
authored
Fix link to Java field (#4360)
1 parent e78813c commit f82020d

File tree

2 files changed

+26
-4
lines changed

2 files changed

+26
-4
lines changed

dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/resolvers/external/javadoc/JavadocExternalLocationProvider.kt

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,12 @@ public open class JavadocExternalLocationProvider(
5151
}
5252

5353
protected open fun anchorPart(callable: Callable): String {
54-
return callable.name +
55-
"${brackets.first()}" +
56-
callable.params.joinToString(separator) { it.toJavadocURL() } +
57-
"${brackets.last()}"
54+
return if (callable.isProperty)
55+
callable.name
56+
else
57+
callable.name + "${brackets.first()}" +
58+
callable.params.joinToString(separator) { it.toJavadocURL() } +
59+
"${brackets.last()}"
5860
}
5961

6062
private fun TypeReference.toJavadocURL(): String {

dokka-subprojects/plugin-base/src/test/kotlin/locationProvider/JavadocExternalLocationProviderTest.kt

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,4 +141,24 @@ class JavadocExternalLocationProviderTest : BaseAbstractTest() {
141141
locationProvider.resolve(dri)
142142
)
143143
}
144+
145+
@Test
146+
fun `#3351 link to Java field`() {
147+
val locationProvider = getTestLocationProvider()
148+
val dri = DRI(
149+
packageName = "java.io",
150+
classNames = "Reader",
151+
callable = Callable(
152+
name = "lock",
153+
params = emptyList(),
154+
isProperty = true
155+
),
156+
target = PointingToDeclaration
157+
)
158+
159+
assertEquals(
160+
"https://docs.oracle.com/javase/8/docs/api/java/io/Reader.html#lock",
161+
locationProvider.resolve(dri)
162+
)
163+
}
144164
}

0 commit comments

Comments
 (0)