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

_loadDistributionData() protected method

Loads DistributionData from simple xml object
protected _loadDistributionData ( SimpleXMLElement $v ) : DistributionData
$v SimpleXMLElement
return Scalr\Service\Aws\CloudFront\DataType\DistributionData Returns DistributionData
    protected function _loadDistributionData(\SimpleXMLElement $v)
    {
        $item = null;
        if ($this->exist($v)) {
            $distributionId = (string) $v->Id;
            $item = $this->cloudFront->distribution->get($distributionId);
            if ($item === null) {
                $item = new DistributionData();
                $bAttach = true;
            } else {
                $item->resetObject();
                $bAttach = false;
            }
            $item->setCloudFront($this->cloudFront);
            $item->setDistributionId($distributionId)->setActiveTrustedSigners($this->_loadTrustedSignerList($v->ActiveTrustedSigners))->setDistributionConfig($this->_loadDistributionConfigData($this->exist($v->DistributionConfig) ? $v->DistributionConfig : $v))->setDomainName($this->exist($v->DomainName) ? (string) $v->DomainName : null)->setInProgressInvalidationBatches($this->exist($v->InProgressInvalidationBatches) ? (string) $v->InProgressInvalidationBatches : null)->setLastModifiedTime($this->exist($v->LastModifiedTime) ? new DateTime((string) $v->LastModifiedTime, new DateTimeZone('UTC')) : null)->setStatus((string) $v->Status);
            if ($bAttach) {
                $this->getEntityManager()->attach($item);
            }
        }
        return $item;
    }