Quantcast
Channel: VMware Communities: Message List
Viewing all articles
Browse latest Browse all 246801

Re: Get VIM Object by reference using vCloud plug-in

$
0
0

Hello,

 

there is a way! First, you have to get the MoRef of the providerVdc to identify the resourcepool in a VC. But be careful, in environments with many vCenter-servers the MoRef is maybe not unique ( look here and here).

 

I think this code will fit your requirements:

 

//A Moref is a VC-Identifier 
var rpMorefs = new Array(); //do this for all vcdHostsfor each (var vcdInstance in VclHostManager.getHostList()) {      vcdInstance.login();     //get all Provider-vDCs from vcdHost     for each ( var providerVdc in vcdInstance.toAdminObject().getProviderVdcs())     {        //Prepare query - getProviderVdc by name        var expression = new VclExpression(VclQueryProviderVdcResourcePoolRelationField.NAME, providerVdc.name, VclExpressionType.EQUALS);        var filter = new VclFilter(expression);        var params = new VclQueryParams();        params.setFilter(filter);                while (resultSet != null{            // retrieve ProviderVdcResourcePoolRelationRecord record            var records = resultSet.getRecords(new VclQueryResultProviderVdcResourcePoolRelationRecord());                for each (var record in records) {                //get all resourcePoolMorefs                rpMorefs.push(record.resourcePoolMoref);            }            resultSet = resultSet.getNextPage();            }     }} 
var resourcePools = VcPlugin.getAllResourcePools(); //get the vCenter-resourcePoolObject by Moreffor each (var moref in rpMorefs){        for each (var resourcePool in resourcePools) {        if ( moref == resourcePool.id) {            System.log("Resourcepool of the providerVdc: " + resourcePool.name);        }    }    }

 

Another way to retrieve the MoRef is to extract it from the providerVdc-XML (providerVdc.toXml()).

 

Cheers,

Thomas


Viewing all articles
Browse latest Browse all 246801

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>