LeaseTriggerMessage
Namespace: Meshmakers.Octo.Communication.Contracts.MessageObjects
Cron tick for a pipeline whose adapter is Leased (AB#5278, Epic AB#4914).
A leased adapter has no process of its own, so the per-pipeline trigger queue a dedicated
adapter consumes through FromPipelineTriggerEvent@1 has no consumer — and a pool
member that happens to hold a lease must not consume it either, because a run that starts
that way bypasses the lease bookkeeping (no queued execution, no queue position, no lease
span). For such a pipeline the controller therefore registers the recurring send with THIS
message to its own durable queue (PipelineQueueNames.LeaseTriggerQueue)
instead of the adapter's queue, and turns every tick into a queued work item exactly as an
explicit ExecutePipeline would.
public record LeaseTriggerMessage : IEquatable<LeaseTriggerMessage>
Inheritance Object → LeaseTriggerMessage
Implements IEquatable<LeaseTriggerMessage>
Properties
TenantId
Tenant the pipeline belongs to (the borrower).
public string TenantId { get; set; }
Property Value
PipelineRtId
Runtime entity id of the pipeline the cron fires.
public string PipelineRtId { get; set; }
Property Value
TriggerRtId
Runtime entity id of the PipelineTrigger that owns the cron, for diagnostics.
public string TriggerRtId { get; set; }
Property Value
Constructors
LeaseTriggerMessage(String, String, String)
Cron tick for a pipeline whose adapter is Leased (AB#5278, Epic AB#4914).
A leased adapter has no process of its own, so the per-pipeline trigger queue a dedicated
adapter consumes through FromPipelineTriggerEvent@1 has no consumer — and a pool
member that happens to hold a lease must not consume it either, because a run that starts
that way bypasses the lease bookkeeping (no queued execution, no queue position, no lease
span). For such a pipeline the controller therefore registers the recurring send with THIS
message to its own durable queue (PipelineQueueNames.LeaseTriggerQueue)
instead of the adapter's queue, and turns every tick into a queued work item exactly as an
explicit ExecutePipeline would.
public LeaseTriggerMessage(string TenantId, string PipelineRtId, string TriggerRtId)
Parameters
TenantId String
Tenant the pipeline belongs to (the borrower).
PipelineRtId String
Runtime entity id of the pipeline the cron fires.
TriggerRtId String
Runtime entity id of the PipelineTrigger that owns the cron, for diagnostics.