void DisplayUpdates(Object sender, PropertyFilterUpdateEventArgs eArgs) { foreach (PropertyChange change in eArgs.FilterUpdate.objectSet[0].changeSet) { if (change.op == PropertyChangeOp.add || change.op == PropertyChangeOp.assign) { if ("guest" == change.name) { GuestInfo gi = (GuestInfo)change.val; System.Console.WriteLine("GuestInfo.state->{0}\tGuestInfo.toolsStatus->{1}", gi.guestState, gi.toolsStatusSpecified?gi.toolsStatus.ToString():"not-present"); } else if ("summary.quickStats" == change.name) { VirtualMachineQuickStats qs = (VirtualMachineQuickStats)change.val; System.Console.WriteLine("QuickStats.guestHeartbeatStatus->{0}\tQuickStats.overallCpuUsage->{1}", qs.guestHeartbeatStatus, qs.overallCpuUsage); } else if ("summary.runtime.powerState" == change.name) { System.Console.WriteLine("PowerState->{0}", change.val); } } } }
public VirtualMachine(ManagedObjectReference _this, String name, ManagedObjectReference host, VirtualMachinePowerState powerState, ManagedEntityStatus overallStatus, VirtualMachineQuickStats quickStats) { this.setMoRef(_this); this.setName(name); this.setHost(host); this.setPowerState(powerState); this.setOverallStatus(overallStatus); this.setQuickStats(quickStats); }
void handleChanges(PropertyChange[] changes) { for (int pci = 0; pci < changes.Length; ++pci) { String name = changes[pci].name; Object value = changes[pci].val; PropertyChangeOp op = changes[pci].op; if (op != PropertyChangeOp.remove) { Console.WriteLine(" Property Name: " + name); if ("summary.quickStats".Equals(name)) { if (value.GetType().Name.Equals("VirtualMachineQuickStats")) { VirtualMachineQuickStats vmqs = (VirtualMachineQuickStats)value; String cpu = vmqs.overallCpuUsage.ToString() == null ? "unavailable" :vmqs.overallCpuUsage.ToString(); String memory = vmqs.hostMemoryUsage.ToString() == null ? "unavailable" : vmqs.hostMemoryUsage.ToString(); Console.WriteLine(" Guest Status: " + vmqs.guestHeartbeatStatus.ToString()); Console.WriteLine(" CPU Load %: " + cpu); Console.WriteLine(" Memory Load %: " + memory); } else if (value.GetType().Name.Equals("HostListSummaryQuickStats")) { HostListSummaryQuickStats hsqs = (HostListSummaryQuickStats)value; String cpu = hsqs.overallCpuUsage.ToString() == null ? "unavailable" : hsqs.overallCpuUsage.ToString(); String memory = hsqs.overallMemoryUsage.ToString() == null ? "unavailable" : hsqs.overallMemoryUsage.ToString(); Console.WriteLine(" CPU Load %: " + cpu); Console.WriteLine(" Memory Load %: " + memory); } } else if ("runtime".Equals(name)) { if (value.GetType().Name.Equals("VirtualMachineRuntimeInfo")) { VirtualMachineRuntimeInfo vmri = (VirtualMachineRuntimeInfo)value; Console.WriteLine(" Power State: " + vmri.powerState.ToString()); Console.WriteLine(" Connection State: " + vmri.connectionState.ToString()); DateTime bTime = vmri.bootTime; if (bTime != null) { Console.WriteLine(" Boot Time: " + bTime.TimeOfDay); } long mOverhead = vmri.memoryOverhead; if (mOverhead.ToString() != null) { Console.WriteLine(" Memory Overhead: " + mOverhead); } } else if (value.GetType().Name.Equals("HostRuntimeInfo")) { HostRuntimeInfo hri = (HostRuntimeInfo)value; Console.WriteLine(" Connection State: " + hri.connectionState.ToString()); DateTime bTime = hri.bootTime; if (bTime != null) { Console.WriteLine(" Boot Time: " + bTime.TimeOfDay); } } } else if ("name".Equals(name)) { Console.WriteLine(" " + value); } else { Console.WriteLine(" " + value.ToString()); } } else { Console.WriteLine("Property Name: " + name + " value removed."); } } }
public void setQuickStats( VirtualMachineQuickStats quickStats) { this.quickStats = quickStats; }