Table of Contents

Interface IOrchestrationServiceBlobStore

Namespace
DurableTask.Core.Tracking
Assembly
DurableTask.Core.dll

Interface to allow save and load large blobs, such as message and session, as a stream using a storage store. The blob is saved in the store using an access key (e.g., a path to the blob), which can be used to uniquely load the blob back.

public interface IOrchestrationServiceBlobStore

Methods

BuildMessageBlobKey(OrchestrationInstance, DateTime)

Create a blob storage access key based on the orchestrationInstance. This key will be used to save and load the stream message in external storage when it is too large.

string BuildMessageBlobKey(OrchestrationInstance orchestrationInstance, DateTime messageFireTime)

Parameters

orchestrationInstance OrchestrationInstance

The orchestration instance.

messageFireTime DateTime

The message fire time. Could be DateTime.MinValue.

Returns

string

A message blob key.

BuildSessionBlobKey(string)

Create a blob storage access key based on message session. This key will be used to save and load the stream in external storage when it is too large.

string BuildSessionBlobKey(string sessionId)

Parameters

sessionId string

The message session Id.

Returns

string

A blob key.

DeleteStoreAsync()

Deletes the blob store

Task DeleteStoreAsync()

Returns

Task

LoadStreamAsync(string)

Load the stream of message or session from storage using key.

Task<Stream> LoadStreamAsync(string blobKey)

Parameters

blobKey string

The blob key.

Returns

Task<Stream>

The saved stream message or session.

PurgeExpiredBlobsAsync(DateTime)

Purges expired containers from storage for given time threshold

Task PurgeExpiredBlobsAsync(DateTime thresholdDateTimeUtc)

Parameters

thresholdDateTimeUtc DateTime

The datetime in UTC to use as the threshold for purging containers

Returns

Task

SaveStreamAsync(string, Stream)

Save the stream of the message or session using key.

Task SaveStreamAsync(string blobKey, Stream stream)

Parameters

blobKey string

The blob key.

stream Stream

The stream of the message or session.

Returns

Task