Skip to content

Commit 49d19f5

Browse files
authored
add guidance for LRO methods (#8181)
1 parent e85d2a7 commit 49d19f5

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

docs/dotnet/introduction.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -642,8 +642,10 @@ BlobBaseClient client = ...
642642

643643
{% include requirement/MUST id="dotnet-lro-waituntil" %} take ```WaitUntil``` as the first parameter to LRO methods.
644644

645+
{% include requirement/MUST id="dotnet-lro-waituntil" %} put methods that cannot be called until after the long-running operation has started on the subclass of ```Operation<T>```. For example, if a service provides an API to cancel an operation, the ```Cancel``` method should appear on the subclass of ```Operation```.
646+
645647
{% include requirement/MAY id="dotnet-lro-subclass" %} add additional APIs to subclasses of ```Operation<T>```.
646-
For example, some subclasses add a constructor allowing to create an operation instance from a previously saved operation ID. Also, some subclasses are more granular states besides the IsCompleted and HasValue states that are present on the base class.
648+
For example, some subclasses add a constructor allowing to create an operation instance from a previously saved operation ID. Some service operations have intermediate states they pass through prior to completion. These can be represented with an added ```Status``` property to augment the ```HasCompleted``` property on the base ```Operation``` type.
647649

648650
{% include requirement/MUST id="dotnet-lro-constructor" %} provide a public constructor on subclasses of ```Operation<T>``` to allow users to access an existing LRO.
649651

0 commit comments

Comments
 (0)