WorkProcessorImpl.java

  1. package com.github.jonasrutishauser.transactional.event.core.store;

  2. import java.util.concurrent.Callable;

  3. import jakarta.enterprise.context.Dependent;
  4. import jakarta.inject.Inject;

  5. @Dependent
  6. class WorkProcessorImpl implements WorkProcessor {

  7.     private final Worker worker;
  8.    
  9.     public WorkProcessorImpl() {
  10.         this(null);
  11.     }

  12.     @Inject
  13.     public WorkProcessorImpl(Worker worker) {
  14.         this.worker = worker;
  15.     }

  16.     @Override
  17.     public Callable<Boolean> get(String eventId) {
  18.         return () -> worker.process(eventId);
  19.     }

  20. }