Table of Contents

Class BatchManagementService

Namespace
NArk.Core.Services
Assembly
NArk.Core.dll

Service for managing Ark intents with automatic submission, event monitoring, and batch participation. Uses a single persistent gRPC event stream with dynamic topic updates via UpdateStreamTopics.

public class BatchManagementService : IAsyncDisposable
Inheritance
BatchManagementService
Implements
Inherited Members

Constructors

BatchManagementService(IIntentStorage, IClientTransport, IVtxoStorage, IContractStorage, IWalletProvider, ICoinService, ISafetyService)

public BatchManagementService(IIntentStorage intentStorage, IClientTransport clientTransport, IVtxoStorage vtxoStorage, IContractStorage contractStorage, IWalletProvider walletProvider, ICoinService coinService, ISafetyService safetyService)

Parameters

intentStorage IIntentStorage
clientTransport IClientTransport
vtxoStorage IVtxoStorage
contractStorage IContractStorage
walletProvider IWalletProvider
coinService ICoinService
safetyService ISafetyService

BatchManagementService(IIntentStorage, IClientTransport, IVtxoStorage, IContractStorage, IWalletProvider, ICoinService, ISafetyService, ILogger<BatchManagementService>)

public BatchManagementService(IIntentStorage intentStorage, IClientTransport clientTransport, IVtxoStorage vtxoStorage, IContractStorage contractStorage, IWalletProvider walletProvider, ICoinService coinService, ISafetyService safetyService, ILogger<BatchManagementService> logger)

Parameters

intentStorage IIntentStorage
clientTransport IClientTransport
vtxoStorage IVtxoStorage
contractStorage IContractStorage
walletProvider IWalletProvider
coinService ICoinService
safetyService ISafetyService
logger ILogger<BatchManagementService>

BatchManagementService(IIntentStorage, IClientTransport, IVtxoStorage, IContractStorage, IWalletProvider, ICoinService, ISafetyService, IEnumerable<IEventHandler<PostBatchSessionEvent>>, ILogger<BatchManagementService>?, IOptions<BatchExpiryOptions>?)

Service for managing Ark intents with automatic submission, event monitoring, and batch participation. Uses a single persistent gRPC event stream with dynamic topic updates via UpdateStreamTopics.

public BatchManagementService(IIntentStorage intentStorage, IClientTransport clientTransport, IVtxoStorage vtxoStorage, IContractStorage contractStorage, IWalletProvider walletProvider, ICoinService coinService, ISafetyService safetyService, IEnumerable<IEventHandler<PostBatchSessionEvent>> eventHandlers, ILogger<BatchManagementService>? logger = null, IOptions<BatchExpiryOptions>? batchExpiryOptions = null)

Parameters

intentStorage IIntentStorage
clientTransport IClientTransport
vtxoStorage IVtxoStorage
contractStorage IContractStorage
walletProvider IWalletProvider
coinService ICoinService
safetyService ISafetyService
eventHandlers IEnumerable<IEventHandler<PostBatchSessionEvent>>
logger ILogger<BatchManagementService>
batchExpiryOptions IOptions<BatchExpiryOptions>

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.

StartAsync(CancellationToken)

public Task StartAsync(CancellationToken cancellationToken)

Parameters

cancellationToken CancellationToken

Returns

Task