yoti-8.x-2.5/sdk/Yoti/Util/ExtraData/ExtraDataConverter.php

sdk/Yoti/Util/ExtraData/ExtraDataConverter.php
<?php

namespace Yoti\Util\ExtraData;

use Yoti\Entity\ExtraData;
use Sharepubapi\ExtraData as ExtraDataProto;

class ExtraDataConverter
{
    /**
     * @param string $data
     *   Base64 encoded data.
     *
     * @return \Yoti\Entity\ExtraData
     */
    public static function convertValue($data)
    {
        $extraDataProto = new ExtraDataProto();

        try {
            $extraDataProto->mergeFromString($data);
        } catch (\Exception $e) {
            error_log(sprintf('Failed to parse extra data: %s', $e->getMessage()), 0);
            return new ExtraData([]);
        }

        $dataEntryList = [];
        foreach ($extraDataProto->getList() as $dataEntryProto) {
            try {
                $dataEntryList[] = DataEntryConverter::convertValue(
                    $dataEntryProto->getType(),
                    $dataEntryProto->getValue()
                );
            } catch (\Exception $e) {
                error_log(sprintf('Failed to convert data entry: %s', $e->getMessage()), 0);
            }
        }

        return new ExtraData($dataEntryList);
    }
}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc