Source of file IResponse.php

Size: 0,970 Bytes - Last Modified: 2019-08-09T18:27:54+00:00

/home/travis/build/zerospam/sdk-framework/src/Response/Api/IResponse.php

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
<?php
/**
 * Created by PhpStorm.
 * User: aaflalo
 * Date: 30/05/18
 * Time: 4:35 PM.
 */

namespace ZEROSPAM\Framework\SDK\Response\Api;

use ZEROSPAM\Framework\SDK\Utils\Contracts\DataObject;

/**
 * Interface IResponse
 *
 * Parsed Response of the server
 *
 * @package ZEROSPAM\Framework\SDK\Response\Api
 */
interface IResponse
{
    /**
     * Data contained in the response.
     *
     * @return array
     */
    public function data(): array;

    /**
     * Get a specific field.
     *
     * @param string $field
     *
     * @return mixed|null
     */
    public function get($field);

    /**
     * Return value in response array of the response.
     *
     * @param $key
     *
     * @return mixed
     */
    public function getRawValue($key);

    /**
     * Populate the data object with the data present in the response
     *
     * @param DataObject $dataObject
     */
    public function populateDataObject(DataObject &$dataObject): void;
}