askarSessionInsertKey function
Implementation
Future<AskarCallbackResult> askarSessionInsertKey(
SessionHandle handle,
LocalKeyHandle localKeyHandle,
String name, {
String? metadata,
Map<String, dynamic>? tags,
int? expiryMs,
}) async {
Pointer<Utf8> namePointer = nullptr;
Pointer<Utf8> metadataPointer = nullptr;
Pointer<Utf8> tagsJsonPointer = nullptr;
try {
namePointer = name.toNativeUtf8();
metadataPointer = (metadata ?? "").toNativeUtf8();
tagsJsonPointer = jsonEncode(tags ?? {}).toNativeUtf8();
final callback = newCallbackWithoutHandle();
final result = nativeAskarSessionInsertKey(
handle.toInt(),
localKeyHandle.toInt(),
namePointer,
metadataPointer,
tagsJsonPointer,
(expiryMs ?? 0),
callback.nativeCallable.nativeFunction,
callback.id,
);
return await callback.handleResult(result);
} finally {
freePointer(namePointer);
freePointer(metadataPointer);
freePointer(tagsJsonPointer);
}
}