public static Volume Resolve (BlockDevice parent, Hal.Manager manager, Hal.Device device) { if (!device.IsVolume) { return null; } try { Volume volume = (parent is ICdromDevice || (parent == null && device.QueryCapability ("volume.disc"))) ? DiscVolume.Resolve (parent, manager, device) : new Volume (parent, manager, device); return CheckVolumeMounted (volume) ? volume : null; } catch (Exception e) { Hyena.Log.Exception (e); } return null; }
public new static DiscVolume Resolve (BlockDevice parent, Hal.Manager manager, Hal.Device device) { return device.QueryCapability ("volume.disc") ? new DiscVolume (parent, manager, device) : null; }