@AuraEnabled Annotations for Continuations
Continuations use the @AuraEnabled annotation for Apex code. Here are the rules for usage.
-
@AuraEnabled(continuation=true)An Apex controller method that returns a continuation must be annotated with
@AuraEnabled(continuation=true). -
@AuraEnabled(continuation=true cacheable=true)To cache the result of a continuation action, set
cacheable=trueon the annotation for the Apex callback method.There’s a space, not a comma, between
continuation=true cacheable=true.
It's best practice to set cacheable=true on all methods involved in the continuation chain, including the method that returns a Continuation object.
In this example, the Apex method that returns the continuation, startRequest(), and the callback, processResponse(), both contain cacheable=true in their @AuraEnabled annotation.
Here's a table that summarizes the behavior with different settings of the cacheable attribute in @AuraEnabled.
Method Returning Continuation Object Annotated with cacheable=true | Callback Method Annotated with cacheable=true | Valid? | Can be Called Using @wire? | Is Action Response Cached on Client? |
|---|---|---|---|---|
| Yes | Yes | Yes | Yes | Yes |
| Yes | No | No (throws an exception) | N/A | N/A |
| No | Yes | Yes | No (all methods must have cacheable=true) | No |
| No | No | Yes | No | No |
See Also