public void handle()

in webhooks-server/src/main/java/jetbrains/buildServer/webhook/WebhooksEventListener.java [56:77]


    public void handle(AsyncEvent event) {
        final String projectKey = event.getProjectId() != null ? event.getProjectId() : "<Root Project>";
        try {
            ProjectEx project = getRelatedProject(event);
            if (isWebhooksEnabled(project, event.getEventType())) {
                String webhooksUrl = getWebhooksUrl(project);
                if (jsonProducer.support(event)) {
                    String eventData = jsonProducer.getJson(event, getResponseFields(project, event.getEventType()));
                    sendWithRetry(webhooksUrl, getWebhooksCredential(project), eventData, getRetryCount(project));
                    lastErrorCodeMap.remove(projectKey);
                } else {
                    LOG.warn("Unsupported event type " + event.getEventType());
                }
            }
        } catch (WebhookSendException ex) {
            warn(projectKey, ex.getReason(), ex.getMessage());
        } catch (ProjectNotFoundException ex) {
            warn(projectKey, "PROJECT_NOT_FOUND", "Related project not found for event " + event);
        } catch (Throwable throwable) {
            warn(projectKey, throwable.getClass().getName(), throwable.getMessage());
        }
    }