Zum Hauptinhalt springen

IEtlContext

Namespace: Meshmakers.Octo.Sdk.Common.EtlDataPipeline

A context for an ETL process

public interface IEtlContext

Properties​

TenantId​

Gets the tenant id

public abstract string TenantId { get; }

Property Value​

String

PipelineExecutionId​

Gets a guid that identifies the pipeline execution instance.

public abstract Guid PipelineExecutionId { get; }

Property Value​

Guid

DataFlowRtId​

Returns the data flow id.

public abstract OctoObjectId DataFlowRtId { get; }

Property Value​

OctoObjectId

PipelineRtEntityId​

Returns the pipeline id.

public abstract RtEntityId PipelineRtEntityId { get; }

Property Value​

RtEntityId

TransactionStartedDateTime​

Gets the transaction started date time.

public abstract DateTime TransactionStartedDateTime { get; }

Property Value​

DateTime

ExternalReceivedDateTime​

Gets the date time when the value was received by an optional external system.

public abstract Nullable<DateTime> ExternalReceivedDateTime { get; }

Property Value​

Nullable<DateTime>

Properties​

Gets properties that are shared between the different stages of the ETL process and different runs of the pipeline

public abstract IDictionary<string, object> Properties { get; }

Property Value​

IDictionary<String, Object>

GlobalConfiguration​

Gets the global configuration for the pipeline

public abstract IGlobalConfiguration GlobalConfiguration { get; }

Property Value​

IGlobalConfiguration

VerifiedPrincipal​

Gets the authenticated caller of the trigger, verified by the trigger's own authorization (AB#4975). Null for anonymous and internal triggers. Deliberately NOT part of IEtlContext.Properties — that dictionary is shared across pipeline runs.

public VerifiedPrincipal VerifiedPrincipal { get; }

Property Value​

VerifiedPrincipal

CallerAccessToken​

Gets the raw access token the caller presented to the trigger, for nodes that must act as the caller against another service (delegation / "on-behalf-of" — AB#5026 / AB#5031). Null for anonymous and internal triggers.

public string CallerAccessToken { get; }

Property Value​

String

Remarks:

A default interface member so adapters implementing IEtlContext themselves are not broken by the addition — the same pattern IEtlContext.VerifiedPrincipal uses. Deliberately NOT part of IEtlContext.Properties (shared across pipeline runs) and NOT part of IEtlContext.VerifiedPrincipal (projected into the persistable, echoed data root); see ExecutePipelineOptions.CallerAccessToken for the full reasoning. Never log this value and never write it into the data context.

CallerTrust​

Gets the effective trust of the verified caller (AB#5126), so a node can demand a minimum — e.g. delegate only when the caller is at least CallerTrustLevel.Strong. CallerTrustLevel.None for anonymous / internal triggers and for a caller with no verified-identifier binding.

public CallerTrustLevel CallerTrust { get; }

Property Value​

CallerTrustLevel

Remarks:

A default interface member for the same reason as IEtlContext.VerifiedPrincipal and IEtlContext.CallerAccessToken: adapters that implement IEtlContext themselves are not broken by the addition.