/** * Build a new backup window instance * * @param \stdClass|array|null $parameters */ public function build($parameters) { if (is_null($parameters)) { return; } parent::build($parameters); }
/** * @param array $parameters */ public function build(array $parameters) { parent::build($parameters); foreach ($parameters as $property => $value) { if ('region' === $property && is_object($value)) { $this->region = new Region($value); } } }
/** * @param \stdClass|array $parameters */ public function build($parameters) { parent::build($parameters); foreach ($parameters as $property => $value) { if ('region' === $property) { $this->region = new Region($value); continue; } } }
/** * @param array $parameters */ public function build(array $parameters) { parent::build($parameters); foreach ($parameters as $property => $value) { switch ($property) { case 'region': if (is_object($value)) { $this->region = new Region($value); } unset($parameters[$property]); break; } } }
/** * @param array $parameters */ public function build(array $parameters) { foreach ($parameters as $property => $value) { switch ($property) { case 'networks': if (is_object($value)) { if (property_exists($value, 'v4')) { foreach ($value->v4 as $subProperty => $subValue) { $subValue->version = 4; $this->networks[] = new Network($subValue); } } if (property_exists($value, 'v6')) { foreach ($value->v6 as $subProperty => $subValue) { $subValue->version = 6; $subValue->cidr = $subValue->netmask; $subValue->netmask = null; $this->networks[] = new Network($subValue); } } } unset($parameters[$property]); break; case 'kernel': if (is_object($value)) { $this->kernel = new Kernel($value); } unset($parameters[$property]); break; case 'size': if (is_object($value)) { $this->size = new Size($value); } unset($parameters[$property]); break; case 'region': if (is_object($value)) { $this->region = new Region($value); } unset($parameters[$property]); break; case 'image': if (is_object($value)) { $this->image = new Image($value); } unset($parameters[$property]); break; case 'next_backup_window': $this->nextBackupWindow = new NextBackupWindow($value); unset($parameters[$property]); break; } } parent::build($parameters); if (is_array($this->features) && count($this->features)) { $this->backupsEnabled = in_array('backups', $this->features); $this->virtIOEnabled = in_array('virtio', $this->features); $this->privateNetworkingEnabled = in_array('private_networking', $this->features); $this->ipv6Enabled = in_array('ipv6', $this->features); } }