public static Result CreateStorageDeviceManager(this StorageService storage,
                                                        out ReferenceCountedDisposable <IStorageDeviceManager> deviceManager, StorageDevicePortId portId)
        {
            IStorageDeviceManagerFactory factory = storage.GetStorageDeviceManagerFactory(null);

            Assert.NotNull(factory);

            return(factory.Create(out deviceManager, portId));
        }
 public static IStorageDeviceManagerFactory GetStorageDeviceManagerFactory(this StorageService storage,
                                                                           IStorageDeviceManagerFactory factory)
 {
     ref StorageDeviceManagerFactoryGlobals g = ref storage.Globals.StorageDeviceManagerFactory;
 /// <summary>
 /// Sets the <see cref="IStorageDeviceManagerFactory"/> to be used by the <see cref="FileSystemServer"/>.
 /// Calling this method more than once will do nothing.
 /// </summary>
 /// <param name="storage">The Storage instance to use.</param>
 /// <param name="factory">The <see cref="IStorageDeviceManagerFactory"/> to be used by this Storage instance.</param>
 public static void InitializeStorageDeviceManagerFactory(this StorageService storage,
                                                          IStorageDeviceManagerFactory factory)
 {
     storage.GetStorageDeviceManagerFactory(factory);
 }