23.292. Interface ISubmitter
Namespace: ArmoniK.Core.Common.gRPC.Services
Assembly: ArmoniK.Core.Common.dll
Defines the contract for submitting, managing, and retrieving tasks and sessions in the ArmoniK system.
public interface ISubmitter
23.292.1. Remarks
This interface provides asynchronous methods for session and task lifecycle management, result retrieval, and configuration queries.
23.292.2. Methods
23.292.2.1. CancelSession(string, CancellationToken)
Cancels the specified session and all associated tasks.
Task CancelSession(string sessionId, CancellationToken cancellationToken)
23.292.2.1.1. Parameters
sessionId string
The ID of the session to cancel.
cancellationToken CancellationToken
Token to cancel the operation.
23.292.2.1.2. Returns
23.292.2.2. CompleteTaskAsync(TaskData, SessionData, bool, Output, CancellationToken)
Marks a task as completed and optionally resubmits it if required.
Task CompleteTaskAsync(TaskData taskData, SessionData sessionData, bool resubmit, Output output, CancellationToken cancellationToken = default)
23.292.2.2.1. Parameters
taskData TaskData
The task data to complete.
sessionData SessionData
The session data associated with the task.
resubmit bool
Whether to resubmit the task after completion.
output Output
The output of the completed task.
cancellationToken CancellationToken
Token to cancel the operation.
23.292.2.2.2. Returns
23.292.2.3. CreateSession(IList<string>, TaskOptions, CancellationToken)
Creates a new session with the specified partition IDs and default task options.
Task<CreateSessionReply> CreateSession(IList<string> partitionIds, TaskOptions defaultTaskOptions, CancellationToken cancellationToken)
23.292.2.3.1. Parameters
The list of partition IDs for the session.
defaultTaskOptions TaskOptions
The default options to use for tasks in this session.
cancellationToken CancellationToken
Token to cancel the operation.
23.292.2.3.2. Returns
Task<CreateSessionReply>
A reply containing session creation details.
23.292.2.4. CreateTasks(string, string, TaskOptions?, IAsyncEnumerable<TaskRequest>, CancellationToken)
Creates multiple tasks in a session.
Task<ICollection<TaskCreationRequest>> CreateTasks(string sessionId, string parentTaskId, TaskOptions? options, IAsyncEnumerable<TaskRequest> taskRequests, CancellationToken cancellationToken)
23.292.2.4.1. Parameters
sessionId string
The ID of the session to add tasks to.
parentTaskId string
The parent task ID, if any.
options TaskOptions?
Optional task options to override the session defaults.
taskRequests IAsyncEnumerable<TaskRequest>
A stream of task requests containing payloads and dependencies.
cancellationToken CancellationToken
Token to cancel the operation.
23.292.2.4.2. Returns
Task<ICollection<TaskCreationRequest>>
A collection of task creation requests.
23.292.2.5. FinalizeTaskCreation(IEnumerable<TaskCreationRequest>, SessionData, string, CancellationToken)
Finalizes the creation of tasks after they have been submitted.
Task FinalizeTaskCreation(IEnumerable<TaskCreationRequest> requests, SessionData sessionData, string parentTaskId, CancellationToken cancellationToken)
23.292.2.5.1. Parameters
requests IEnumerable<TaskCreationRequest>
The collection of task creation requests to finalize.
sessionData SessionData
The session data associated with the tasks.
parentTaskId string
The parent task ID
cancellationToken CancellationToken
Token to cancel the operation.
23.292.2.5.2. Returns
23.292.2.6. GetServiceConfiguration(Empty, CancellationToken)
Retrieves the service configuration.
Task<Configuration> GetServiceConfiguration(Empty request, CancellationToken cancellationToken)
23.292.2.6.1. Parameters
request Empty
The configuration request (empty).
cancellationToken CancellationToken
Token to cancel the operation.
23.292.2.6.2. Returns
Task<Configuration>
The current service configuration.
23.292.2.7. SetResult(string, string, string, IAsyncEnumerable<ReadOnlyMemory<byte>>, CancellationToken)
Sets the result for a given task and key by streaming the result chunks.
Task SetResult(string sessionId, string ownerTaskId, string key, IAsyncEnumerable<ReadOnlyMemory<byte>> chunks, CancellationToken cancellationToken)
23.292.2.7.1. Parameters
sessionId string
The session ID associated with the result.
ownerTaskId string
The task ID that owns the result.
key string
The result key.
chunks IAsyncEnumerable<ReadOnlyMemory<byte>>
A stream of result data chunks.
cancellationToken CancellationToken
Token to cancel the operation.
23.292.2.7.2. Returns
23.292.2.8. TryGetResult(ResultRequest, IServerStreamWriter<ResultReply>, CancellationToken)
Attempts to retrieve the result for a given request and streams it to the client.
Task TryGetResult(ResultRequest request, IServerStreamWriter<ResultReply> responseStream, CancellationToken cancellationToken)
23.292.2.8.1. Parameters
request ResultRequest
The result request specifying the task and result key.
responseStream IServerStreamWriter<ResultReply>
The server stream writer to send result replies.
cancellationToken CancellationToken
Token to cancel the operation.
23.292.2.8.2. Returns
23.292.2.9. WaitForAvailabilityAsync(ResultRequest, CancellationToken)
Waits for the availability of a result for a given request.
Task<AvailabilityReply> WaitForAvailabilityAsync(ResultRequest request, CancellationToken contextCancellationToken)
23.292.2.9.1. Parameters
request ResultRequest
The result request specifying the task and result key.
contextCancellationToken CancellationToken
Token to cancel the operation.
23.292.2.9.2. Returns
Task<AvailabilityReply>
A reply indicating the availability of the result.
23.292.2.10. WaitForCompletion(WaitRequest, CancellationToken)
Waits for the completion of the specified tasks or session.
Task<Count> WaitForCompletion(WaitRequest request, CancellationToken cancellationToken)
23.292.2.10.1. Parameters
request WaitRequest
The wait request specifying which tasks or session to wait for.
cancellationToken CancellationToken
Token to cancel the operation.
23.292.2.10.2. Returns
Task<Count>
A count indicating how many tasks have completed.