override fun handle()

in ses-plugin-server/src/main/kotlin/jetbrains/buildServer/sesPlugin/teamcity/ui/ajax/SubmitAjaxRequest.kt [13:24]


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

        val id = properties["projectExtId"] ?: return AjaxRequestResult(false, "Project ID should be provided")

        properties.values.removeIf({ it.isNullOrBlank() })
        properties.values.remove("projectExtId")

        val persistResult = sesIntegrationManager.persistBean(sesIntegrationManager.createFrom(properties), id)

        return AjaxRequestResult(persistResult.persisted, if (persistResult.persisted) "Settings saved" else "Cannot save settings: ${persistResult.details}")
    }