using System.Collections; using System.Collections.Generic; using UnityEngine; namespace AssetBundleHub { public interface IDownloadAsyncDecoratorsFactory { IDownloadAsyncDecorator[] Create(); } public class DownloadAsyncDecoratorsFactory : IDownloadAsyncDecoratorsFactory { public IDownloadAsyncDecorator[] Create() { return new IDownloadAsyncDecorator[] { new QueueRequestDecorator(runCapacity: AssetBundleHubSettings.Instance.parallelCount), new UnityWebRequestDownloadFile() }; } public static DownloadAsyncDecoratorsFactory New() => new DownloadAsyncDecoratorsFactory(); } }