public static function convertCloudToArray(ICloudService $cloud) { $res = OpenStackImplementationAssembler::convertOpenStackImplementationToArray($cloud); //override capabilities $res['capabilities'] = array(); foreach ($cloud->getCapabilities() as $service) { $service_res = OpenStackImplementationAssembler::convertCapabilityToArray($service); if (is_null($service_res)) { continue; } $service_res['pricing_schemas'] = array(); foreach ($service->getPricingSchemas() as $ps) { array_push($service_res['pricing_schemas'], $ps->getIdentifier()); } array_push($res['capabilities'], $service_res); } $data_centers = array(); $locations = array(); $regions = array(); foreach ($cloud->getDataCenterRegions() as $region) { array_push($regions, CloudAssembler::convertDataCenterRegionToArray($region)); } foreach ($cloud->getDataCentersLocations() as $location) { array_push($locations, CloudAssembler::convertDataCenterLocationToArray($location)); } $data_centers['regions'] = $regions; $data_centers['locations'] = $locations; $res['data_centers'] = $data_centers; return $res; }
public function getConsultantDraft() { $company_service_id = intval($this->request->param('COMPANY_SERVICE_ID')); $consultant = $this->consultant_draft_repository->getByLiveServiceId($company_service_id); if (!$consultant) { return $this->notFound(); } return $this->ok(OpenStackImplementationAssembler::convertOpenStackImplementationToArray($consultant)); }
public function getDistributionDraft() { $company_service_id = intval($this->request->param('COMPANY_SERVICE_ID')); $appliance = $this->appliance_draft_repository->getByLiveServiceId($company_service_id); if (!$appliance) { return $this->notFound(); } return $this->ok(OpenStackImplementationAssembler::convertOpenStackImplementationToArray($appliance)); }
public function getCurrentApplianceJson() { $appliance = $this->getCurrentAppliance(); if ($appliance) { return json_encode(OpenStackImplementationAssembler::convertOpenStackImplementationToArray($appliance)); } }
public function getPrivateCloudDraft() { $company_service_id = intval($this->request->param('COMPANY_SERVICE_ID')); $private_cloud = $this->private_cloud_draft_repository->getByLiveServiceId($company_service_id); if (!$private_cloud) { return $this->notFound(); } return $this->ok(OpenStackImplementationAssembler::convertOpenStackImplementationToArray($private_cloud)); }