Table of Contents

Class StateService

Namespace
FoundationaLLM.State.Services
Assembly
FoundationaLLM.State.dll

Provides methods for managing state for long-running operations.

public class StateService : IStateService
Inheritance
StateService
Implements
Inherited Members
Extension Methods

Constructors

StateService(IOptions<StateServiceSettings>, ICosmosDbService, ILogger<StateService>)

Provides methods for managing state for long-running operations.

public StateService(IOptions<StateServiceSettings> options, ICosmosDbService cosmosDbService, ILogger<StateService> logger)

Parameters

options IOptions<StateServiceSettings>

Provides the options with the StateServiceSettings settings for configuration.

cosmosDbService ICosmosDbService

Provides methods to interact with Cosmos DB.

logger ILogger<StateService>

The ILogger used for logging.

Methods

CreateLongRunningOperation(string, string)

Creates a new long-running operation with default values.

public Task<LongRunningOperation> CreateLongRunningOperation(string operationId, string upn)

Parameters

operationId string

The long-running operation identifier.

upn string

The User Principal Name (UPN) of the user who triggered the long-running operation.

Returns

Task<LongRunningOperation>

GetLongRunningOperation(string)

Retrieves a long-running operation by its identifier.

public Task<LongRunningOperation> GetLongRunningOperation(string id)

Parameters

id string

The long-running operation identifier.

Returns

Task<LongRunningOperation>

GetLongRunningOperationLogEntries(string)

Retrieves all log entries for a long-running operation.

public Task<List<LongRunningOperationLogEntry>> GetLongRunningOperationLogEntries(string operationId)

Parameters

operationId string

The long-running operation identifier.

Returns

Task<List<LongRunningOperationLogEntry>>

GetLongRunningOperationResult(string)

Retrieves the result of a long-running operation.

public Task<JsonDocument?> GetLongRunningOperationResult(string operationId)

Parameters

operationId string

The long-running operation identifier.

Returns

Task<JsonDocument>

GetLongRunningOperations()

Retrieves all long-running operations.

public Task<List<LongRunningOperation>> GetLongRunningOperations()

Returns

Task<List<LongRunningOperation>>

UpsertLongRunningOperation(LongRunningOperation)

Inserts or updates a long-running operation and creates a log entry.

public Task<LongRunningOperation> UpsertLongRunningOperation(LongRunningOperation operation)

Parameters

operation LongRunningOperation

The long-running operation to insert or update.

Returns

Task<LongRunningOperation>

UpsertLongRunningOperationResult(dynamic)

Inserts or updates the result of a long-running operation.

public Task<object?> UpsertLongRunningOperationResult(dynamic operationResult)

Parameters

operationResult dynamic

The operation result to insert or update.

Returns

Task<object>