bool QNXNFCShareManager::shareNdef(const QNdefMessage &message)
{
    bool ok = false;
    NfcShareDataContent content;
    content.setMimeType(RECORD_NDEF);
    content.setData(message.toByteArray());

    NfcShareSetContentError::Type err = _manager->setShareContent(content);

    switch (err) {
        case NfcShareSetContentError::None: {
            ok = true;
            break;
        }

        case NfcShareSetContentError::TransferInProgress: {
            emit error(NfcShareError::TransferInProgress);
            break;
        }

        case NfcShareSetContentError::InvalidShareMode:
        case NfcShareSetContentError::InvalidShareRequest: {
            emit error(NfcShareError::UnsupportedShareMode);
            break;
        }

        case NfcShareSetContentError::Unknown: {
            emit error(NfcShareError::Unknown);
            break;
        }
    }

    if (ok)
        _manager->startTransfer();

    return ok;
}