public override IVimManagedItem[] GetChildren() { List <IVimManagedItem> vimManagedItemList = new List <IVimManagedItem>(); ManagedObjectReference managedObject1 = this.ManagedObject; string path1 = "childEntity"; string childType1 = "Datacenter"; string[] childProperties1 = new string[1] { "name" }; foreach (ManagedObjectAndProperties objectAndProperty in this.GetManagedObjectAndProperties(managedObject1, path1, childType1, childProperties1)) { IVimManagedItem vimManagedItem = (IVimManagedItem) new Datacenter(this.VcService, objectAndProperty.ManagedObject); vimManagedItem.Name = (string)objectAndProperty.Properties["name"]; vimManagedItemList.Add(vimManagedItem); } ManagedObjectReference managedObject2 = this.ManagedObject; string path2 = "childEntity"; string childType2 = "Folder"; string[] childProperties2 = new string[1] { "name" }; foreach (ManagedObjectAndProperties objectAndProperty in this.GetManagedObjectAndProperties(managedObject2, path2, childType2, childProperties2)) { if (!(this.ManagedObject.Value == objectAndProperty.ManagedObject.Value)) { IVimManagedItem vimManagedItem = (IVimManagedItem) new FolderOutsideDC(this.VcService, objectAndProperty.ManagedObject); vimManagedItem.Name = (string)objectAndProperty.Properties["name"]; vimManagedItemList.Add(vimManagedItem); } } return(vimManagedItemList.ToArray()); }
public override IVimManagedItem[] GetChildren() { List <IVimManagedItem> vimManagedItemList = new List <IVimManagedItem>(); string[] properties1 = new string[1] { "childEntity" }; foreach (ManagedObjectReference managedObject in this.GetManagedObjects(properties1)) { if (managedObject.type == "ComputeResource" || managedObject.type == "ClusterComputeResource") { foreach (ManagedObjectAndProperties objectAndProperty in new FolderInsideDC(this.VcService, managedObject).GetManagedObjectAndProperties(managedObject, "host", "HostSystem", Host.VCProperties)) { IVimManagedItem vimManagedItem = (IVimManagedItem) new Host(this.VcService, objectAndProperty.ManagedObject); ((IVimHost)vimManagedItem).GetCommonProperties(objectAndProperty.Properties); vimManagedItemList.Add(vimManagedItem); } } else { IVimManagedItem vimManagedItem = (IVimManagedItem) new FolderInsideDC(this.VcService, managedObject); Dictionary <string, object> properties2 = vimManagedItem.GetProperties(new string[1] { "name" }); vimManagedItem.Name = (string)properties2["name"]; vimManagedItemList.Add(vimManagedItem); } } return(vimManagedItemList.ToArray()); }