declareAdvancedSubscriber method
AdvancedSubscriber
declareAdvancedSubscriber(
- Object keyExpr, {
- AdvancedSubscriberOptions options = const AdvancedSubscriberOptions(),
Declares an advanced subscriber on the given keyExpr.
Returns an AdvancedSubscriber with optional history recovery, late publisher detection, sample recovery, and miss detection capabilities. Call AdvancedSubscriber.close when done.
keyExpr is a String or a KeyExpr, including a declared one.
Throws UnsupportedError if the loaded native lacks the unstable API —
that gate runs FIRST, before the key expression is even looked at.
Throws ArgumentError if keyExpr is neither a String nor a KeyExpr.
Throws ZenohException if the key expression is invalid.
Throws StateError if the session has been closed.
Implementation
AdvancedSubscriber declareAdvancedSubscriber(
Object keyExpr, {
AdvancedSubscriberOptions options = const AdvancedSubscriberOptions(),
}) {
requireUnstable();
return withLoanedKeyExpr(keyExpr, 'keyExpr', (loanedKe) {
return AdvancedSubscriber.declare(
loanedHandle,
loanedKe,
keyExprString(keyExpr, 'keyExpr'),
options: options,
);
});
}