Scalr\Service\Aws\CloudFront\V20120701\CloudFrontApi::setDistributionConfig PHP Method

setDistributionConfig() public method

PUT Distribution Config action
public setDistributionConfig ( string $distributionId, Scalr\Service\Aws\CloudFront\DataType\DistributionConfigData | string $config, string $eTag ) : DistributionData
$distributionId string ID of the distribution.
$config Scalr\Service\Aws\CloudFront\DataType\DistributionConfigData | string Config for distribution. It accepts object or xml document.
$eTag string ETag that is retrieved from getDistributionConfig request.
return Scalr\Service\Aws\CloudFront\DataType\DistributionData Returns DistributionData object.
    public function setDistributionConfig($distributionId, $config, $eTag)
    {
        $result = null;
        $options = array('If-Match' => (string) $eTag, '_putData' => $config instanceof DistributionConfigData ? $config->toXml() : (string) $config, 'Expect' => '');
        $response = $this->client->call('PUT', $options, sprintf('/distribution/%s/config', self::escape($distributionId)));
        if ($response->getError() === false) {
            $sxml = simplexml_load_string($response->getRawContent());
            $result = $this->_loadDistributionData($sxml);
            $result->setOriginalXml($response->getRawContent());
            $result->setETag($response->getHeader('ETag'));
            $result->distributionConfig->setETag($response->getHeader('ETag'));
        }
        return $result;
    }