Class IntakeReceiptProjector
java.lang.Object
ai.pipestream.connector.intake.event.IntakeReceiptProjector
Projects the intake lifecycle event streams — accepted, rejected, error —
into the upload-receipt read-model that backs the status lookup. This is the
"write" half of publish-then-write: the upload path only publishes; the durable
write happens here, off the request thread, making the events the source of truth.
Consumes its own service's events — connector-intake owns the token→status lookup, so it maintains the projection locally. A projection failure is swallowed (logged, never rethrown) so one bad message can't stall the channel; the receipt simply stays unprojected (status reads PENDING) until a later event.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidonAccepted(io.smallrye.reactive.messaging.kafka.Record<UUID, ai.pipestream.connector.intake.v1.DocumentAccepted> record) voidonError(io.smallrye.reactive.messaging.kafka.Record<UUID, ai.pipestream.connector.intake.v1.DocumentError> record) voidonRejected(io.smallrye.reactive.messaging.kafka.Record<UUID, ai.pipestream.connector.intake.v1.DocumentRejected> record)
-
Constructor Details
-
IntakeReceiptProjector
public IntakeReceiptProjector()
-
-
Method Details
-
onAccepted
public void onAccepted(io.smallrye.reactive.messaging.kafka.Record<UUID, ai.pipestream.connector.intake.v1.DocumentAccepted> record) -
onRejected
public void onRejected(io.smallrye.reactive.messaging.kafka.Record<UUID, ai.pipestream.connector.intake.v1.DocumentRejected> record) -
onError
public void onError(io.smallrye.reactive.messaging.kafka.Record<UUID, ai.pipestream.connector.intake.v1.DocumentError> record)
-