public TableHolder(string tablePath, Linker linker, NullOnlyCoroutineOwner coroutineOwner, IErrorReceiver errorReceiver)
 {
     this.tablePath      = tablePath;
     this.linker         = linker;
     this.coroutineOwner = coroutineOwner;
     this.errorReceiver  = errorReceiver;
 }
Exemple #2
0
        public Linker(StorageChecker storageChecker, Decryptor decryptor, NullOnlyCoroutineOwner coroutineOwner, IErrorReceiver errorReceiver)
        {
            this.storageChecker = storageChecker;
            this.decryptor      = decryptor;
            this.coroutineOwner = coroutineOwner;
            this.errorReceiver  = errorReceiver;

            this.onAssetBundleLoaded = OnAssetBundleLoaded;
        }
Exemple #3
0
 public AssetBundleSweeper(
     IEnumerable <string> protectingAssetBundleNames,
     NullOnlyCoroutineOwner coroutineOwner)
 {
     this.coroutineOwner      = coroutineOwner;
     this.protectingFilePaths = protectingAssetBundleNames
                                .Select(assetBundleName => AssetBundleUtility.GetLocalStoragePath(assetBundleName))
                                .ToHashSet();
 }
 public DownloadQueue(
     Downloader downloader,
     NullOnlyCoroutineOwner coroutineOwner,
     IErrorReceiverRetriable errorReceiver)
 {
     this.downloader         = downloader;
     this.coroutineOwner     = coroutineOwner;
     this.errorReceiver      = errorReceiver;
     downloadFinishedAction  = OnDownloadFinished;
     retryActionDueToNetwork = RetryDueToNetwork;
     retryActionDueToIo      = RetryDueToIo;
 }
Exemple #5
0
        public AssetBundleDirector(string url, MonoBehaviour coroutineStarter, IAssetBundleErrorHandler errorHandler)
        {
            this.errorHandler = errorHandler;

            coroutineOwner = new NullOnlyCoroutineOwner(coroutineStarter);
            var downloader = new Downloader(url);

            downloadQueue = new DownloadQueue(downloader, coroutineOwner, this);
            var storageChecker = new StorageChecker(downloadQueue, this);
            var encryptionKey  = new EncryptionKey();
            var decryptor      = new Decryptor(encryptionKey);

            linker = new Linker(storageChecker, decryptor, coroutineOwner, this);
        }
Exemple #6
0
        public void Destroy()
        {
            if (isDestroyed)
            {
                return;
            }
            isDestroyed = true;

            downloadQueue?.Destroy();
            linker?.Destroy();
            coroutineOwner?.Destroy();

            downloadQueue  = null;
            linker         = null;
            coroutineOwner = null;
            errorHandler   = null;
        }
Exemple #7
0
 public HttpDirector(MonoBehaviour coroutineStarter)
 {
     nullOnlyCoroutineOwner = new NullOnlyCoroutineOwner(coroutineStarter);
 }