<PackageReference Include="Azure.Core" Version="1.44.1" />

Operation

public abstract class Operation
Represents a long-running operation.
using Azure.Core; using Azure.Core.Pipeline; using System; using System.ClientModel.Primitives; using System.ComponentModel; using System.Diagnostics.CodeAnalysis; using System.Runtime.CompilerServices; using System.Threading; using System.Threading.Tasks; namespace Azure { [System.Runtime.CompilerServices.NullableContext(1)] [System.Runtime.CompilerServices.Nullable(0)] public abstract class Operation { public abstract string Id { get; } public abstract bool HasCompleted { get; } public static Operation<T> Rehydrate<[System.Runtime.CompilerServices.Nullable(0)] [DynamicallyAccessedMembers((DynamicallyAccessedMemberTypes)7)] T>(HttpPipeline pipeline, RehydrationToken rehydrationToken, [System.Runtime.CompilerServices.Nullable(2)] ClientOptions options = null) where T : IPersistableModel<T> { Argument.AssertNotNull(pipeline, "pipeline"); Argument.AssertNotNull(rehydrationToken, "rehydrationToken"); GenericOperationSource<T> operationSource = new GenericOperationSource<T>(); NextLinkOperationImplementation nextLinkOperationImplementation = (NextLinkOperationImplementation)NextLinkOperationImplementation.Create(pipeline, rehydrationToken); IOperation<T> operation = NextLinkOperationImplementation.Create(operationSource, nextLinkOperationImplementation); OperationState<T> operationState = operation.UpdateStateAsync(false, default(CancellationToken)).EnsureCompleted(); return new RehydrationOperation<T>(nextLinkOperationImplementation, operationState, operation, options); } public static Operation Rehydrate(HttpPipeline pipeline, RehydrationToken rehydrationToken, [System.Runtime.CompilerServices.Nullable(2)] ClientOptions options = null) { Argument.AssertNotNull(pipeline, "pipeline"); Argument.AssertNotNull(rehydrationToken, "rehydrationToken"); NextLinkOperationImplementation obj = (NextLinkOperationImplementation)NextLinkOperationImplementation.Create(pipeline, rehydrationToken); OperationState operationState = obj.UpdateStateAsync(false, default(CancellationToken)).EnsureCompleted(); return new RehydrationOperation(obj, operationState, null); } [AsyncStateMachine(typeof(<RehydrateAsync>d__2<>))] public static Task<Operation<T>> RehydrateAsync<[System.Runtime.CompilerServices.Nullable(0)] [DynamicallyAccessedMembers((DynamicallyAccessedMemberTypes)7)] T>(HttpPipeline pipeline, RehydrationToken rehydrationToken, [System.Runtime.CompilerServices.Nullable(2)] ClientOptions options = null) where T : IPersistableModel<T> { <RehydrateAsync>d__2<T> stateMachine = default(<RehydrateAsync>d__2<T>); stateMachine.<>t__builder = AsyncTaskMethodBuilder<Operation<T>>.Create(); stateMachine.pipeline = pipeline; stateMachine.rehydrationToken = rehydrationToken; stateMachine.options = options; stateMachine.<>1__state = -1; stateMachine.<>t__builder.Start(ref stateMachine); return stateMachine.<>t__builder.Task; } [AsyncStateMachine(typeof(<RehydrateAsync>d__3))] public static Task<Operation> RehydrateAsync(HttpPipeline pipeline, RehydrationToken rehydrationToken, [System.Runtime.CompilerServices.Nullable(2)] ClientOptions options = null) { <RehydrateAsync>d__3 stateMachine = default(<RehydrateAsync>d__3); stateMachine.<>t__builder = AsyncTaskMethodBuilder<Operation>.Create(); stateMachine.pipeline = pipeline; stateMachine.rehydrationToken = rehydrationToken; stateMachine.<>1__state = -1; stateMachine.<>t__builder.Start(ref stateMachine); return stateMachine.<>t__builder.Task; } public virtual RehydrationToken? GetRehydrationToken() { return null; } public abstract Response GetRawResponse(); [return: System.Runtime.CompilerServices.Nullable(new byte[] { 0, 1 })] public abstract ValueTask<Response> UpdateStatusAsync(CancellationToken cancellationToken = default(CancellationToken)); public abstract Response UpdateStatus(CancellationToken cancellationToken = default(CancellationToken)); [AsyncStateMachine(typeof(<WaitForCompletionResponseAsync>d__12))] [return: System.Runtime.CompilerServices.Nullable(new byte[] { 0, 1 })] public virtual ValueTask<Response> WaitForCompletionResponseAsync(CancellationToken cancellationToken = default(CancellationToken)) { <WaitForCompletionResponseAsync>d__12 stateMachine = default(<WaitForCompletionResponseAsync>d__12); stateMachine.<>t__builder = AsyncValueTaskMethodBuilder<Response>.Create(); stateMachine.<>4__this = this; stateMachine.cancellationToken = cancellationToken; stateMachine.<>1__state = -1; stateMachine.<>t__builder.Start(ref stateMachine); return stateMachine.<>t__builder.Task; } [AsyncStateMachine(typeof(<WaitForCompletionResponseAsync>d__13))] [return: System.Runtime.CompilerServices.Nullable(new byte[] { 0, 1 })] public virtual ValueTask<Response> WaitForCompletionResponseAsync(TimeSpan pollingInterval, CancellationToken cancellationToken = default(CancellationToken)) { <WaitForCompletionResponseAsync>d__13 stateMachine = default(<WaitForCompletionResponseAsync>d__13); stateMachine.<>t__builder = AsyncValueTaskMethodBuilder<Response>.Create(); stateMachine.<>4__this = this; stateMachine.pollingInterval = pollingInterval; stateMachine.cancellationToken = cancellationToken; stateMachine.<>1__state = -1; stateMachine.<>t__builder.Start(ref stateMachine); return stateMachine.<>t__builder.Task; } [AsyncStateMachine(typeof(<WaitForCompletionResponseAsync>d__14))] [return: System.Runtime.CompilerServices.Nullable(new byte[] { 0, 1 })] public virtual ValueTask<Response> WaitForCompletionResponseAsync(DelayStrategy delayStrategy, CancellationToken cancellationToken = default(CancellationToken)) { <WaitForCompletionResponseAsync>d__14 stateMachine = default(<WaitForCompletionResponseAsync>d__14); stateMachine.<>t__builder = AsyncValueTaskMethodBuilder<Response>.Create(); stateMachine.<>4__this = this; stateMachine.delayStrategy = delayStrategy; stateMachine.cancellationToken = cancellationToken; stateMachine.<>1__state = -1; stateMachine.<>t__builder.Start(ref stateMachine); return stateMachine.<>t__builder.Task; } public virtual Response WaitForCompletionResponse(CancellationToken cancellationToken = default(CancellationToken)) { return new OperationPoller(null).WaitForCompletionResponse(this, null, cancellationToken); } public virtual Response WaitForCompletionResponse(TimeSpan pollingInterval, CancellationToken cancellationToken = default(CancellationToken)) { return new OperationPoller(null).WaitForCompletionResponse(this, pollingInterval, cancellationToken); } public virtual Response WaitForCompletionResponse(DelayStrategy delayStrategy, CancellationToken cancellationToken = default(CancellationToken)) { return new OperationPoller(delayStrategy).WaitForCompletionResponse(this, null, cancellationToken); } internal static T GetValue<T>([System.Runtime.CompilerServices.Nullable(2)] ref T value) where T : class { if (value == null) throw new InvalidOperationException("The operation has not completed yet."); return value; } [System.Runtime.CompilerServices.NullableContext(0)] internal static T GetValue<T>(ref T? value) where T : struct { if (!value.HasValue) throw new InvalidOperationException("The operation has not completed yet."); return value.Value; } [System.Runtime.CompilerServices.NullableContext(2)] [EditorBrowsable(EditorBrowsableState.Never)] public override bool Equals(object obj) { return base.Equals(obj); } [EditorBrowsable(EditorBrowsableState.Never)] public override int GetHashCode() { return base.GetHashCode(); } [System.Runtime.CompilerServices.NullableContext(2)] [EditorBrowsable(EditorBrowsableState.Never)] public override string ToString() { return base.ToString(); } } }