@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=true
on 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