setReservedAttribute method
Future<InappifySdkResult<void> >
setReservedAttribute(
- InappifyReservedAttributeRequest request
inherited
Stores a reserved customer attribute.
Implementation
@override
Future<InappifySdkResult<void>> setReservedAttribute(
InappifyReservedAttributeRequest request,
) async {
final cancelled = _preCancelled<void>(
'setReservedAttribute',
request.cancellation,
);
if (cancelled != null) return cancelled;
final setter = _documentedReservedSetter(request.attribute);
if (setter == null) {
return InappifySdkResult<void>.failure(
InappifyFailure.unsupported(
'setReservedAttribute.${request.attribute.name}',
),
snapshot: _snapshot,
);
}
return _run<void>(
'setReservedAttribute',
action: () async {
await _bridge.call(
setter,
positionalArguments: <Object?>[
request.value,
if (request.cancellation != null) const <String, Object?>{},
],
cancellation: request.cancellation,
injectAbortSignal: request.cancellation != null,
);
_readCustomerPropertyBestEffort();
},
cancellation: request.cancellation,
mutationMayHaveCommitted: true,
);
}