getFieldName method

String getFieldName()

Gets the the name of the field to decrypt.

return The name of the field to decrypt. throws BiosealException An error has occurred during Bioseal Library execution.

Implementation

String getFieldName() {
  Pointer<Char> pFieldName = nullptr;
  Pointer<Int> pFieldNameSize = calloc.allocate(1);
  pFieldNameSize[0] = -1;
  try {
    var err = biosealSDK.id3BiosealDecryptionArgs_GetFieldName(_pHandle.value, pFieldName, pFieldNameSize);
    if (err == BiosealError.insufficientBuffer.value) {
      pFieldName = calloc.allocate(pFieldNameSize.value);
      err = biosealSDK.id3BiosealDecryptionArgs_GetFieldName(_pHandle.value, pFieldName, pFieldNameSize);
      if (err != BiosealError.success.value) {
        throw BiosealException(err);
      }
    }
    final vFieldName = utf8.decode(Uint8List.fromList(pFieldName.cast<Uint8>().asTypedList(pFieldNameSize.value)));
    return vFieldName;
  } finally {
    calloc.free(pFieldName);
    calloc.free(pFieldNameSize);
  }
}