TraversalSpec Traversal

Use a TraversalSpec object to identify a managed object type and a traversal property in that type. TraversalSpec contains the following properties:

  • type – identifies an inventory object type.
  • path – specifies a managed object reference property in the type object. This property provides the traversal path extending from this object.
  • selectSet – specifies an optional list of selection objects for additonal object traversal paths. The PropertyCollector applies the TraversalSpec objects in the selectSet array to the result of the traversal (the target of TraversalSpec.path). The selectSet array can also contain SelectionSpec objects; a SelectionSpec is a reference to a TraversalSpec. See SelectionSpec Traversal.
  • skip – indicates whether to collect properties for the path object.

During inventory traversal, the PropertyCollector applies the PropertySpec object or objects (PropertyFilterSpec.propSet) to objects. Inventory traversal begins with the object identified by ObjectSpec.obj and continues by following TraversalSpec paths. If PropertySpec.type matches the current object type, and the skip property is false, the PropertyCollector sends the PropertySpec.pathSet properties to your client.

Inventory Navigation is a representation of a PropertyFilterSpec that defines traversal of VirtualMachine objects. The filter uses a ContainerView as a starting point. The TraversalSpec for the ContainerView specifies the view property for access to the view’s virtual machines. The figure shows TraversalSpec objects that extend navigation from a VirtualMachine object to the associated Network and ResourcePool objects. The PropertyCollector applies these TraversalSpec objects to each of the VirtualMachine objects in the view list. The figure also shows the PropertySpec objects for collecting data from VirtualMachine, Network, and ResourcePool objects.

Figure 1. Inventory Navigation
This diagram shows an example configuration for traversing the managed object inventory.