ExecutePipelineOptions
Namespace: Meshmakers.Octo.Sdk.Common.Services
Options for executing a pipeline
public class ExecutePipelineOptions
Inheritance Object → ExecutePipelineOptions
Properties
TransactionStartedDateTime
Gets or sets the date and time when the transaction started
public DateTime TransactionStartedDateTime { get; }
Property Value
ExternalReceivedDateTime
Gets or sets the date and time when the transaction started
public Nullable<DateTime> ExternalReceivedDateTime { get; set; }
Property Value
TriggerType
Gets or sets the trigger type that initiated this execution
public PipelineTriggerType TriggerType { get; set; }
Property Value
PipelineTriggerType
InputData
Gets or sets optional input data for debugging (will be truncated if too long)
public string InputData { get; set; }
Property Value
IsDryRun
When true, the orchestrator runs the pipeline with
IPipelineExecutionMode.IsDryRun=true so retrofitted Load nodes
suppress their real sink and record a "would-have-written" intent on
the debug stream (M4-B.2). Default false preserves classic semantics.
public bool IsDryRun { get; set; }
Property Value
VerifiedPrincipal
Gets or sets the authenticated caller of the trigger, verified by the trigger's own authorization (AB#4975). Null for anonymous and internal triggers.
public VerifiedPrincipal VerifiedPrincipal { get; set; }
Property Value
CallerAccessToken
Gets or sets the raw access token the caller presented to the trigger, for nodes that
have to act as the caller against another service — the delegation ("on-behalf-of") grant
needs it as subject_token (AB#5026 / AB#5031). Null for anonymous and internal
triggers, and for triggers that do not carry a credential.
public string CallerAccessToken { get; set; }
Property Value
Remarks:
Deliberately NOT on . That record is a slim,
token-free value object precisely because the trigger writes a projection of it into
the pipeline data root, which is echoed back in the HTTP response, persistable by
SetPipelineExecutionResult@1 and visible in the Studio debug panel. Putting a
bearer token on it would leak the caller's credential into every one of those places.
Deliberately NOT in the data context either, for the same reason, and
deliberately not in IEtlContext.Properties: that dictionary is the pipeline
registration's own dictionary and is therefore shared across all runs of the
pipeline — one user's token would still be sitting there for the next user's request.
This property is a per-execution side channel: it travels from the trigger to the ETL
context of exactly this execution and nowhere else.
CallerTrust
Gets or sets the effective trust of the verified caller (AB#5126) — the
min(enrollment, message) the trigger's directory resolution produced, or
CallerTrustLevel.None for an anonymous / unresolved sender. Carried onto the
ETL context so a node can demand a minimum before it acts as the caller.
public CallerTrustLevel CallerTrust { get; set; }
Property Value
Constructors
ExecutePipelineOptions(DateTime)
Options for executing a pipeline
public ExecutePipelineOptions(DateTime transactionStartedDateTime)
Parameters
transactionStartedDateTime DateTime