internal DeleteAsyncResult(FasterKV <Key, Value> fasterKV, IFasterSession <Key, Value, Input, Output, Context> fasterSession, FasterExecutionContext <Input, Output, Context> currentCtx, PendingContext <Input, Output, Context> pendingContext, ExceptionDispatchInfo exceptionDispatchInfo) { this.Status = new(StatusCode.Pending); updateAsyncInternal = new UpdateAsyncInternal <Input, Output, Context, DeleteAsyncOperation <Input, Output, Context>, DeleteAsyncResult <Input, Output, Context> >( fasterKV, fasterSession, currentCtx, pendingContext, exceptionDispatchInfo, new DeleteAsyncOperation <Input, Output, Context>()); }
internal UpsertAsyncResult(Status status, TOutput output, RecordMetadata recordMetadata) { this.Status = status; this.Output = output; this.RecordMetadata = recordMetadata; this.updateAsyncInternal = default; }
internal UpsertAsyncResult(FasterKV <Key, Value> fasterKV, IFasterSession <Key, Value, Input, TOutput, Context> fasterSession, FasterExecutionContext <Input, TOutput, Context> currentCtx, PendingContext <Input, TOutput, Context> pendingContext, ExceptionDispatchInfo exceptionDispatchInfo) { this.Status = new(StatusCode.Pending); this.Output = default; this.RecordMetadata = default; updateAsyncInternal = new UpdateAsyncInternal <Input, TOutput, Context, UpsertAsyncOperation <Input, TOutput, Context>, UpsertAsyncResult <Input, TOutput, Context> >( fasterKV, fasterSession, currentCtx, pendingContext, exceptionDispatchInfo, new UpsertAsyncOperation <Input, TOutput, Context>()); }
internal RmwAsyncResult(FasterKV <Key, Value> fasterKV, IFasterSession <Key, Value, Input, Output, Context> fasterSession, FasterExecutionContext <Input, Output, Context> currentCtx, PendingContext <Input, Output, Context> pendingContext, AsyncIOContext <Key, Value> diskRequest, ExceptionDispatchInfo exceptionDispatchInfo) { Status = Status.PENDING; output = default; updateAsyncInternal = new UpdateAsyncInternal <Input, Output, Context, RmwAsyncOperation <Input, Output, Context>, RmwAsyncResult <Input, Output, Context> >( fasterKV, fasterSession, currentCtx, pendingContext, exceptionDispatchInfo, new RmwAsyncOperation <Input, Output, Context>(diskRequest)); }
internal DeleteAsyncResult(Status status) { this.Status = status; this.updateAsyncInternal = default; }
internal RmwAsyncResult(Status status, Output output) { this.Status = status; this.output = output; this.updateAsyncInternal = default; }