Class Handler
Primary Handler implementation that works with a collection of ServiceHandlerInstances, a serializer, and middleware.
public class Handler : IHandler
- Inheritance
-
Handler
- Implements
- Inherited Members
Constructors
Handler(ICollection<ServiceHandlerInstance>, ISerializer)
Initializes a new instance of the Handler class.
public Handler(ICollection<ServiceHandlerInstance> instances, ISerializer serializer)
Parameters
instancesICollection<ServiceHandlerInstance>Service instances. Cannot have duplicates for the same service name.
serializerISerializerSerializer to use.
Handler(ICollection<ServiceHandlerInstance>, ISerializer, IReadOnlyCollection<IOperationMiddleware>)
Initializes a new instance of the Handler class.
public Handler(ICollection<ServiceHandlerInstance> instances, ISerializer serializer, IReadOnlyCollection<IOperationMiddleware> middlewares)
Parameters
instancesICollection<ServiceHandlerInstance>Service instances. Cannot have duplicates for the same service name.
serializerISerializerSerializer to use.
middlewaresIReadOnlyCollection<IOperationMiddleware>Middleware to apply.
Methods
CancelOperationAsync(OperationCancelContext)
Request operation cancel.
public Task CancelOperationAsync(OperationCancelContext context)
Parameters
contextOperationCancelContextContext.
Returns
- Task
Task when cancel has been sent.
Exceptions
- HandlerException
Unexpected handler failure.
FetchOperationInfoAsync(OperationFetchInfoContext)
Fetch operation info.
public Task<OperationInfo> FetchOperationInfoAsync(OperationFetchInfoContext context)
Parameters
contextOperationFetchInfoContextContext.
Returns
- Task<OperationInfo>
Task with operation info.
Exceptions
- HandlerException
Unexpected handler failure.
FetchOperationResultAsync(OperationFetchResultContext)
Fetch operation result, waiting if necessary.
public Task<HandlerContent> FetchOperationResultAsync(OperationFetchResultContext context)
Parameters
contextOperationFetchResultContextContext.
Returns
- Task<HandlerContent>
Task with result contents.
Exceptions
- OperationStillRunningException
Operation still running (after optional wait).
- OperationException
Operation failed.
- HandlerException
Unexpected handler failure.
StartOperationAsync(OperationStartContext, HandlerContent)
Start operation.
public Task<OperationStartResult<HandlerContent>> StartOperationAsync(OperationStartContext context, HandlerContent input)
Parameters
contextOperationStartContextContext.
inputHandlerContentOperation input.
Returns
- Task<OperationStartResult<HandlerContent>>
Task with sync or async result.
Exceptions
- OperationException
Operation failed.
- HandlerException
Unexpected handler failure.