Table of Contents

Class StateStore.Client

Namespace
Azure.Iot.Operations.Services.StateStore.StateStore
Assembly
Azure.Iot.Operations.Services.dll
public abstract class StateStore.Client : IAsyncDisposable
Inheritance
StateStore.Client
Implements
Inherited Members

Constructors

Client(ApplicationContext, IMqttPubSubClient, Dictionary<string, string>?)

Construct a new instance of this client.

public Client(ApplicationContext applicationContext, IMqttPubSubClient mqttClient, Dictionary<string, string>? topicTokenMap = null)

Parameters

applicationContext ApplicationContext

The shared context for your application.

mqttClient IMqttPubSubClient

The MQTT client to use.

topicTokenMap Dictionary<string, string>

The topic token replacement map to use for all operations by default. Generally, this will include the token values for topic tokens such as "modelId" which should be the same for the duration of this client's lifetime. Note that additional topic tokens can be specified when starting the client with StartAsync(Dictionary<string, string>?, int?, CancellationToken).

Properties

InvokeCommandInvoker

public StateStore.InvokeCommandInvoker InvokeCommandInvoker { get; }

Property Value

StateStore.InvokeCommandInvoker

Methods

DisposeAsync()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources asynchronously.

public ValueTask DisposeAsync()

Returns

ValueTask

A task that represents the asynchronous dispose operation.

DisposeAsync(bool)

public ValueTask DisposeAsync(bool disposing)

Parameters

disposing bool

Returns

ValueTask

InvokeAsync(byte[], CommandRequestMetadata?, Dictionary<string, string>?, TimeSpan?, CancellationToken)

Invoke a command.

public RpcCallAsync<byte[]> InvokeAsync(byte[] request, CommandRequestMetadata? requestMetadata = null, Dictionary<string, string>? additionalTopicTokenMap = null, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

request byte[]
requestMetadata CommandRequestMetadata

The metadata for this command request.

additionalTopicTokenMap Dictionary<string, string>

The topic token replacement map to use in addition to the topic tokens specified in the constructor. If this map contains any keys that the topic tokens specified in the constructor also has, then values specified in this map will take precedence.

commandTimeout TimeSpan?

How long the command will be available on the broker for an executor to receive.

cancellationToken CancellationToken

Cancellation token.

Returns

RpcCallAsync<byte[]>

The command response.