private unsafe Operation(NativeRuntime.IFabricOperation nativeOperation) { this.nativeOperation = nativeOperation; this.operationData = Utility.WrapNativeSyncInvoke <OperationData>(this.GetBuffers, "Operation.Data.Ctor"); var metadata = (NativeTypes.FABRIC_OPERATION_METADATA *) this.nativeOperation.get_Metadata(); this.operationMetadata.Type = metadata->Type; this.operationMetadata.SequenceNumber = metadata->SequenceNumber; this.operationMetadata.AtomicGroupId = metadata->AtomicGroupId; }
private IOperation GetOperationEndWrapper(NativeCommon.IFabricAsyncOperationContext context) { NativeRuntime.IFabricOperation operation = this.nativeOperationStream.EndGetOperation(context); return(Operation.CreateFromNative(operation)); }
internal static Operation CreateFromNative(NativeRuntime.IFabricOperation nativeOperation) { return((nativeOperation != null) ? new Operation(nativeOperation) : null); }