override fun handle()

in ses-plugin-server/src/main/kotlin/jetbrains/buildServer/sesPlugin/teamcity/ui/ajax/CheckAjaxRequest.kt [17:33]


    override fun handle(data: BasePropertiesBean): AjaxRequestResult {
        val bean = sesIntegrationManager.createFrom(data.properties)

        val validate = beanValidator.validate(bean)
        if (!validate.status) {
            return AjaxRequestResult(false, "All mandatory fields should be filled: ${validate.errorFields}", null, validate.errorFields)
        }

        return try {
            val checkConnectionResult = sqsMessagesReceiver.checkConnection(bean)

            AjaxRequestResult(checkConnectionResult.status, if (checkConnectionResult.status) "" else checkConnectionResult.description, checkConnectionResult.exception)
        } catch (e: Exception) {
            AjaxRequestResult(false, "Error occurred: ${e.message}", e)
        }

    }