При вызове метода поиска можно использовать выражения, составленные на языке запросов XPath. Поиск возвращает все объекты иерархии, которые соответствуют выражению XPath. Чтобы выполнить запрос каких-либо свойств, их можно включить в сценарий поиска в виде массива строк.
Следующий пример сценария JavaScript использует объект сценария VcPlugin и выражение XPath для возвращения имен всех объектов хранилища данных, которые являются частью управляемых объектов vCenter Server и содержат в своих именах строку ds.
var datastores = VcPlugin.getAllDatastores(null, "xpath:name[contains(.,'ds')]"); for each (datastore in datastores){ System.log(datastore.name); }
То же выражение XPath может быть вызвано с использованием объекта сценария Server и метода поиска findAllForType.
var datastores = Server.findAllForType("VC:Datastore", "xpath:name[contains(.,'ds')]"); for each (datastore in datastores){ System.log(datastore.name); }
Следующий пример сценария возвращает имена всех системных объектов узла с идентификатором, начинающимся цифрой 1.
var hosts = VcPlugin.getAllHostSystems(null, "xpath:id[starts-with(.,'1')]"); for each (host in hosts){ System.log(host.name); }
Следующий сценарий возвращает имена и идентификаторы всех объектов центра обработки данных, чьи имена содержат строку DC в верхнем или нижнем регистре. Сценарий также получает значение свойства tag.
var datacenters = VcPlugin.getAllDatacenters(['tag'], "xpath:name[contains(translate(., 'DC', 'dc'), 'dc')]"); for each (datacenter in datacenters){ System.log(datacenter.name + “ ” + datacenter.id); }