/** * Update params for portgroup-backed network pool * @param VMware_VCloud_API_ReferenceType $vimserverRef * @param String $portGroupMoRef * * @return VMware_VCloud_API_Extension_PortGroupPoolType */ function updatePortGrpVMWNetworkPoolParams($vimserverRef, $portGroupMoRef, $poolName, $portGroupType) { // create references of portgroup $pgRef = new VMware_VCloud_API_Extension_VimObjectRefType(); $pgRef->setVimServerRef($vimserverRef); $pgRef->setMoRef($portGroupMoRef); $pgRef->setVimObjectType($portGroupType); $pgRefs = new VMware_VCloud_API_Extension_VimObjectRefsType(); $pgRefs->addVimObjectRef($pgRef); // create a port group type of network pool data object $pool = new VMware_VCloud_API_Extension_PortGroupPoolType(); $pool->set_name($poolName); $pool->setPortGroupRefs($pgRefs); $pool->setVimServer($vimserverRef); return $pool; }
} $vimRef = $vimRefs[0]; $vimRef1 = VMware_VCloud_SDK_Helper::createReferenceTypeObj($vimRef->get_href()); $vimRef2 = VMware_VCloud_SDK_Helper::createReferenceTypeObj($vimRef->get_href()); // create references of portgroup $pgRef = new VMware_VCloud_API_Extension_VimObjectRefType(); $pgRef->setVimServerRef($vimRef1); $pgRef->setMoRef($netMoRef); $pgRef->setVimObjectType('NETWORK'); $pgRefs = new VMware_VCloud_API_Extension_VimObjectRefsType(); $pgRefs->addVimObjectRef($pgRef); // create a port group type of network pool data object $pool = new VMware_VCloud_API_Extension_PortGroupPoolType(); $pool->set_name($poolName); $pool->setPortGroupRefs($pgRefs); $pool->setVimServer($vimRef2); // create a network pool in the vCloud Director $sdkExt->createVMWNetworkPool($pool); } else { echo "\n\nLogin Failed due to certification mismatch."; return; } function usage() { echo "Usage:\n\n"; echo " [Description]\n"; echo " This sample demonstrates creating a port group type of network pool.\n"; echo "\n"; echo " [Usage]\n"; echo " # php createnetpool.php -s <server> -u <username> -p <password> -v <sdkversion> [Options]\n"; echo "\n";