/** * Lists the correlation between the external network and the vcenter * network information. * * @throws VMware_VCloud_SDK_Exception */ function getExternalNetworkCorrelation() { global $service; echo "\n---------------------------"; echo "\nExternal Network Correlation"; echo "\n---------------------------\n"; // external network query $param = new VMware_VCloud_SDK_Query_Params(); $param->setPageSize(128); $query = $service->getQueryService(); $externalNetworkRecords = $query->queryRecords(VMware_VCloud_SDK_Query_Types::EXTERNAL_NETWORK, $param); if (!empty($externalNetworkRecords)) { $externalNetworkRecords = $externalNetworkRecords->getRecord(); // iterate through the external network's foreach ($externalNetworkRecords as $externalNetworkRecord) { echo " " . $externalNetworkRecord->get_name() . "\n"; // port group query to get the vcenter network information. $param = new VMware_VCloud_SDK_Query_Params(); $param->setPageSize(128); $externalNetworkName = $externalNetworkRecord->get_name(); $externalNetworkName = str_replace(" ", "%20", $externalNetworkName); $param->setFilter('networkName==' . $externalNetworkName); $query = $service->getQueryService(); $portGroupResult = $query->queryRecords(VMware_VCloud_SDK_Query_Types::PORTGROUP, $param); if (!empty($portGroupResult)) { $portGroupRecords = $portGroupResult->getRecord(); // iterate through the port group query result. foreach ($portGroupRecords as $portGroupRecord) { // get the vcenter information. try { if (!empty($portGroupRecord)) { $vc = $service->createSDKObj($portGroupRecord->get_vc()); echo " (vCenter) " . $vc->getVimServer()->get_name() . "("; echo $vc->getVimServer()->getUrl() . ")\n"; } } catch (Exception $e) { echo " vCenter does not exist.\n"; } echo " (vCenter Network) "; echo $portGroupRecord->get_moref() . "("; echo $portGroupRecord->get_name() . ")\n"; } } } } }
function queryRecord($type, $filter, $field, $sortType, $sortField, $pgSize) { $queryParams = new VMware_VCloud_SDK_Query_Params(); if (isset($filter)) { $queryParams->setFilter($filter); } if (isset($field)) { $queryParams->setFields($field); } if (isset($sortType)) { if (isset($sortField) && $sortType == "a") { $queryParams->setSortAsc($sortField); } else { $queryParams->setSortDesc($sortField); } } if (isset($pgSize)) { $queryParams->setPageSize($pgSize); } else { $queryParams->setPageSize(128); } // look for record types only $queryFormat = "Records"; $qr = "query{$queryFormat}"; $recObj = $GLOBALS['sdkQuery']->{$qr}($type, $queryParams); $records = $recObj->getRecord(); return $records; }