Table of Contents

Class WorkManagerGrpcService

Namespace
Virtufin.WorkManager.Services
Assembly
Virtufin.WorkManager.dll
public sealed class WorkManagerGrpcService : WorkManager.WorkManagerBase
Inheritance
WorkManager.WorkManagerBase
WorkManagerGrpcService
Inherited Members

Constructors

WorkManagerGrpcService(WorkManager, IActorProxyFactory, RuntimeWorkerLoadCoordinator, IOwnedTriggerCleaner?)

public WorkManagerGrpcService(WorkManager workManager, IActorProxyFactory actorProxies, RuntimeWorkerLoadCoordinator loadCoordinator, IOwnedTriggerCleaner? triggerCleaner = null)

Parameters

workManager WorkManager
actorProxies IActorProxyFactory
loadCoordinator RuntimeWorkerLoadCoordinator
triggerCleaner IOwnedTriggerCleaner

Methods

CreateWorker(CreateWorkerRequest, ServerCallContext)

public override Task<CreateWorkerResponse> CreateWorker(CreateWorkerRequest request, ServerCallContext context)

Parameters

request CreateWorkerRequest
context ServerCallContext

Returns

Task<CreateWorkerResponse>

DeleteWorker(DeleteWorkerRequest, ServerCallContext)

public override Task<DeleteWorkerResponse> DeleteWorker(DeleteWorkerRequest request, ServerCallContext context)

Parameters

request DeleteWorkerRequest
context ServerCallContext

Returns

Task<DeleteWorkerResponse>

GetTag(GetTagRequest, ServerCallContext)

public override Task<GetTagResponse> GetTag(GetTagRequest request, ServerCallContext context)

Parameters

request GetTagRequest
context ServerCallContext

Returns

Task<GetTagResponse>

GetTags(GetTagsRequest, ServerCallContext)

public override Task<GetTagsResponse> GetTags(GetTagsRequest request, ServerCallContext context)

Parameters

request GetTagsRequest
context ServerCallContext

Returns

Task<GetTagsResponse>

GetWorkerHistory(GetWorkerHistoryRequest, ServerCallContext)

public override Task<GetWorkerHistoryResponse> GetWorkerHistory(GetWorkerHistoryRequest request, ServerCallContext context)

Parameters

request GetWorkerHistoryRequest
context ServerCallContext

Returns

Task<GetWorkerHistoryResponse>

ListWorkers(ListWorkersRequest, ServerCallContext)

public override Task<ListWorkersResponse> ListWorkers(ListWorkersRequest request, ServerCallContext context)

Parameters

request ListWorkersRequest
context ServerCallContext

Returns

Task<ListWorkersResponse>

LoadCode(LoadCodeRequest, ServerCallContext)

public override Task<LoadCodeResponse> LoadCode(LoadCodeRequest request, ServerCallContext context)

Parameters

request LoadCodeRequest
context ServerCallContext

Returns

Task<LoadCodeResponse>

MapWorkerException(Exception)

Confirmed live (on websocketmanager's identical migration, see virtufin/common#9): a genuinely cross-pod actor invocation never surfaces our own exception types here at all. Dapr's actor transport collapses every server-side exception into an RpcException(Internal, "error invoke actor method: error from actor service: {original .Message}") -- unconditionally, for every actor call, not just cross-pod ones -- so type-based classification alone (Classify) never matches in production. ClassifyMessage recovers the intended status from the one thing that does survive the wire: the message text, which each of our own exception types formats distinctively.

public static RpcException MapWorkerException(Exception ex)

Parameters

ex Exception

Returns

RpcException

RecoverWorkers(RecoverWorkersRequest, ServerCallContext)

public override Task<RecoverWorkersResponse> RecoverWorkers(RecoverWorkersRequest request, ServerCallContext context)

Parameters

request RecoverWorkersRequest
context ServerCallContext

Returns

Task<RecoverWorkersResponse>

SetTag(SetTagRequest, ServerCallContext)

public override Task<SetTagResponse> SetTag(SetTagRequest request, ServerCallContext context)

Parameters

request SetTagRequest
context ServerCallContext

Returns

Task<SetTagResponse>

SetTags(SetTagsRequest, ServerCallContext)

public override Task<SetTagsResponse> SetTags(SetTagsRequest request, ServerCallContext context)

Parameters

request SetTagsRequest
context ServerCallContext

Returns

Task<SetTagsResponse>

StartWorker(StartWorkerRequest, ServerCallContext)

public override Task<StartWorkerResponse> StartWorker(StartWorkerRequest request, ServerCallContext context)

Parameters

request StartWorkerRequest
context ServerCallContext

Returns

Task<StartWorkerResponse>

StopWorker(StopWorkerRequest, ServerCallContext)

public override Task<StopWorkerResponse> StopWorker(StopWorkerRequest request, ServerCallContext context)

Parameters

request StopWorkerRequest
context ServerCallContext

Returns

Task<StopWorkerResponse>