in src/main/kotlin/org/jetbrains/teamcity/github/action/ActionContext.kt [81:102]
fun updateOneHook(server: String, repo: RepositoryId, rh: RepositoryHook): WebHookInfo? {
val hooks = storage.getHooks(server, repo).toMutableList()
var result: WebHookInfo? = null
if (!hooks.any { it.isSame(rh) }) {
return addHook(rh)
} else {
storage.update(server, repo) {
if (it.isSame(rh)) {
if (!rh.isActive) {
it.status = Status.DISABLED
} else {
// TODO: Should update status?
if (it.status in listOf(Status.MISSING, Status.DISABLED)) {
it.status = Status.WAITING_FOR_SERVER_RESPONSE
}
}
result = it
}
}
}
return result
}