public function loadFromRawData($data, $reset = false) { if ($reset) { $this->initValues(); } if (isset($data['organization']) && is_array($data['organization'])) { $organization = new Organization($this->config); $organization->loadFromRawData($data['organization']); $this->organization = $organization; } if (isset($data['product'])) { $product = new Product($this->config); $product->loadFromRawData($data['product']); $this->product = $product; } $this->status = isset($data['status']) ? $data['status'] : null; }
/** * Implements Base\BaseObject::loadFromRawData(). * * @param array $data * @param bool $reset */ public function loadFromRawData($data, $reset = false) { if ($reset) { $this->initValues(); } $excluded_properties = array('organization', 'product', 'applicationCategory'); foreach (array_keys($data) as $property) { if (in_array($property, $excluded_properties)) { continue; } // form the setter method name to invoke setXxxx $setter_method = 'set' . ucfirst($property); if (method_exists($this, $setter_method)) { $this->{$setter_method}($data[$property]); } else { self::$logger->notice('No setter method was found for property "' . $property . '"'); } } if (isset($data['product']) && is_array($data['product']) && count($data['product']) > 0) { foreach ($data['product'] as $product_item) { $product = new Product($this->config); $product->loadFromRawData($product_item); $this->products[] = $product; } } if (isset($data['organization'])) { $organization = new Organization($this->config); $organization->loadFromRawData($data['organization']); $this->organization = $organization; } if (isset($data['applicationCategory'])) { $appCat = new ApplicationCategory($this->config); $appCat->loadFromRawData($data['applicationCategory']); $this->applicationCategory = $appCat; } }
public function loadFromRawData($data, $reset = false) { if ($reset) { $this->initValues(); } $excluded_properties = array('organization', 'product', 'subOrg', 'developer', 'billableDeveloper', 'billableExchangeOrg'); foreach (array_keys($data) as $property) { if (in_array($property, $excluded_properties)) { continue; } // form the setter method name to invoke setXxxx $setter_method = 'set' . ucfirst($property); if (method_exists($this, $setter_method)) { $this->{$setter_method}($data[$property]); } else { self::$logger->notice('No setter method was found for property "' . $property . '"'); } } if (isset($data['organization'])) { $organization = new Organization($this->config); $organization->loadFromRawData($data['organization']); $this->organization = $organization; } if (isset($data['product'])) { foreach ($data['product'] as $product_item) { $product = new Product($this->config); $product->loadFromRawData($product_item); $this->product[] = $product; } } if (isset($data['subOrg'])) { foreach ($data['subOrg'] as $sub_org_item) { $organization = new Organization($this->config); $organization->loadFromRawData($sub_org_item); $this->subOrg[] = $organization; } } if (isset($data['developer'])) { foreach ($data['developer'] as $dev_item) { $dev = new Developer($this->config); $dev->loadFromRawData($dev_item); $this->developer[] = $dev; } } if (isset($data['billableDeveloper'])) { $dev = new Developer($this->config); $dev->loadFromRawData($data['billableDeveloper']); $this->billableDeveloper = $dev; } if (isset($data['billableExchangeOrg'])) { $organization = new Organization($this->config); $organization->loadFromRawData($data['billableExchangeOrg']); $this->billableExchangeOrg = $organization; } }