Пример #1
0
 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.");
         }
     }
 }
Пример #2
0
        private void displayProperties(String[] args)
        {
            _service = cb.getConnection().Service;
            _sic     = cb.getConnection().ServiceContent;

            String hostName             = cb.get_option("hostname");
            ManagedObjectReference hmor = _service.FindByDnsName(_sic.searchIndex, null, hostName, false);

            if (hmor != null)
            {
                ArrayList supportedVersions = VersionUtil.getSupportedVersions(cb.get_option("url"));
                if (VersionUtil.isApiVersionSupported(supportedVersions, "2.5"))
                {
                    _service = cb.getConnection().Service;
                    _sic     = cb.getConnection().ServiceContent;
                    Object[] vmProps    = getProperties(hmor, new String[] { "name" });
                    String   serverName = (String)vmProps[0];
                    Console.WriteLine("Server Name " + serverName);

                    HostRuntimeInfo runtimeInfo = (HostRuntimeInfo)getObjectProperty(hmor, "runtime");
                    DateTime        dt          = runtimeInfo.bootTime;
                    Console.WriteLine("Boot Time " + dt.ToString());
                    String powerState = runtimeInfo.powerState.ToString();
                    Console.WriteLine("Power State " + powerState);
                    HostConfigInfo configInfo
                        = (HostConfigInfo)getObjectProperty(hmor, "config");
                    String timeZone = configInfo.dateTimeInfo.timeZone.key;
                    Console.WriteLine("Time Zone " + timeZone);

                    Boolean flag = VersionUtil.isApiVersionSupported(supportedVersions, "4.0");
                    if (flag)
                    {
                        Console.WriteLine("\nProperties added in 4.0 VI API\n");
                        Object objFlag = getObjectProperty(hmor, "capability.ipmiSupported");
                        if (objFlag != null)
                        {
                            Boolean infoFlag = (Boolean)objFlag;
                            Console.WriteLine("IPMI Supported  " + infoFlag);
                        }
                        else
                        {
                            Console.WriteLine("\nIPMI Flag not set");
                        }
                        objFlag = getObjectProperty(hmor, "capability.tpmSupported");
                        if (objFlag != null)
                        {
                            Boolean infoFlag = (Boolean)objFlag;
                            Console.WriteLine("TPM Supported  " + infoFlag);
                        }
                        else
                        {
                            Console.WriteLine("\nTPM Flag not set");
                        }
                    }
                }

                else
                {
                    Object[] vmProps    = getProperties(hmor, new String[] { "name" });
                    String   serverName = (String)vmProps[0];
                    Console.WriteLine("Server Name " + serverName);
                }
            }
            else
            {
                Console.WriteLine("Host Not Found");
            }
        }