override fun doPost()

in src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/auth/PrepareForTestController.kt [28:39]


    override fun doPost(request: HttpServletRequest, response: HttpServletResponse, xmlElement: Element) {
        val props = getProps(request)
        val clientId = props["clientId"] ?: return respondError(xmlElement, "'clientId' parameter is required")
        val clientSecret = props["secure:clientSecret"] ?: return respondError(xmlElement, "'secure:clientSecret' parameter is required")
        request.session.setAttribute("slack.clientId", clientId)
        request.session.setAttribute("slack.clientSecret", clientSecret)
        val botToken = props["secure:token"] ?: return respondError(xmlElement, "'secure:token' parameter is required")
        val bot = slackApi.getBot(botToken)
        val teamId = bot.teamId ?: return respondError(xmlElement, "Invalid bot token")
        val teamDomain = bot.teamDomain ?: return respondError(xmlElement, "Invalid bot token")
        respondTeam(xmlElement, teamId, teamDomain)
    }