Пример #1
0
 public VirtualHardDiskInfo GetVirtualHardDiskInfo(string vhdPath)
 {
     try
     {
         Log.WriteStart("'{0}' GetVirtualHardDiskInfo", ProviderSettings.ProviderName);
         VirtualHardDiskInfo result = VirtualizationProvider.GetVirtualHardDiskInfo(vhdPath);
         Log.WriteEnd("'{0}' GetVirtualHardDiskInfo", ProviderSettings.ProviderName);
         return(result);
     }
     catch (Exception ex)
     {
         Log.WriteError(String.Format("'{0}' GetVirtualHardDiskInfo", ProviderSettings.ProviderName), ex);
         throw;
     }
 }
Пример #2
0
        public static VirtualHardDiskInfo[] Get(String Content)
        {
            List <VirtualHardDiskInfo> disks = new List <VirtualHardDiskInfo>();

            try
            {
                JsonObject jsonResponse = (JsonObject)SimpleJson.DeserializeObject(Content);
                JsonObject configvalue  = (JsonObject)SimpleJson.DeserializeObject(jsonResponse["data"].ToString());

                foreach (var key in configvalue.Keys)
                {
                    string val = configvalue[key].ToString();
                    if ((key.Contains("ide") || key.Contains("sata") || key.Contains("virtio") || key.Contains("scsi")) && val.Contains(":"))
                    {
                        VirtualHardDiskInfo disk = new VirtualHardDiskInfo();
                        disk.ControllerNumber   = 1;
                        disk.ControllerLocation = 1;
                        if (key.Contains("ide") || key.Contains("virtio"))
                        {
                            disk.VHDControllerType = ControllerType.IDE;
                        }
                        else
                        {
                            disk.VHDControllerType = ControllerType.SCSI;
                        }
                        disk.Path = parsepath(val);
                        disk.Name = key;
                        disks.Add(disk);
                    }
                }
            }
            catch
            {
                disks = null;
            }

            return(disks.ToArray());
        }