Class RedissonJobQueueAdapter

java.lang.Object
app.ductape.sdk.jobs.RedissonJobQueueAdapter
All Implemented Interfaces:
JobsService.JobQueueAdapter

public final class RedissonJobQueueAdapter extends Object implements JobsService.JobQueueAdapter
Redisson-native queue adapter that mirrors the queue touchpoints used by TS JobsService (which is BullMQ-backed in TS). Java is Redisson-native by design — this adapter does not speak the BullMQ wire protocol; it provides equivalent functional semantics on top of Redisson primitives (RScoredSortedSet, RMap, distributed locks).

Touchpoints kept aligned with TS callers:

  • add(type, input, options)repeat.every / repeat.cron supported with repeat.limit / repeat.endDate guards (recurrence reschedules on ack).
  • get/remove by jobId.
  • removeRepeatableByKey(repeatableKey).
  • claimDueJobsWithLock / ack / fail — worker-token leasing for the Ductape.monitor() loop, with stale-lock reclamation (functional equivalent of BullMQ stalled-job recovery).

Retry/backoff is owned by TS job-state logic in ProcessorService/JobsService, not by this adapter — the fail path here only reschedules recurring jobs and re-leases stalled work, never silently increments attempts.