in src/main/java/com/googlesource/gerrit/plugins/webhooks/PostTask.java [46:59]
public PostTask(
@WebHooksExecutor ScheduledExecutorService executor,
HttpSession.Factory session,
EventProcessor processor,
@Assisted ProjectEvent event,
@Assisted RemoteConfig remote) {
this.executor = executor;
this.event = event;
this.remote = remote;
// postpone creation of HttpSession so that it is obtained only when processor
// returns non-empty content
this.session = Suppliers.memoize(() -> session.create(remote));
this.processor = Suppliers.memoize(() -> processor.process(event, remote));
}