diff --git a/plugins/github/src/org/jetbrains/plugins/github/api/data/GHBot.kt b/plugins/github/src/org/jetbrains/plugins/github/api/data/GHBot.kt index 7202667e1077..15859e190613 100644 --- a/plugins/github/src/org/jetbrains/plugins/github/api/data/GHBot.kt +++ b/plugins/github/src/org/jetbrains/plugins/github/api/data/GHBot.kt @@ -1,11 +1,15 @@ // Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package org.jetbrains.plugins.github.api.data -class GHBot(id: String, - override val login: String, - override val url: String, - override val avatarUrl: String, - val name: String?) - : GHNode(id), GHActor { +import org.jetbrains.plugins.github.api.data.pullrequest.GHPullRequestRequestedReviewer + +class GHBot( + id: String, + override val login: String, + override val url: String, + override val avatarUrl: String, + override val name: String?, +) : GHNode(id), GHActor, GHPullRequestRequestedReviewer { + override val shortName: String = login override fun getPresentableName(): String = name ?: login } diff --git a/plugins/github/src/org/jetbrains/plugins/github/api/data/GHMannequin.kt b/plugins/github/src/org/jetbrains/plugins/github/api/data/GHMannequin.kt index c9112a8bc0b2..1b5d0c7289d8 100644 --- a/plugins/github/src/org/jetbrains/plugins/github/api/data/GHMannequin.kt +++ b/plugins/github/src/org/jetbrains/plugins/github/api/data/GHMannequin.kt @@ -1,11 +1,15 @@ // Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package org.jetbrains.plugins.github.api.data -class GHMannequin(id: String, - override val login: String, - override val url: String, - override val avatarUrl: String, - val name: String?) - : GHNode(id), GHActor { +import org.jetbrains.plugins.github.api.data.pullrequest.GHPullRequestRequestedReviewer + +class GHMannequin( + id: String, + override val login: String, + override val url: String, + override val avatarUrl: String, + override val name: String?, +) : GHNode(id), GHActor, GHPullRequestRequestedReviewer { + override val shortName: String = login override fun getPresentableName(): String = name ?: login } diff --git a/plugins/github/src/org/jetbrains/plugins/github/api/data/pullrequest/GHPullRequestRequestedReviewer.kt b/plugins/github/src/org/jetbrains/plugins/github/api/data/pullrequest/GHPullRequestRequestedReviewer.kt index e38d10a00e18..f8523a682261 100644 --- a/plugins/github/src/org/jetbrains/plugins/github/api/data/pullrequest/GHPullRequestRequestedReviewer.kt +++ b/plugins/github/src/org/jetbrains/plugins/github/api/data/pullrequest/GHPullRequestRequestedReviewer.kt @@ -5,6 +5,8 @@ import com.fasterxml.jackson.annotation.JsonSubTypes import com.fasterxml.jackson.annotation.JsonTypeInfo import com.intellij.collaboration.api.dto.GraphQLFragment import com.intellij.openapi.util.NlsSafe +import org.jetbrains.plugins.github.api.data.GHBot +import org.jetbrains.plugins.github.api.data.GHMannequin import org.jetbrains.plugins.github.api.data.GHUser @GraphQLFragment("/graphql/fragment/pullRequestReviewerInfo.graphql") @@ -12,6 +14,8 @@ import org.jetbrains.plugins.github.api.data.GHUser defaultImpl = GHPullRequestRequestedReviewer.Unknown::class) @JsonSubTypes( JsonSubTypes.Type(name = "User", value = GHUser::class), + JsonSubTypes.Type(name = "Bot", value = GHBot::class), + JsonSubTypes.Type(name = "Mannequin", value = GHMannequin::class), JsonSubTypes.Type(name = "Team", value = GHTeam::class) ) interface GHPullRequestRequestedReviewer {