AzureIoTResult_t AzureIoTJSONReader_GetTokenString()

in source/azure_iot_json_reader.c [186:214]


AzureIoTResult_t AzureIoTJSONReader_GetTokenString( AzureIoTJSONReader_t * pxReader,
                                                    uint8_t * pucBuffer,
                                                    uint32_t ulBufferSize,
                                                    uint32_t * pusBytesCopied )
{
    AzureIoTResult_t xResult;
    az_result xCoreResult;

    if( ( pxReader == NULL ) || ( pucBuffer == NULL ) || ( ulBufferSize == 0 ) || ( pusBytesCopied == NULL ) )
    {
        AZLogError( ( "AzureIoTJSONReader_TokenType failed: invalid argument" ) );
        xResult = eAzureIoTErrorInvalidArgument;
    }
    else
    {
        if( az_result_failed( xCoreResult = az_json_token_get_string( &pxReader->_internal.xCoreReader.token,
                                                                      ( char * ) pucBuffer, ( int32_t ) ulBufferSize, ( int32_t * ) pusBytesCopied ) ) )
        {
            AZLogError( ( "Could not get string in JSON: core error=0x%08x", ( uint16_t ) xCoreResult ) );
            xResult = AzureIoT_TranslateCoreError( xCoreResult );
        }
        else
        {
            xResult = eAzureIoTSuccess;
        }
    }

    return xResult;
}