Files
trueref/trueref-application/src/main/java/com/trueref/application/observability/JobObservationService.java
moze c5f950c2c0
Some checks failed
Build and publish Docker image / Build and push (push) Failing after 1m27s
Initial commit: trueref v0.1.0-SNAPSHOT
Java 21 / Spring Boot 3.5.3 multi-module Maven project.
Hybrid BM25+HNSW search with RRF, cross-encoder reranker,
ONNX Runtime 1.22.0 (CPU + CUDA 12 GPU variants).
2026-05-06 00:49:16 +02:00

48 lines
1.4 KiB
Java

package com.trueref.application.observability;
import com.trueref.domain.model.IngestionJob;
import com.trueref.domain.model.JobId;
import com.trueref.domain.model.JobLogEvent;
import com.trueref.domain.model.JobStatus;
import com.trueref.domain.model.RepositoryId;
import com.trueref.domain.model.VersionId;
import com.trueref.domain.port.in.ObserveJobs;
import com.trueref.domain.port.out.JobEventBus;
import com.trueref.domain.port.out.JobStore;
import java.util.List;
import java.util.Optional;
import java.util.function.Consumer;
import org.jspecify.annotations.Nullable;
public final class JobObservationService implements ObserveJobs {
private final JobStore jobs;
private final JobEventBus bus;
public JobObservationService(JobStore jobs, JobEventBus bus) {
this.jobs = jobs;
this.bus = bus;
}
@Override
public Optional<IngestionJob> findJob(JobId id) {
return jobs.findById(id);
}
@Override
public List<IngestionJob> listJobs(
@Nullable RepositoryId repoId, @Nullable VersionId versionId, @Nullable JobStatus status, int limit) {
return jobs.find(repoId, versionId, status, limit);
}
@Override
public AutoCloseable subscribeJobs(Consumer<IngestionJob> listener) {
return bus.subscribeJobs(listener);
}
@Override
public AutoCloseable subscribeLogs(JobId jobId, Consumer<JobLogEvent> listener) {
return bus.subscribeLogs(jobId, listener);
}
}