public Service(IVdsService vdsService) : base(vdsService) { this.refresh = true; this.queryProviderFlags = QueryProviderFlags.HardwareProviders | QueryProviderFlags.SoftwareProviders; this.service = vdsService; base.VdsService = this.service; try { this.serviceHba = (IVdsServiceHba)vdsService; } catch (InvalidCastException) { } try { this.vdsNotificationSink = new AdviseSink(this); this.service.Advise(this.vdsNotificationSink, out this.cookie); } catch (COMException exception) { throw new VdsException("The call to IVdsService::Advise failed.", exception); } catch (InvalidCastException exception2) { throw new VdsException("QueryInterface for IVdsService failed.", exception2); } }
protected override void Dispose(bool disposing) { if (!this.disposed) { if (disposing) { this.vdsNotificationSink.Dispose(); } try { if (this.cookie != 0) { IVdsService service = InteropHelpers.QueryInterface <IVdsService>(base.ComUnknown); if (service != null) { service.Unadvise(this.cookie); } this.cookie = 0; } } catch (COMException) { } catch (InvalidComObjectException) { } this.disposed = true; base.Dispose(disposing); } }
public static IEnumerable <IVdsVolume> GetVolumes(this IVdsService vdsService) { foreach (var pack in vdsService.GetPacks()) { IEnumVdsObject volumeEnum; pack.QueryVolumes(out volumeEnum); object iface; int fetched; while (0 == volumeEnum.Next(1, out iface, out fetched)) { yield return(iface as IVdsVolume); } } }
public static IEnumerable <IVdsProvider> GetProviders(this IVdsService vdsService, VdsProviderMask providerMask = VdsProviderMask.Software) { IEnumVdsObject providerEnum; int hr = vdsService.QueryProviders(providerMask, out providerEnum); Marshal.ThrowExceptionForHR(hr); object iface; int fetched; while (0 == providerEnum.Next(1, out iface, out fetched)) { yield return(iface as IVdsProvider); } }
public static IEnumerable <IVdsDisk> GetDisks(this IVdsService vdsService) { foreach (var pack in vdsService.GetPacks()) { IEnumVdsObject diskEnum; Marshal.ThrowExceptionForHR(pack.QueryDisks(out diskEnum)); object iface; int fetched; while (0 == diskEnum.Next(1, out iface, out fetched)) { yield return(iface as IVdsDisk); } } }
public static IEnumerable <IVdsPack> GetPacks(this IVdsService vdsService) { foreach (var provider in vdsService.GetProviders(VdsProviderMask.Software)) { var swProvider = provider as IVdsSwProvider; if (swProvider != null) { IEnumVdsObject packEnum; Marshal.ThrowExceptionForHR(swProvider.QueryPacks(out packEnum)); object iface; int fetched; while (0 == packEnum.Next(1, out iface, out fetched)) { yield return(iface as IVdsPack); } } } }
public override void InitializeComInterfaces() { base.InitializeComInterfaces(); if (this.service == null) { this.service = InteropHelpers.QueryInterface <IVdsService>(base.ComUnknown); if (this.service == null) { throw new VdsException("QueryInterface for IVdsSerivce failed."); } } if (this.serviceHba == null) { this.serviceHba = InteropHelpers.QueryInterface <IVdsServiceHba>(base.ComUnknown); } if (this.serviceIscsi == null) { this.serviceIscsi = InteropHelpers.QueryInterface <IVdsServiceIscsi>(base.ComUnknown); } if (this.uninstallDisk == null) { this.uninstallDisk = InteropHelpers.QueryInterface <IVdsServiceUninstallDisk>(base.ComUnknown); } }
public Drive(object driveUnknown, IVdsService vdsService) : base(driveUnknown, vdsService) { this.refresh = true; this.InitializeComInterfaces(); }
public Enumerator(IEnumVdsObject vdsEnumerator, IVdsService vdsService) { this.vdsEnumerator = vdsEnumerator; this.vdsService = vdsService; }
public LunPlex(object comUnknown, IVdsService vdsService) : base(comUnknown, vdsService) { this.refresh = true; this.InitializeComInterfaces(); }
private VdsSession(IVdsService service) { mService = service; }
public Wrapper(object comUnknown, IVdsService vdsService) { this.comUnknown = comUnknown; this.vdsService = vdsService; }
public ControllerPort(object comUnknown, IVdsService vdsService) : base(comUnknown, vdsService) { this.refresh = true; this.InitializeComInterfaces(); }
public SubSystem(object subSystemUnknown, IVdsService vdsService) : base(subSystemUnknown, vdsService) { this.refresh = true; this.InitializeComInterfaces(); }
public Pack(object lunUnknown, IVdsService vdsService) : base(lunUnknown, vdsService) { this.refresh = true; this.InitializeComInterfaces(); }
public Provider(object providerUnk, IVdsService vdsService) : base(providerUnk, vdsService) { this.refresh = true; this.InitializeComInterfaces(); }
protected Wrapper(object comUnknown) { this.comUnknown = comUnknown; this.vdsService = null; }
public HardwareProvider(object providerUnk, IVdsService vdsService) : base(providerUnk, vdsService) { this.InitializeComInterfaces(); }
public AdvancedDisk(object comUnknown, IVdsService vdsService) : base(comUnknown, vdsService) { this.InitializeComInterfaces(); }